3

私は GitLab.com とデフォルトの共有ランナーを使用しています。以下は私の .gitlab-ci.yml ファイルです。

 image: maven:3.3.9-jdk-8
 build:
  script: 
  - mvn -X clean install

ここでは docker イメージ "maven:3.3.9-jdk-8" を使用しています。docker イメージを使用してデフォルトのランナーに ssh し、同じイメージに対してさらに構成を行うことができる方法はありますか? これは、nodejs、mongodb などの他のパッケージをインストールする場合に必要になります。

カスタムランナーを設定することでこれを達成できますが、ドッカーイメージを使用してデフォルトのランナーから同じことを達成できる方法はありますか. ありがとう

4

1 に答える 1

1

私が理解している限りでは、1 つのジョブで特定のタイプのランナーを 1 つしか使用できないため、それはできません。あなたの場合、ジョブはdocker runnerによって実行されます。

docker を使用していくつかのシェル タスクを実行する場合は、shell executor を使用することをお勧めします。

Maven イメージを指定する代わりに、docker を使用して maven コマンドを実行できます (docker がインストールされている必要があります)。

docker -i --rm -v "$(pwd)":/usr/src/myproject -w /usr/src/myproject maven:latest mvn -X clean install

シェル エグゼキュータは、ランナーが実行されるホスト上でローカルにスクリプトを実行するため、ssh なしで他のスクリプトを実行できます。

于 2016-05-27T09:01:35.840 に答える