2017-05-27 2 views
1

私はgitlab ciとgitlabのコンテナを持っています。ドッカーエグゼキュータを使用してプロジェクトがgitlabランナー に登録されています。全て大丈夫。私は特権モードを真に設定しました。ボリュームシェア、特権モード、イメージ、サービス、リンクなどのようなドッカーの実行についてのフラグがあります。しかし、私はrunner.dockersセクションでポート公開についてのフラグを見つけることができませんでした。私の目的は、コンテナでパイプラインを実行してポートを通信できることです。Gitlab CI Runner Docker Executorポートを公開する

この問題をgitlab runner ciで実装することは可能ですか?

答えて

0

通常、それは何のためのサービスです。ポートを公開したいコンテナをサービスとして定義します。そうすれば、公開されているポートはありませんが、コンテナ間通信に使用できるサービスリンクがあります。これはDockerのエグゼキュータにとって有効です。Kubernetesエグゼキュータでは、すべてのサービスがポッドの一部であるため、localhostで直接利用できます。

つまり、たとえば、デフォルトポート5432で実行されているビルドジョブ用にPostgreSQLが必要な場合は、ジョブのサービスとしてpostgres:latestを開始するだけです。 Dockerエグゼキュータでpostgres:5432、Kubernetesエグゼキュータでlocalhost:5432を使用して参照できます。

サービスがあなたのユースケースに合わない場合は、どこで失敗するかについての質問を拡大したい場合は、別の回答があるかもしれません。

関連する問題