跳到主要内容

API镜像制作

配置私服

一、首先要准备好您的docker私服

我们使用阿里云的容器镜像服务(优点:速度快,免费)。具体请参考:

使用阿里云容器镜像服务

二、配置docker私服账号密码

修改.m2/settings.xml文件,在servers节点加入一个server节点:

    <server>
<!--随便起一个名字,pom中可以根据这个id找到这个server节点的配置-->
<id>docker-aliyun</id>
<!--这里是在阿里云注册的账号-->
<username>xxx@aliyun.com</username>
<!--这里是在阿里云Registry密码,注意:不是阿里云控制台登录密码!!!-->
<password>xxxxx</password>
<configuration>
<!--这是在阿里云注册时填写的邮箱-->
<email>xxxx@aliyun.com</email>
</configuration>
</server>

三、配置docke私服地址

修改工程的/b2b2c/pom.xml文件

    <properties>
<docker-registry>请填写您docker私服地址</docker-registry>
<docker-server-id>docker-aliyun</docker-server-id>
</properties>

一、其中docker-registry填写您的docker私服地址

注意请以"/"结尾,如果您使用的是阿里云的私服,格式示例如下:

registry.cn-beijing.aliyuncs.com/javashop722rc/

其中 javashop722rc 为阿里云中的命名空间

二、其中 docker-aliyun 要和第二步的id保持一致

build and push

在构建镜像之前您需要对/config-server/src/main/resources/application.properties做出调整:

server.port=8888
spring.cloud.config.server.git.uri=https://git-url
spring.cloud.config.server.git.username=your username
spring.cloud.config.server.git.password=your password

请修改为您相应的git信息

其它工程/src/main/resources/bootstrap.yml 文件约定了配置中心的分支,默认为k8s,请根据您的实际情况调整他们:

spring:
application:
name: xxxxx
cloud:
config:
uri: http://config-service:8888
profile: prod #请调整为您实际的运营环境
label: k8s #请调整为您实际的分支

其中的profile: prod默认约定了使用生产环境配置,也请根据您的实际情况调整他们:

prod:生产环境

dev:开发环境

注意,您如果需要调整bootstrap.yml,所有文件的位置列表如下:

base-api/src/main/resources/bootstrap.yml

buyer-api/src/main/resources/bootstrap.yml

seller-api/src/main/resources/bootstrap.yml

manager-api/src/main/resources/bootstrap.yml

consumer/src/main/resources/bootstrap.yml

一切就绪,请在项目的根目录下执行下面的命令:

mvn clean install docker:build  -DskipTests  -DpushImage 

如果不想push ,只build可以去掉 -DpushImage

待push完成,在您的docker私服中可以看到相应的镜像

在新版发布时,您应修改/b2b2c/pom.xml中的docker images版本号,再次push,并利用kubernetes的滚动更新功能进行更新