docker技术之安装
由于工作原因需要使用docker完成集群的搭建,特此记录一下研究的docker技术。
首先简单的介绍一下docker:
Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,namespace,以及 AUFS 类的 Union FS 等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器。
优势:
1. 更高效的利用系统资源——无需额外系统开销
2. 更快速的启动时间——秒级启动时间
3. 一致的运行环境
4. 持续交付和部署
5. 更轻松的迁移
6. 更轻松的维护和扩展——扩展自己docker镜像
对比普通的虚拟机:

安装:
1 windows10
在这里我以Windows10为例进行安装操作,其他系统可以参考这个文档进行安装
1)系统要求:
Docker CE 支持 64 位版本的 Windows 10 Pro,且必须开启 Hyper-V。
2)下载安装:
官方镜像地址下载
正常安装之后显示:

3) 由于国情原因,需要进行镜像加速:
Docker官方和国内很多云服务商都提供了加速器服务,例如:
Docker 官方提供的中国registry mirror
阿里云加速器
DaoCloud 加速器
注册用户并且申请加速器,会获得如 https://jxus37ad.mirror.aliyuncs.com 这样的地址。我们需要将其配置给 Docker 引擎。
在系统右下角托盘图标内右键菜单选择 Settings ,打开配置窗口后左侧导航菜单选择 Docker Daemon ,填写加速器地址。
添加加速器之后,验证是否已经生效:
在命令行中执行docker info ,看到如下命令说明配置成功。
Registry Mirrors:
https://registry.docker-cn.com/
2 windows7
win7系统对应的docker安装包,推荐使用 Docker Toolbox 。
1) 下载Docker Toolbox 安装包
官方下载地址:https://github.com/boot2docker/windows-installer/releases(这个地址国内下载很慢)
国内下载地址:
https://get.daocloud.io/toolbox/ 或者
http://get.daocloud.io/#install-docker-for-mac-windows

2) 安装 Docker Toolbox
下一步, 
安装完成,会出现三个图标

说明:
Oracle VM VirtualBox 图标,通过它可以访问docker服务所在的linux虚拟机;
Docker Quickstart Terminal 图标,通过它可以启动、访问docker服务;
Kitematic (Alpha) 图标,可以下载一些docker镜像
首次点击Docker Quickstart Terminal 图标,会在系统里创建一个默认的,名字叫default的虚拟机。dokcer服务启动成功的界面如下:

VirtualBox,该软件内有 linux 虚拟机,称为docker主机,在 docker 主机中我们之后还会创建 linux 系统,称为容器。 
3) 主机与docker主机共享文件夹
打开Oracle VM VirtualBox,选中“正在运行”状态的 default 虚拟机,进入 设置-> 共享文件夹,添加共享文件夹,选中docker_study文件夹,勾选“自动挂载”、“固定分配”,确定。

设置完成之后,重启虚拟机
4)连接docker主机
docker-machine ssh default
3. linux下的安装
Docker 支持以下的 64 位 CentOS 版本:
- CentOS 7
- CentOS 8
- 更高版本...
设置docker仓库:
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
设置稳定的仓库:
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
安装安装最新版本的 Docker Engine-Community 和 containerd
sudo yum install docker-ce docker-ce-cli containerd.io # 如果没有找到的话,可以使用非最新版本
sudo yum install -y --nobest docker-ce docker-ce-cli containerd.io
可以安装指定版本:
yum list docker-ce --showduplicates | sort -r docker-ce.x86_64 :18.09.-.el7 docker-ce-stable
docker-ce.x86_64 :18.09.-.el7 docker-ce-stable
docker-ce.x86_64 18.06..ce-.el7 docker-ce-stable
docker-ce.x86_64 18.06..ce-.el7 docker-ce-stable sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
设置自启
sudo systemctl start docker sudo systemctl enable docker
镜像加速
可以修改配置来使用阿里云的加速镜像源 sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://pb84l2li.mirror.aliyuncs.com"]
}
EOF sudo systemctl daemon-reload
sudo systemctl restart docker
至此,docker环境及基本配置已经完毕。下一节,我们就来了解一下docker中常用的基本语法与命令操作。
docker技术之安装的更多相关文章
- 基于ASP.Net Core学习Docker技术第一步:在CentOS7安装Docker平台
Docker技术几年前就火了,伴随着今年来devops的流行,这项技术一直被技术社区追捧.提起Docker很容易被默认为是Linux平台下的技术,.NET的技术跟他似乎没有沾边,不过那是对非.NET ...
- Docker 技术系列之安装多版本Mysql5.6和Mysql5.7
大家好,后面的就不是关于MAC专有的内容,基本是跟Java环境,基础技术方面有关.所以这个教程对于在linux系统还是macOS都是通用的,不用担心. 上一篇,我们安装好对应的Docker之后,感受到 ...
- Docker 技术系列之安装Docker Desktop for Mac
终于要进入到Docker技术系列了,感谢大家的持续关注. 为什么要选择Docker?因为Docker 轻巧快速,提供了可行.经济.高效的替代方案.举个例子,安装Nginx,Mysql,Redis等常用 ...
- 利用Docker技术实现UDP广播效果(网络编程python版)
docker的安装见官方文档 我使用的系统为Ubuntu16.04 Ubuntu系统安装docker文档地址:https://docs.docker.com/engine/installation/l ...
- docker学习(1) 安装
docker是啥就不多讲了,简言之就是更轻量.更牛叉的新一代虚拟机技术.下面是安装步骤: 一.mac/windows平台的安装 docker是在linux内核基础上发展而来的,无法直接运行在mac/w ...
- Docker - 技术栈
与传统的方式类似,构建及运行Docker容器与在一台虚拟机上构建和运行程序的方式是相似的,只是使用了一套新的工具以及技术. 与虚拟机不同的是,Docker容器将宿主机与应用程序或者服务隔离,从而提高了 ...
- Docker版本与安装介绍
Docker版本与安装介绍 Docker-CE 和 Docker-EE Centos 上安装 Docker-CE Ubuntu 上安装 Docker-CE Docker-CE和Docker-EE Do ...
- Docker技术知识点总结
Docker技术知识点总结 本文宿主机环境Centos7.4Docker version 18.09.2, build 6247962采用国内 Daocloud 加速器---------------- ...
- Docker详细介绍安装与镜像制作和拉取
一.Docker是什么? 产生背景: 开发和运维之间因为环境不同和导致的矛盾(不同的操作系统.软件环境.应用配置等)DevOps 代码.系统.环境.配置等封装成镜像Image--->运维: 集群 ...
随机推荐
- LeetCode算法题-Pascal's Triangle II(Java实现)
这是悦乐书的第171次更新,第173篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第30题(顺位题号是119).给定非负索引k,其中k≤33,返回Pascal三角形的第k ...
- java实现支付宝支付及退款(二)
紧跟上篇博客,本篇将书写具体的代码实现 开发环境:SSM.maven.JDK8.0 1.Maven坐标 <!--阿里支付--> <dependency> <groupId ...
- Java抽象类(Abstract Class)与接口(Interface)区别
抽象类与接口比较 抽象类跟接口类似,都不能实例化,可能包含不需实现方法或已实现的方法. 抽象类可以定义一些不是静态或常量的字段,定义 public, protected, private访问级别的具体 ...
- SudokuGame 记软工第二次作业
整体概况 1.描述编写整体程序正确过程(含关键代码) 2.整体心路历程及新知分析 3.效能分析.构建之法及整体耗时时间表 4.一些心得体会 GitHub 链接如下: 1.[基础作业BIN文件(最新版) ...
- ThreadLocal源码调试——“this”作为key
前言:在一次面试过程中被问到ThreadLocal,大家都知道ThreadLocal可以为每个线程单独提供一个副本,从而实现变量间的隔离.在ThreadLocal中set和get操作的key是什么,T ...
- vue获取当前元素
Html: <li><a href="#" v-on:click="typeStyle">萨克斯萨克<span></s ...
- 什么是JWT
根据维基百科的定义,JSON WEB Token(JWT,读作 [/dʒɒt/]),是一种基于JSON的.用于在网络上声明某种主张的令牌(token).JWT通常由三部分组成: 头信息(header) ...
- CONTRO4 系列
软件下载 https://getcomposer.org/download/ 0技术手册 https://wenku.baidu.com/view/4b511ead376baf1ffd4fad36.h ...
- hyperledge环境安装
1.安装环境 1)本机安装 前提是已经安装好了docker\docker-compose\go,相应的内容可见 docker-1-环境安装及例子实践 docker官方文档学习-1-Docker for ...
- c++面经积累<1>
引用和指针 指针是一个实体,需要分配内存空间,而引用只是一个别名,不需要分配内存空间 指针可以有多级,而引用只能有一级. 指针和引用的自增运算不一样,指针是指向下一个空间,而引用是引用的变量值增加 s ...