Docker工作流
一 docker工作流
1. docker管理流程
2. 镜像仓库阿里
(1) 阿里私有仓库
公司内部管理项目设计到的所有docker镜像,会使用私有仓库的方式,几种管理。
(2) 创建阿里Docker仓库
-
登录阿里云创建私有仓库
对仓库进行配置
-
创建命名空间
通常一个项目,包含了多个镜像,为了方便管理,将多个同属于一个项目的所有镜像放在一个命名空间中。
命名规范:公司名_项目名
-
创建镜像仓库
一个仓库管理一个镜像的多个版本,一个镜像的多个版本。
命名规范:服务名_v1.0:tag
(3) 案例:nginx镜像推送
1. 拉取nginx基础镜像
docker pull nginx:1.21
2. 启动容器
docker run --name nginx-10 -d -p 88:80 nginx:1.21
注意:打包容器,开启新容器,将需要打包文件使用docker cp拷贝进去。无法打包容器卷中数据。
3. 部署代码
将代码docker cp拷贝到容器中。
4. 提交镜像()
docker commit -a "yangdd@zparkhr.com.cn" -m "第一个版本cms前端代码" nginx-10 cms_nginx:1.1
5. 登录阿里云镜像
docker login --username=15533349688 registry.cn-zhangjiakou.aliyuncs.com
说明:
--username:阿里云仓库注册的手机号。
6. 给镜像打tag
docker tag cms_nginx:1.1 registry.cn-zhangjiakou.aliyuncs.com/zxtec_cms/cms_nginx:0.1
注意:镜像最后的名字要和阿里云仓库名一致
7. 推送镜像
docker push registry.cn-zhangjiakou.aliyuncs.com/zxtec_cms/cms_nginx:0.1
(4) 案例:拉取部署镜像
1. 从阿里私服中拉取镜像
docker pull registry.cn-zhangjiakou.aliyuncs.com/zxtec_cms/cms_nginx:0.1
2. 启动容器
docker run --name cms-nginx -d -p 80:80 -v app_nginx_html:/usr/share/nginx/html -v app_nginx_conf:/etc/nginx/conf.d -v app_nginx_logs:/var/log/nginx registry.cn-zhangjiakou.aliyuncs.com/zxtec_cms/cms_nginx:1.0
3. 测试验证