Docker学习系列之一——安装篇

一、目的

Docker是目前非常流行的虚拟技术,在云计算领域得到了广泛的应用。国内的阿里、京东等大厂都非常普遍地应用了Docker。本文记录了Docker的基本安装过程及最终运行结果,以期备忘,及和同行们交流之用。

二、操作流程

有2台虚拟机,分别安装Centos 7.6,一台Docker宿主机,IP为:192.168.221.129,另一台为Docker应用主机,IP为:192.168.221.130。本文安装过程及结果为:两台机器都安装Docker,其中,宿主机器安装私有仓库,在Docker公有仓库中下载hello-world镜像,打标签后,将镜像文件上传到私有库。在Docker应用主机中,下载宿主机器上的hello-world镜像,运行并查看结果。操作流程图为:

三、操作过程:

1.两台虚拟机都安装Docker,使用命令为:

yum install docker-ce
---------------------------------

   yum install -y yum-utils
   yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
   yum-config-manager --enable docker-ce-nightly
   yum install docker-ce docker-ce-cli containerd.io

安装完成后,关闭防火墙,并设置不随机启动以期达到通过端口通讯的目的。相关命令为:

systemctl status firewalld
systemctl stop firewalld
systemctl disable firewalld

之后,启动Docker并设置随机启动

systemctl enable docker.service
systemctl start docker.service

以上为基本操作,以下进入正题。

首先,从Docker公有库中,拉取仓库镜像,使用命令为:

docker pull registry

拉取完成后,查看下本机的镜像:

docker images

确认无误后,创建本机私有仓库的对应目录,用于存储仓库内的镜像。

mkdir -p /opt/data/registry  //创建仓库所在的文件目录
docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry --name private_registry registry
备注:--name A B 含义为:A为容器名称,B为镜像名称,B可以省略。

运行docker ps查看容器是否启动成功(以下为后更新图,命令运行结果相同):

 然后,根据本机ip地址及配置文件路径,打开docker配置文件(配置文件位置,通过systemctl status docker命令查看),在配置文件中的ExecStart行添加配置:

--insecure-registry=192.168.221.129:5000

然后运行命令:

systemctl daemon-reload
systemctl restart docker
docker start private_registry

重新加载配置文件,并启动Docker。

四、测试私有仓库

1.从公有仓库拉取hello-world镜像,并检查拉取结果

 2.打标签:

docker tag hello-world 192.168.221.129:5000/myhello

3.推入私有仓库:

注意,此时一定要确保私有仓库启动,如果没有启动,则会报错(无法链接),需要使用以下命令来启动,

docker start private_registry

4.在Docker应用机器上,使用命令拉取hello-world镜像:

docker pull 192.168.221.129:5000/myhello

5.运行hello-world镜像,查看运行结果:

五、遗留问题

1.Docker结构及配置需要详细研究

2.在从私有库下载镜像时能否通过简称下载?

3.更新私有库镜像后,应用机如何自动获取镜像更新?

4.实战化操练:实际运行一个java或者其他web应用以便发现更多问题

 

本文结束。

posted @ 2019-04-25 10:09  Shapley  阅读(164)  评论(0编辑  收藏  举报