Jib
默认的插件和示例都是国外的容器镜像,在国内访问太慢(或者需要翻墙才可以访问),国内也有很多云服务厂商支持容器镜像服务
(例如:阿里云、腾讯云)。
那么我们需要怎么把镜像发布到国内的容器镜像服务呢?
开通阿里云镜像服务
- 需要先开通阿里云镜像服务
- 开通成功后,
设置Registry登录密码
,这个是镜像仓库的密码
点击开通
创建命名空间
需要先创建一个仓库的命名空间。
创建镜像仓库
创建一个项目镜像仓库,我这里是创建是私有仓库
,需要账户密码登录才可以访问。
由于通过maven打包,所以这里代码源
选择本地仓库
,请根据自己情况选择。
maven配置jib
关键配置在于to
标签中的配置,详细参数说明请见使用Jib容器化你的Maven项目
1 2 3 4 5 6 7
| <to> <image>registry.cn-shenzhen.aliyuncs.com/wueasy/${project.artifactId}:${project.version}</image> <auth> <username>阿里云账号</username> <password>镜像仓库密码</password> </auth> </to>
|
image
:配置阿里云创建镜像仓库的地址
auth
:阿里云镜像仓库的认证配置
完整配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
| <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin> <groupId>com.google.cloud.tools</groupId> <artifactId>jib-maven-plugin</artifactId> <version>0.9.11</version> <configuration> <from> <image>openjdk:8</image> </from> <to> <image>registry.cn-shenzhen.aliyuncs.com/wueasy/${project.artifactId}:${project.version}</image> <auth> <username>阿里云账号</username> <password>镜像仓库密码</password> </auth> </to> <container> <jvmFlags> <jvmFlag>-Xmx512m</jvmFlag> <jvmFlag>-Xms512m</jvmFlag> <jvmFlag>-Xss256k</jvmFlag> <jvmFlag>-XX:MetaspaceSize=128m</jvmFlag> <jvmFlag>-XX:MaxMetaspaceSize=256m</jvmFlag> </jvmFlags> <args> <arg>wueasy.zk.servers</arg> <arg>wueasy.localIp</arg> <arg>spring.profiles.active</arg> <arg>args</arg> </args> </container> </configuration> <executions> <execution> <phase>package</phase> <goals> <goal>build</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
|