docker:自定义ubuntu/制作镜像引用/ubuntu换源更新
一、需求1. 制作一个图像辨识的api,用到相同设置的ubuntu镜像,但是每次制作都要更新ubuntu和下载tesseract浪费半个到一个小时下载,所以制作一个自定义ubuntu几次镜像大大提高开发效率。2. 制作ubuntu过程时,可以调试tesseract是否能用,对于ubuntu需要下载很多库时,很有帮助。二、ubuntu镜像制作a.ubuntu下载# 拉原始镜像docker pull
一、需求
1. 制作一个图像辨识的api,用到相同设置的ubuntu镜像,但是每次制作都要更新ubuntu和下载tesseract浪费半个到一个小时下载,所以制作一个自定义ubuntu几次镜像大大提高开发效率。
2. 制作ubuntu过程时,可以调试tesseract是否能用,对于ubuntu需要下载很多库时,很有帮助。
二、ubuntu镜像制作
a.ubuntu下载
# 拉原始镜像
docker pull ubuntu
# 进入镜像操作,添加需要的库
docker run -it ubuntu /bin/bash
b.第三方库下载
# apt 换源
sed -i s@/archive.ubuntu.com/@/mirrors.aliyun.com/@g /etc/apt/sources.list
apt-get clean
apt-get update
# 时区设置
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
echo 'Asia/Shanghai' >/etc/timezone
# python相关
apt-get install -y python3
apt-get install -y python3-pip
pip install pillow -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install pillow-PIL -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
# 新 tesseract
apt-get install tesseract-ocr -y
apt-get install -y libgl1-mesa-dev
ps:
1. requirements.txt 文件需要从外部复制进来,可以用命令
docker cp 主机路径/test.txt 容器ID:/test/
2. ubuntu 更新换源是个大坑,很多错误的教程,上面命令亲自测试,有效!!!
2022/02/24 好像过期了,无法换源
sed -i s@/archive.ubuntu.com/@/mirrors.aliyun.com/@g /etc/apt/sources.list
apt-get clean
apt-get update
参考:Docker ubuntu apt-get更换国内源解决Dockerfile构建速度过慢_weixin_33936401的博客-CSDN博客
3.镜像下载在docker软件选项里设置换源(windows),网上教程正确。

三、提交到新的ubuntu镜像
生成镜像的命令
docker commit -m "description" -a "author" <容器id> repository:tag
reposiory:镜像仓库名,任取即可。
tag:镜像标签名,任取即可。
能查看到镜像:

参考:在Docker下构建一个自己的Ubuntu镜像_NelsonCheung的博客-CSDN博客
四、dockerfile引用
from awaly/ubuntu:tesseract
ADD . /app
WORKDIR /app
CMD ["python3", "/app/main.py"]
这样修改code后,一分钟内就生成新的docker
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)