镜像构建交付和使用Rancher进行容器创建管理(3)

3.这里选择rancher来做docker集群的管理和编排,除了使用docker本身命令行界面启动Zookeeper容器外,推荐使用rancher UI界面进行容器管理和创建。
在rancher中,添加zk1、zk2、zk3容器服务:

Docker微服务-镜像构建交付和使用rancher进行容器创建管理

创建zk1:

Docker微服务-镜像构建交付和使用rancher进行容器创建管理

卷管理:

Docker微服务-镜像构建交付和使用rancher进行容器创建管理

设置容器主机:

Docker微服务-镜像构建交付和使用rancher进行容器创建管理

另两个znode节点,zk2、zk3同理操作,只是路径和名称做稍微改动。

进入Zookeeper容器中查看启动信息,查看Zookeeper机器znode2为集群leader:

Docker微服务-镜像构建交付和使用rancher进行容器创建管理

二、创建config-service服务

集中配置服务config-service,作为公司微服务基础运行环境部分,需要优先单独创建。
为做好后期集中打包,使用maven工具,需先创建一maven镜像,该maven镜像集成了公司自己nexus服务,任何开发都可通过此镜像进行快速打包本地的开发环境的jar包。
Docker Rancher宿主机

1.下载apache-maven-3.3.9-bin.tar.gz包,自行下载。
创建maven构建build目录

mkdir -p /data/docker/maven3.3.9 ll drwxr-xr-x 6 root root 99 Jan 13 15:36 apache-maven-3.3.9 -rw-r--r-- 1 root root 8491533 Jan 13 15:34 apache-maven-3.3.9-bin.tar.gz -rw-r--r-- 1 root root 393 Jan 13 16:53 dockerfile drwxr-xr-x 9 root root 268 Jan 13 15:43 jdk1.8.0_25 -rwxr-xr-x 1 root root 55 Jan 13 16:53 maven.sh

2.编写dockfile
cat dockerfile

FROM ms/jdk1.8:v1 MAINTAINER maven-3.3.9 "name@alaxiaoyou.com" RUN mkdir /usr/local/maven-3.3.9/ #&& mkdir /usr/local/jdk1.8/ #因基于ms/jdk1.8:v1镜像,已有的jdk环境 ADD apache-maven-3.3.9/ /usr/local/maven-3.3.9/ #ADD jdk1.8.0_25/ /usr/local/jdk1.8/ ADD maven.sh /tmp/ ENV JAVA_HOME /usr/local/jdk1.8 ENV M2_HOME /usr/local/maven-3.3.9 ENV PATH $JAVA_HOME/bin:$M2_HOME/bin:$PATH CMD /tmp/maven.sh

cat maven.sh

#!/bin/bash cd /data/httpd/${msname} mvn clean install

3.构建

[root@rancher-qa maven3.3.9]# docker build -t ms/maven-3.3.9 . Sending build context to Docker daemon 327.2MB Step 1/9 : FROM ms/jdk1.8:v1 ---> 00d3c71ae0be Step 2/9 : MAINTAINER maven-3.3.9 "yuhuanghui@alaxiaoyou.com" ---> Using cache ---> 80a6d05eae5a Step 3/9 : RUN mkdir /usr/local/maven-3.3.9/ #&& mkdir /usr/local/jdk1.8/ ---> Using cache ---> 92ac17c859a8 Step 4/9 : ADD apache-maven-3.3.9/ /usr/local/maven-3.3.9/ ---> Using cache ---> fa81af79d732 Step 5/9 : ADD maven.sh /tmp/ ---> Using cache ---> 034053775e26 Step 6/9 : ENV JAVA_HOME /usr/local/jdk1.8 ---> Using cache ---> ad8e78b5a021 Step 7/9 : ENV M2_HOME /usr/local/maven-3.3.9 ---> Running in cfae5d0a6e53 ---> ccfcc8638e43 Removing intermediate container cfae5d0a6e53 Step 8/9 : ENV PATH $JAVA_HOME/bin:$M2_HOME/bin:$PATH ---> Running in 30b2f568c1a3 ---> 27e68ef34a42 Removing intermediate container 30b2f568c1a3 Step 9/9 : CMD /tmp/maven.sh ---> Running in db48895f5502 ---> 21c6f1a3b0cf Removing intermediate container db48895f5502 Successfully built 21c6f1a3b0cf Successfully tagged ms/maven-3.3.9:latest [root@rancher-qa maven3.3.9]# [root@rancher-qa maven3.3.9]# docker images | grep maven ms/maven-3.3.9 latest 21c6f1a3b0cf 34 minutes ago 519MB

运行此maven镜像,打包命令示例:

[root@rancher-qa maven3.3.9]# docker run --rm -it -v /data/docker/ms-config/:/data/httpd/config-service/ -e msname=config-service ms/maven-3.3.9

说明:-v宿主机配置目录/data/docker/ms-config/映射到容器/data/httpd/config-service/,-e定义maven.sh脚本${msname}变量。

4.登录阿里云容器镜像服务
创建本地仓库名称ms-maven-3.3.9

Docker微服务-镜像构建交付和使用rancher进行容器创建管理

5.镜像push到阿里云Docker Registry
切换到rancher/server
登录到阿里云Docker Registry
登录Docker Registry -> 打tag -> push到Docker Registry

[root@rancher-qa ms-jdk]# docker login --username=name@alaxiaoyou.com registry.cn-hangzhou.aliyuncs.com Password: ********** Login Succeeded [root@rancher-qa ms-jdk]# [root@rancher-qa ms-jdk]# docker tag 21c6f1a3b0cf registry.cn-hangzhou.aliyuncs.com/xmbaby-tmp/ms-maven-3.3.9:latest [root@rancher-qa ms-jdk]# docker push registry.cn-hangzhou.aliyuncs.com/xmbaby-tmp/ms-maven-3.3.9:latest The push refers to a repository [registry.cn-hangzhou.aliyuncs.com/xmbaby-tmp/ms-maven-3.3.9] 607c588ba0d1: Pushed 2e4a77c00b58: Pushed 48c8f5464987: Pushed 96f6833b8de8: Mounted from xmbaby-tmp/tmp-zookeeper-ms 071d8bd76517: Mounted from xmbaby-tmp/tmp-zookeeper-ms latest: digest: sha256:9ceac47cffbf0c35ed66212a042ad10f3905cae924033caf4cbca8cbf4dbf4dd size: 1367

查看:

Docker微服务-镜像构建交付和使用rancher进行容器创建管理

至此,ms-maven-3.3.9镜像交付完成。此镜像交付完成后,后期基本无需改动,直接latest版本。

服务config-service镜像开始交付:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/76c900b84e720f5a30e284909548b750.html