Docker 镜像添加模块

Posted musen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker 镜像添加模块相关的知识,希望对你有一定的参考价值。

Docker 镜像添加模块

 
技术图片

1. 使用root用户进入一个新容器,不要用 --rm .否则退出容器的时候,容器没有了

docker run --user 0 -it --name superman testdockerfilebox/test_cpu:latest bash

2. 在容器中添加你要的功能,然后退出容器

apt install ...
npm install -g n 
pip3 install ...

3. commit 刚才操作的容器成 image (testdockerfilebox/test_cpu:v1 名称和版本号可以自己定义)

docker commit superman testdockerfilebox/test_cpu:v1

4. 查看刚才 commit 操作的 image, 此时 image 里面就包含了刚才添加的新增的模块了

root@test:~# docker images 

REPOSITORY                         TAG                 IMAGE ID            CREATED             SIZE

testdockerfilebox/test_cpu           v1                  e4f2c829d1eb        23 minutes ago      4.42GB

5. 将新的 image 保存成 tar 压缩文件,给其他人使用,统一开发环境

docker save testdockerfilebox/test_cpu:v1 -o test_cpu.tar

6. 别人拿到 test_cpu.tar 文件后使用 docker load 加载 image

docker load -i test_cpu.tar

此时使用 docker images 就可以看到刚才的导入的 image 了

root@test:~# docker images 

REPOSITORY                         TAG                 IMAGE ID            CREATED             SIZE

testdockerfilebox/test_cpu          v1                  e4f2c829d1eb        23 minutes ago      4.42GB

 

以上是关于Docker 镜像添加模块的主要内容,如果未能解决你的问题,请参考以下文章

基于docker 镜像的 nginx 编译添加第三方模块

为啥 pytorch Docker 镜像没有自带torch?

使用gitlab+jenkins+nexus拉取springcloud并根据不同模块构建docker镜像,并推送到nexus里的docker仓库

Docker删除报错:Error response from daemon: conflict: unable to delete 08b152afcfae (must be forced)(代码片段

尝试在 Docker 官方镜像中添加 freetype 到 php-gd

Gradle项目构建docker镜像(支持Gradle多模块)