开发者社区> 问答> 正文

部署镜像



基础镜像环境清单


EDAS Docker 容器环境,内置了以下基础服务,为 EDAS 应用运行的基线要求。

  • CentOS 7
  • JDK 7 (默认) 或 JDK 8 (可选)
  • Ali-Tomcat 7

部署镜像主要包括以下几步:
  1. 创建容器仓库镜像
  2. 登录远程仓库
  3. 更新/创建基础镜像容器
  4. 打包本地镜像
  5. 上传镜像仓库


1、创建容器仓库镜像


  1. 登录 Docker 镜像仓库控制台,在左侧导航栏中单击 [backcolor=transparent]镜像列表,在镜像仓库列表页面右上方单击 [backcolor=transparent]创建镜像仓库。

  2. 根据项目特性,设置 [backcolor=transparent]仓库名称,[backcolor=transparent]仓库类型,[backcolor=transparent]代码源 为 [backcolor=transparent]本地仓库 等必填信息。
    [backcolor=transparent]> docker login --username=**********@aliyun.com registry.cn-hangzhou.aliyuncs.com
  3. [backcolor=transparent]< Password:
  4. [backcolor=transparent]< Login Succeeded

提示 Login Succeeded 则登录成功。

3、更新/创建基础镜像容器


若需要重新打包基础镜像,请重新初始化整个打包环境,清空数据。执行前请注意备份数据。

  1. (首次创建请跳过)备份代码与变更文件。

  2. (首次创建请跳过)参考 下载 EDAS 基础镜像,更新本地基础镜像。[backcolor=transparent]docker pull registry.aliyuncs.com/edas/edas-container:3.0.0

执行命令,初始化打包环境,清空已有数据(注意替换镜像版本号)。
  1. [backcolor=transparent]docker rm -f -v edas-build-package
  2. [backcolor=transparent]docker run --name edas-build-package -d --restart=always registry.aliyuncs.com/edas/edas-container:3.0.0


4、打包本地镜像


完成 基础镜像定制 后,根据打包方式不同,分别执行以下 shell 进行镜像打包。此时,打包后的镜像保存在本地。
[backcolor=transparent]注意:将最后的镜像地址,替换成之前在 创建容器仓库镜像 中创建的镜像仓库名,并填写一个易于辨识的版本号。
以下方命令为示例,打包服务 registry.cn-hangzhou.aliyuncs.com/edas/demo-frontend-service,版本号20161111

  1. 针对 方式一:编写 Dockerfile,向容器内复制本地文件,或执行命令[backcolor=transparent]docker build [backcolor=transparent]-[backcolor=transparent]t demo[backcolor=transparent]-[backcolor=transparent]frontend[backcolor=transparent]-[backcolor=transparent]service[backcolor=transparent]:[backcolor=transparent]20161111[backcolor=transparent] [backcolor=transparent]-[backcolor=transparent]f [backcolor=transparent]/[backcolor=transparent]tmp[backcolor=transparent]/[backcolor=transparent]Dockerfile[backcolor=transparent] [backcolor=transparent].
  2. [backcolor=transparent]docker tag demo[backcolor=transparent]-[backcolor=transparent]frontend[backcolor=transparent]-[backcolor=transparent]service[backcolor=transparent]:[backcolor=transparent]20161111[backcolor=transparent] registry[backcolor=transparent].[backcolor=transparent]cn[backcolor=transparent]-[backcolor=transparent]hangzhou[backcolor=transparent].[backcolor=transparent]aliyuncs[backcolor=transparent].[backcolor=transparent]com[backcolor=transparent]/[backcolor=transparent]edas[backcolor=transparent]/[backcolor=transparent]demo[backcolor=transparent]-[backcolor=transparent]frontend[backcolor=transparent]-[backcolor=transparent]service[backcolor=transparent]:[backcolor=transparent]20161111

针对 方式二:本地 docker 命令,向容器内复制本地文件 / 方式三:进入 docker 容器,下载远程文件
  1. [backcolor=transparent]export[backcolor=transparent] IMAGE_ID[backcolor=transparent]=[backcolor=transparent]`docker ps -a -f name=edas-build-package --format {{.ID}}`[backcolor=transparent] [backcolor=transparent]&&[backcolor=transparent] docker commit $IMAGE_ID registry[backcolor=transparent].[backcolor=transparent]cn[backcolor=transparent]-[backcolor=transparent]hangzhou[backcolor=transparent].[backcolor=transparent]aliyuncs[backcolor=transparent].[backcolor=transparent]com[backcolor=transparent]/[backcolor=transparent]edas[backcolor=transparent]/[backcolor=transparent]demo[backcolor=transparent]-[backcolor=transparent]frontend[backcolor=transparent]-[backcolor=transparent]service[backcolor=transparent]:[backcolor=transparent]20161111


5、上传镜像仓库


执行如下命令,将打包本地镜像,推送到远程服务器,待部署。若未登录或提示无权限,请参考 登录远程仓库 进行账号登录。
以下方命令为示例,推送远程服务仓库 registry.cn-hangzhou.aliyuncs.com/edas/demo-frontend-service,版本号20161111:
  1. [backcolor=transparent]docker push registry[backcolor=transparent].[backcolor=transparent]cn[backcolor=transparent]-[backcolor=transparent]hangzhou[backcolor=transparent].[backcolor=transparent]aliyuncs[backcolor=transparent].[backcolor=transparent]com[backcolor=transparent]/[backcolor=transparent]edas[backcolor=transparent]/[backcolor=transparent]demo[backcolor=transparent]-[backcolor=transparent]frontend[backcolor=transparent]-[backcolor=transparent]service[backcolor=transparent]:[backcolor=transparent]20161111

展开
收起
猫饭先生 2017-10-26 10:19:29 1477 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
《容器镜像服务企业版 (ACR EE)》 立即下载
采用Harbor开源企业级Registry实现高效安全的镜像 立即下载
Docker镜像原理和最佳实践 立即下载