docker自建镜像(非Makefile方法)

1.下载基础镜像(base image),本次实操选择的是ubuntu,版本自行选择,可使用 docker pull Ubuntu latest 命令

2.使用 docker -itd run ubuntu18.04 命令后台创建容器

使用 docker ps命令查看容器id

使用 docker etec -it 容器id 进入容器内部

(之所以使用这三条命令进入容器内部而不是使用 docker -it run unbunu18.04 命令,是因为我的虚拟机上使用这条命令进入虚拟机内部会无法联网,原因至今未知)

3.在容器内部下载编译环境,本次实操实现的是一个Python小项目,所以通过Miniconda在ubuntu中安装Python运行环境,此部不赘述,网上有详细教程

4.程序实现:可以通过创建好的Python环境在容器中编写代码并生成文件,本项目是通过在容器内部,使用git指令从github上pull项目到容器内部的方法。

PS:在实现上述步骤的过程中,还会用到许多linux的命令工具,因为我们下载的ubunt镜像是一个完全清空的镜像,使用它创建的容器只能使用ubuntu系统最基础的指令,像git、vim等指令需要自己下载好之后才能使用

5.1.生成镜像:docker commit 容器id 新镜像名称

5.2.打包tar格式:docker save -o xxx.tar 新镜像名称 ,会在当前路径下生成一个tar文件:xxx.tar

6.使用tar文件生成镜像:docker load < xxx.tar

7.使用生成的镜像创建容器:docker run -itd -v 宿主机目录:容器目录 镜像名称

由于本次实操之前的Python文件是需要输入的,而在自建镜像的过程中,并未在之前的容器中封装输入文件,所以在此处创建容器时使用目录映射操作,将宿主机的文件映射到容器中作为Python文件的输入,此处需要注意的是,映射操作-v 的参数中,宿主机的目录必须为绝对路径!!!就是说必须在最前面有/root/才可以,不然会映射失败

8.进入容器内部运行Python文件:docker -exec -itd run 容器id

进入容器之后:python3 xxx.py

由于之前已经在镜像中封装好了Python的运行环境,所以此处进入容器之后可以直接使用python命令,包括之前下载过的git、vim等命令也可以直接使用。

over!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值