docker 容器提交为镜像 commit 命令
Docker 镜像构建之 docker commit - 知乎 (zhihu.com)
1-比如我们运行一个 容器
docker run -d --name conda registry.cn-hangzhou.aliyuncs.com/baimeidashu-k8s/ffmpegcentos79:v1.1 bash -c "tail -f /etc/hosts "
这个镜像中,有 centos7.9+ ffmpeg
2- 进入容器:
docker exec -it conda bash
3- 执行 安装 conda 的命令
https://www.baimeidashu.com/14047.html
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh --no-check-certificate
没有 wget
那我们直接复制进去
docker cp Miniconda3-latest-Linux-x86_64.sh conda:/
4- commit
docker commit -a="baimeidashu" -m="ffmpeg-conda" conda registry.cn-hangzhou.aliyuncs.com/baimeidashu-k8s/condaffmpeg:v1.1
conda 是 正在运行的容器,后边跟的是 要制作镜像的名称
推送到仓库:
docker push registry.cn-hangzhou.aliyuncs.com/baimeidashu-k8s/condaffmpeg:v1.1
5- 验证一些这个镜像:
另一台机器
docker pull registry.cn-hangzhou.aliyuncs.com/baimeidashu-k8s/condaffmpeg:v1.1
运行
docker run -d --name conda registry.cn-hangzhou.aliyuncs.com/baimeidashu-k8s/condaffmpeg:v1.1
进入去验证:
docker exec -it conda bash
说明成功了
1.1 这个版本只是 装了 conda 还没创建python环境。
构建1.2 -有 suno python3.9.19的环境。
docker commit -a="baimeidashu" -m="ffmpeg-conda" conda registry.cn-hangzhou.aliyuncs.com/baimeidashu-k8s/condaffmpeg:v1.2
最终版:
registry.cn-hangzhou.aliyuncs.com/baimeidashu-k8s/condaffmpeg:v1.2
3- 在基础镜像中 增加基本的库
不然每次都要重新 所有的都去下载, 很慢。
pip3 install -r requirements.txt
docker commit -a="baimeidashu" -m="ffmpeg-conda" conda registry.cn-hangzhou.aliyuncs.com/baimeidashu-k8s/condaffmpeg:v1.3
registry.cn-hangzhou.aliyuncs.com/baimeidashu-k8s/condaffmpeg:v1.3
欢迎来撩 : 汇总all