極簡構建docker映象並push到私有倉庫
阿新 • • 發佈:2018-12-26
step1,安裝本地docker環境,請自行百度
step2,本地docker 登入 私有倉庫,請自行百度
step3,調整 maven setting.xml 為當前環境的profile 新增
<properties> <!-- 本地 docker 服務地址 --> <dockerHost>https://192.168.99.100:2376</dockerHost> <!-- 本地 docker 證書位置(windows),linux 請自行設定 --> <certPath>C:\Users\user\.docker\machine\machines\default</certPath> <!-- jar包打在docker映象中的目錄 --> <docker.image.jarPath>/data/postmall/jar</docker.image.jarPath> </properties>
step4,專案 pom.xml 新增 外掛如下
<!-- https://github.com/fabric8io/docker-maven-plugin --> <plugin> <groupId>io.fabric8</groupId> <artifactId>docker-maven-plugin</artifactId> <version>0.23.0</version> <configuration> <!-- 本地 docker 環境,參考step1 --> <dockerHost>${dockerHost}</dockerHost> <!-- 本地 docker 證書 路徑,參考step1 --> <certPath>${certPath}</certPath> <images> <image> <!-- 映象名稱 --> <name>${docker.repostory}/${docker.registry.name}/${project.groupId}-${project.artifactId}</name> <build> <!-- 依賴的基礎映象 --> <from>docker.dev.uledns.com/ule/base_ubuntu_14.04_jdk1.8:20171110</from> <tags> <tag>latest</tag> <tag>${project.version}</tag> </tags> <!-- 暴露埠 --> <ports> <port>8888</port> </ports> <assembly> <!-- 打包檔案在映象中位置 --> <name>${docker.image.jarPath}</name> <!-- 指定打包進入映象的檔案為 jar 包 --> <descriptorRef>artifact</descriptorRef> </assembly> <cmd> <!-- 執行映象執行的命令 --> <shell>java -jar ${docker.image.jarPath}/${project.build.finalName}.jar</shell> </cmd> </build> </image> </images> </configuration> </plugin>
step5,回到專案根目錄執行命令
mvn package docker:build // 打包並上傳至本地倉庫
mvn package docker:build docker:push // 打包並上傳至本地倉庫以及私有倉庫