網站首頁 編程語言 正文
使用jib-maven-plugin插件打包docker鏡像上傳到私有鏡像庫,為了賬戶安全,需要設置隱藏密碼,并且使用rancher來管理鏡像的啟動
作者:魯尼的小寶貝 更新時間: 2022-03-15 編程語言項目前期準備
?在阿里云的容器鏡像服務中創建一個鏡像倉庫,用于部署
如果是使用的rancher,需要在鏡像庫中添加?阿里云鏡像的公網地址
這樣配置過后,在rancher里面才可以正常的拉取到上傳的docker鏡像。
創建好之后,在本地創建maven的環境
設置pom.xml
<plugin>
<!--
https://github.com/GoogleContainerTools/jib/tree/master/jib-maven-plugin#example
-->
<groupId>com.google.cloud.tools</groupId>
<artifactId>jib-maven-plugin</artifactId>
<version>2.4.0</version>
<configuration>
<!-- 相當于 Dockerfile 中的 FROM -->
<from>
<image>java:8</image>
</from>
<to>
<!--構建鏡像名稱,這里我使用maven中定義的項目名稱-->
<image>${docker.registry.url}/${project.name}.jar</image>
<!-- <!–私有倉庫的賬號密碼–>-->
<!-- <auth>-->
<!-- <username>${docker.registry.username}</username>-->
<!-- <password>${docker.registry.password}</password>-->
<!-- </auth>-->
<!--Docker 鏡像的 tag 這里使用maven定義的版本號-->
<tags>
<tag>${project.version}</tag>
</tags>
</to>
<container>
<!--jvm內存參數-->
<jvmFlags>
<jvmFlag>-Xms400m</jvmFlag>
<jvmFlag>-Xmx400m</jvmFlag>
</jvmFlags>
<mainClass>org.poem.PipeApi</mainClass>
</container>
<!--用沒配置安全認證的registry-->
<allowInsecureRegistries>true</allowInsecureRegistries>
</configuration>
</plugin>
?
配置maven settings.xml
文件
獲取master密碼
使用以下命令可以得到一個master密碼,例如得到的加密密碼是:{VrVw6/Cg8FYHpfLj8oO/qRbM******************}
mvn --encrypt-master-password <password>
我們需要打開~/.m2/settings-security.xml這個文件(如果沒有就手動創建)
添加到標簽中,文件內容如下:
<settingsSecurity>
<master>{VrVw6/Cg8FYHpfLj8oO/qRbM******************}</master>
</settingsSecurity>
如果沒有settings-security.xml,需要手動創建
獲取server加密密碼
執行mvn --encrypt-password <password>
即可得到一個server密碼
mvn --encrypt-password <password>
把這個加密串添加到settings.xml中server節點的password中 例如得到的加密密碼是(2Db+TFdWDgQHlN7gBd1PAZHEC****************):
<server>
<id>deploymentRepo</id>
<username>admin</username>
<password>{2Db+TFdWDgQHlN7gBd1PAZHEC****************}</password>
</server>
重點來了
由于使用的是jib-maven-plugin打包,那么當前的設置怎么和插件連接起來,在上面的pom.xml中,我把賬戶的密碼注釋掉了,相當于沒有在pom里面指定明確的用戶名和密碼。
使用以下的配置就可以實現和插件的互動
<pluginGroups>
<!-- pluginGroup | Specifies a further group identifier to use for plugin
lookup. <pluginGroup>com.your.plugins</pluginGroup> -->
<pluginGroup>com.google.cloud.tools</pluginGroup>
</pluginGroups>
<!--對應容器倉庫權限的賬號密碼-->
<servers>
<server>
<id>registry.cn-hangzhou.aliyuncs.com</id>
<username>655454321@qq.com</username>
<password>{2Db+TFdWDgQHlN7gBd1PAZHEC****************}</password>
</server>
</servers>
2Db+TFdWDgQHlN7gBd1PAZHEC**************** 就是server的加密密碼
好了,以上的準備已經完成
構建并提交鏡像
使用以下命令開始構建
mvn compile jib:build
?
最后打包上傳和上傳完成,在rancher可以直接使用到鏡像
在rancher啟動鏡像
進入rancher的操作界面
點擊進入應用,點擊添加服務
配置好端口的映射,內存的管理,cpu的管理,目錄的映射關系,點擊確定就可以啟動了
原文鏈接:https://blog.csdn.net/poem_2010/article/details/108249860
相關推薦
- 2022-07-23 asp.net6?blazor?文件上傳功能_實用技巧
- 2022-08-31 C++中關于this指針的入門介紹_C 語言
- 2022-04-01 kubelet請求觸發流控,導致節點NotReady
- 2022-07-25 C++數據結構之雙向鏈表_C 語言
- 2022-06-24 Python+matplotlib實現簡單曲線的繪制_python
- 2022-07-10 redis主從配置+sentinel哨兵模式
- 2022-06-01 C語言?詳解如何刪除有序數組中的重復項_C 語言
- 2022-10-23 C/C++指針介紹與使用詳解_C 語言
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支