docker镜像制作及发布

以centos为例。
主要内容:安装docker,制作镜像,发布镜像。

安装docker

1. 安装docker

yum install -y docker

等待一会,安装成功,查看安装列表
docker镜像制作及发布_第1张图片

2. 启动docker

systemctl start docker

3. 设置docker开机启动

systemctl enable docker

4. 查看docker状态

systemctl status docker

docker镜像制作及发布_第2张图片

5. 查看docker版本

docker version

docker镜像制作及发布_第3张图片

至此,docker安装成功。

制作镜像

1. 从远程仓库拉取纯净的centos镜像

查询 centos 相关的镜像

docker search centos

docker镜像制作及发布_第4张图片
选取第一个官方版本,下载镜像到本地。

docker pull docker.io/centos

在这里插入图片描述
查看本地镜像

docker images

docker镜像制作及发布_第5张图片

2. 使用镜像创建容器

创建容器

格式:docker run -dit --name=容器名 镜像id /bin/bash
docker run -dit --name container-py3 5d0da3dc9764 /bin/bash

docker镜像制作及发布_第6张图片
注意红框的镜像ID。
查看当前运行中容器

docker ps

在这里插入图片描述

3. 进入容器

格式:docker exec -it 容器名 /bin/bash 
docker exec -it container-py3 /bin/bash

在这里插入图片描述

4. 操作容器

安装python3环境

yum install -y python3

docker镜像制作及发布_第7张图片

安装成功后。退出容器。

python3 --version
exit

在这里插入图片描述

5. 制作镜像

格式:docker commit -m ‘镜像描述’ -a ‘制作者’ 容器名 镜像名
docker commit -m ‘test’ -a ‘yourname’ container-py3 image-py3

在这里插入图片描述

6. 将镜像打成tar包

格式:docker save -o tar包的路径 镜像名
docker save -o /data/py3.tar image-py3

在这里插入图片描述

指定路径下,会有py3.tar。

7. 使用tar包

先删除本地的容器和镜像,依次操作:

docker ps #查看运行中的容器
docker stop container-py3 #停止容器
docker rm container-py3 #删除容器
docker images #查看镜像
docker rmi image-py3 #删除镜像

docker镜像制作及发布_第8张图片

加载制作好的tar包

格式:docker load < tar包所在路径
docker load < /data/py3.tar

在这里插入图片描述

8. 使用镜像

查看镜像
创建并运行容器

docker run -dit --name container-py3 226354af8bd3 /bin/bash

进入容器

docker exec -it container-py3 /bin/bash

测试 python3 环境

python3

docker镜像制作及发布_第9张图片

发布镜像

tar包形式分发不是很方便,可以将镜像发布到远程仓库。
Docker官网推出的docker仓库的一个公共服务器。
官网地址:https://hub.docker.com/
创建账号后

登录账号
docker login
退出账号
docker logout

1. 打tag

docker tag image-py3 yourname/image-py3

2. push上传

docker push yourname/image-py3

3. 查看docker仓库

上传完成后,可以在docker仓库web页面查看镜像。

4. 其他人使用,拉取镜像

docker pull yourname/image-py3

refer

https://www.cnblogs.com/pjcd-32718195/p/11762079.html
https://blog.csdn.net/qq_34244910/article/details/100545094

你可能感兴趣的:(Linux,docker,容器,centos)