在开始运行Docker程序时,我们需要理解Docker的组成,Docker由三部分组成:
仓库(repository):仓库类似于Git中的仓库,Git仓库用于存放用户代码,而Docker仓库则用来存放Docker镜像。由于Docker是国外的东东,访问Docker仓库(Docker Hub)非常慢,因此国内IT巨头搭建了Docker国内镜像,如下:
阿里云Docker仓库
网易云Docker仓库
镜像(image):镜像是容器的基石,容器基于镜像启动,镜像就像是容器的源代码,保存了用于容器启动的各种条件。
容器(container):容器是docker的执行单元,容器是镜像的实例。
由于Docker是国外的,Docker默认将访问国外的Docker Hub仓库;因为国内访问Docker Hub仓库的速度太慢了,于是国内IT巨头公司建立了镜像仓库加速器,下面将使用阿里云的进行加速服务。
(1)登录到阿里云,如下图:
(2)进入到控制台,找到弹性计算,点击“容器镜像服务”。如下图:
(3)点击“镜像加速器”,此时就有怎样去配置加速器的方法了。如下图:
(4)进入到 /etc/docker 目录,创建 daemon.json 文件,且添加如下配置:
{ "registry-mirrors": ["https://hotw1jil.mirror.aliyuncs.com"] }
(5)重新加载配置文件,如下:
[root@localhost /]# sudo systemctl daemon-reload
(6)重启docker服务,如下:
[root@localhost /]# sudo systemctl restart docker
到这里仓库就配置好了。
注意,如果你是第一次运行Hello World,Docker会先到本地查找image镜像,如果镜像在本地不存在,Docker会到远程仓库去下载image镜像。然后运行镜像,如下:
[root@localhost /]# docker run hello-world Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (amd64) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID: https://hub.docker.com/ For more examples and ideas, visit: https://docs.docker.com/get-started/
使用 docker images 查看本地仓库有哪些镜像,如下:
本地仓库有三个镜像,分别为“redis”、“mysql”、“hello-world”。