ジブ Maven プラグインを使用して、Gitlab 継続的インテグレーションで自分のアプリケーションで Docker イメージを構築しようとしていますが、dind (docker-in-docker) サービスを使用してプラグインを docker デーモンに接続できません。現在、gitlab-ci.yml ファイルでこの構成を使用しています。
deploy:mvn:
image: maven:3.6.3-jdk-8-openj9
stage: deploy
services:
- docker:dind
script:
- mvn compile jib:dockerBuild
これは私が得るエラーです:
[エラー] プロジェクト my-application でゴール com.google.cloud.tools:jib-maven-plugin:0.9.11:dockerBuild (default-cli) を実行できませんでした: Docker デーモンへのビルドに失敗しました。インストール済みで、それを実行するための正しい権限を持っている -> [ヘルプ 1]
アップデート
2.2.0 に更新し、ローカルで実行しています。以前にコマンドを追加しましたがdocker images
、プラグインは Gitlab CI で docker コマンドを見つけることができないようです:
$ docker images && mvn compile jib:dockerBuild /bin/bash: 97 行目: docker: コマンドが見つかりません
これは、jib プラグインの構成です。
<plugin>
<groupId>com.google.cloud.tools</groupId>
<artifactId>jib-maven-plugin</artifactId>
<version>2.2.0</version>
<configuration>
<from>
<image>adoptopenjdk/openjdk11:alpine-jre</image>
</from>
<to>
<image>my-application:latest</image>
</to>
<container>
<entrypoint>
<shell>sh</shell>
<option>-c</option>
<arg>chmod +x /entrypoint.sh && sync && /entrypoint.sh</arg>
</entrypoint>
<ports>
<port>8080</port>
</ports>
<environment>
<SPRING_OUTPUT_ANSI_ENABLED>ALWAYS</SPRING_OUTPUT_ANSI_ENABLED>
<JHIPSTER_SLEEP>0</JHIPSTER_SLEEP>
</environment>
<creationTime>USE_CURRENT_TIMESTAMP</creationTime>
</container>
</configuration>
</plugin>