1:获取想要的镜像

方法一:

1:访问Docker Hub可以获取需要的镜像 :https://hub.docker.com

docker 从仓库获取镜像 如何获取一个docker镜像_docker

2:点击Explore可以在页面选择需要的镜像,我们以node为例 需要改镜像 我们只需用点击箭头所示进入页面

docker 从仓库获取镜像 如何获取一个docker镜像_docker_02

3:进入页面后 我们可以在输入红框内的命令下载该镜像(有版本要求参考第4步)

docker 从仓库获取镜像 如何获取一个docker镜像_Docker Container_03

4:如果有版本要求可以点击"Tags"进入选择页面 不如我们要选择11.1版本的 只用在上一个命令后加上:11.1即可,即:Docker pull node:11.1

docker 从仓库获取镜像 如何获取一个docker镜像_Docker镜像的创建_04

5;验证两个node版本是否download成功

docker 从仓库获取镜像 如何获取一个docker镜像_docker_05

方法二:

参考博客:javascript:void(0)

2:Docker commit方式制作镜像

注意:这样方式一般不推荐使用,最好是使用dockerFile的方式去制作镜像

2.1:查看当前系统有哪些镜像

docker 从仓库获取镜像 如何获取一个docker镜像_Docker Container_06

2.2:假设以centos为原始镜像制作一个新的image

1:先进入到centos为image的container实例

2:安装应用程序(yum install -y XXX 表示:安装XXX时有需要选择y/n的时候选择y)

3:安装成功后exit退出container

docker 从仓库获取镜像 如何获取一个docker镜像_Docker Container_07

2.3:查看Container容器历史版本

docker container ls -a

docker 从仓库获取镜像 如何获取一个docker镜像_Docker常用命令_08

2.4:commit镜像 (docker commit ContainerID 新镜像的名称)

docker commit 2dab1889d7b2 centos-vim

最后查看发现centos-vim的镜像已经生成成功了 大小355M比centos大了155M

docker 从仓库获取镜像 如何获取一个docker镜像_Docker镜像的创建_09

2.5:查看两个image的异同(docker history Image ID)

发现两个image不同额地方就是黄色框内的东西不一样

docker 从仓库获取镜像 如何获取一个docker镜像_docker 从仓库获取镜像_10

3:DockerFile制作简单的镜像

3.1:创建文件夹

mkdir Demo

cd Demo

3.2:创建Dockerfile

注意一定要写成Dockerfile大小写都不能写错

vi Dockerfile

docker 从仓库获取镜像 如何获取一个docker镜像_Docker常用命令_11

3.3:基于Dockerfile构建镜像

docker build -t centos-vim-new .

docker 从仓库获取镜像 如何获取一个docker镜像_docker_12

3.4:查看镜像是否构建好

docker 从仓库获取镜像 如何获取一个docker镜像_Docker常用命令_13

4:后台运行docker容器并且保证不退出

docker run -d centos /bin/sh -c "while true; do echo hello world; sleep 3600; done"