如何制作docker镜像
这里主要是指基于其他同事已有的镜像,制作我自定义的镜像;而不是从无到有制作一个全新的镜像。
环境信息
docker环境
docker服务器是:ip.of.docker.server;可以通过测试服务器ssh跳过去。账号找WHB申请。目前我用的是LG的账号。
外网镜像仓库
http://hub.hexin.cn/harbor/projects
公司内部做了域名解析,本地不需要配置host,可以直接访问。
操作步骤
先从外网镜像仓库把初始镜像拉下来,并启动一个容器(我是基于ifind的容器来构建的):
sudo docker run -tid hub.hexin.cn:9082/ths/ifind-financial-report:FinancialReport_139559_201807131958
进入容器,修改内容,安装软件:
sudo docker exec -ti xxxx /bin/bash
将容器保存为镜像:
sudo docker commit 容器ID 新的镜像名称
修改镜像名称,使其符合规范:
sudo docker tag springboot-1.5.6 hub.hexin.cn:9082/b2cweb/springboot-1.5.6:latest
注意1:镜像名【必须】要按照这个格式命名,否则push的时候会被拒绝:
hub.hexin.cn:9082/用户名/镜像名:tag
注意2:修改tag后,原来的镜像还是存在的,如果不要了,记得删除掉,避免占用空间
查看下镜像名是否修改成功:
sudo docker images|grep 新的tag名
登录镜像管理平台:
sudo docker login hub.hexin.cn:9082
账号密码同外网镜像仓库的账号密码
将镜像推到仓库:
sudo docker push hub.hexin.cn:9082/b2cweb/springboot-1.5.6:latest
调用http接口,将镜像从外网仓库同步到内网仓库:
image:改为自己的镜像名称
tag:改为刚刚构建生成的镜像版本号
现在,可以在内网使用刚上传的这个镜像了。