以centos为例。

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

安装docker

1. 安装docker

yum install -y docker

等待一会,安装成功,查看安装列表

2. 启动docker

systemctl start docker

3. 设置docker开机启动

systemctl enable docker

4. 查看docker状态

systemctl status docker

5. 查看docker版本

docker version

至此,docker安装成功。

制作镜像

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

查询 centos 相关的镜像

docker search centos



选取第一个官方版本,下载镜像到本地。

docker pull docker.io/centos



查看本地镜像

docker images

2. 使用镜像创建容器

创建容器

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

docker run -dit --name container-py3 5d0da3dc9764 /bin/bash



注意红框的镜像ID。

查看当前运行中容器

docker ps

3. 进入容器

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

docker exec -it container-py3 /bin/bash

4. 操作容器

安装python3环境

yum install -y python3

安装成功后。退出容器。

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 #删除镜像

加载制作好的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

发布镜像

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

最新文章

  1. iOS开发中的这些权限,你搞懂了吗?
  2. ZooKeeper 笔记(6) 分布式锁
  3. 三年回首:C基础
  4. 【HDU4630 No Pain No Game】 dp思想+线段树的离线操作
  5. 关于float的感悟
  6. buildroot httpd php
  7. python 调用图灵机器人api实现简单的人机交互
  8. iOS国际化和genstrings所有子目录本地化字符串
  9. mint-ui在vue中的使用。
  10. 几个常用dos网络命令
  11. face recognition[Euclidean-distance-based loss][FaceNet]
  12. lisp : set 与setq 函数
  13. Charles配置问题
  14. jQuery与js对象互转
  15. 20145322 何志威《网络对抗》shellcode注入&amp;Return-to-libc攻击深入
  16. IIS站点/虚拟目录中访问共享目录(UNC)以及建立后的应用程序的信任级别问题
  17. sql 添加索引强大
  18. ubuntu 改动 ls 下的文件夹颜色
  19. 使用JAVA实现模拟登陆并发送新浪微博(非调用新浪API)
  20. 电子商务的几种模式,b2b,c2c等

热门文章

  1. [BUUCTF]PWN20——ciscn_2019_n_5
  2. Table.FillDown填充Table.Fill…(Power Query 之 M 语言)
  3. CF706A Beru-taxi 题解
  4. python开发环境软件包安装相关 failed with error code 1 in /tmp/pip-build-vn_f_e1n/psutil/
  5. SpringBoot 设置服务一启动就执行、初始化数据
  6. centos7使用docker安装es(elasticsearch)
  7. 【LeetCode】975. Odd Even Jump 解题报告(C++)
  8. 【LeetCode】888. Fair Candy Swap 公平的糖果棒交换(Python)
  9. spoj-ORDERS - Ordering the Soldiers
  10. 【Java笔记】Java分包问题