問題タブ [concourse]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
concourse - Ubuntu 14.04 でのコンコース ワーカーの障害
手順に従ってスタンドアロンの Concourse 2.4.0 を構成すると、すべてが稼働しているように見えます。ただし、「hello world」の例を実行しようとすると、コンコース UI に次のエラーが表示されます。
runc create: exit status 1: rootfs ("/volumes/live/a72f9a0d-3506-489b-5b9b-168744b892c1/volume") does not exist
「web」開始コマンド:
./concourse web \
--basic-auth-username admin \
--basic-auth-password admin \
--session-signing-key session_signing_key \
--tsa-host-key host_key \
--tsa-authorized-keys authorized_worker_keys \
--external-url http://myconcoursedomain:8080 \
--postgres-data-source postgres://user:pass@mydbserver/concourse
「ワーカー」開始コマンド:
./concourse worker \
--work-dir worker \
--tsa-host 127.0.0.1 \
--tsa-public-key host_key.pub \
--tsa-worker-private-key worker_key
実際のルート ディレクトリではなく、「start worker」コマンドで指定されたディレクトリに「不足している」ディレクトリが作成されるため、問題が発生するのではないかと考えています。
~/concourse# ls -la worker
total 145740
drwxr-xr-x 5 root root 4096 Nov 15 23:07 .
drwxr-xr-x 3 root root 4096 Nov 15 23:07 ..
drwxr-xr-x 3 root root 4096 Nov 15 23:07 2.4.0
drwxr-xr-x 2 root root 4096 Nov 15 23:09 depot
drwxr-xr-x 1 root root 24 Nov 15 23:07 volumes
-rw-r--r-- 1 root root 42142052352 Nov 15 23:15 volumes.img
コンコースは Ubuntu 14.04 にインストールされています。
uname -r
4.4.0-47-generic
uname -a
Linux ubuntu-2gb-nyc3-01 4.4.0-47-generic #68~14.04.1-Ubuntu SMP Wed Oct 26 19:42:11 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
git - Concourse に、コミットではなくファイル diff でのみ新しい docker コンテナーをビルドさせる
したがって、単一の git リポジトリから複数の docker コンテナーをビルドするパイプラインがあります。次のようになります。
問題は、resource-docker
タスクの実行がシステム リソースのかなりの部分を占有し、マスターへのコミットごとにコンテナーをゼロから再構築することです (マスターには、docker コンテナーだけでなく、より多くのコードが含まれます)。
代わりに、これらのタスクでコンテナーのビルドに使用される古いファイルと新しいファイルを比較し、ファイルに差分がある場合にのみコンテナーを再構築したいと考えています。
注:ファイルを別のリポジトリに分離することは避けたいオプションです。
concourse - 新しいインスタンスで hello-world を試行すると、「レジストリの ping に失敗しました」というメッセージが表示される
そのため、セキュリティで保護された Docker レジストリを持つプライベート ネットワークで、コンコースの新しいインスタンスをテストしています。ホストの観点からは、すべて正常に動作します。「docker login」が実行され、イメージをプルできることを確認しました。ただし、hello-world ジョブを実行すると、次のエラーで失敗します。
その下には、レジストリの 2 つの URL がリストされています。
それで、私の質問は、なぜこれが起こっているのですか?docker がコンテナー内から呼び出されているため、ログイン情報が含まれている /root/.docker/config.json ファイルにアクセスできませんか? 私が見逃しているものは他にありますか?
前もって感謝します。
concourse - ビルド間でmavenリポジトリをキャッシュする方法は?
私の目標は、councourse ビルド パイプラインを使用して maven でビルドされた Java プロジェクトをビルド、パッケージ化、およびテストできるようにすることです。
セットアップ自体は整っており、すべて正常に動作しますが、nexus からの Maven のダウンロード率が低いため、ビルド時間が長すぎます。
私のビルド ジョブの yml ファイルは、maven ビルドのベースとして次のリソースを使用します。
私は、すべての建物に「白紙の状態」を持たせることが、設計上コンコースにある程度組み込まれているという事実を認識しています。
ここで私の質問は次のとおりです。ローカルの Maven リポジトリをキャッシュする良い方法は何でしょうか (たとえば、Spring のような内部に少なくともいくつかの基本的なものとその依存関係があります)。
次のオプションが頭に浮かびます:
- 依存関係が既に組み込まれている docker イメージを使用する
- 必要な依存関係を提供するリソースを作成する
私が見る限り、オプション 1) はビルドのダウンロード サイズを小さくしません。これは、コンコースがビルド ジョブのベースとして使用される Docker イメージをキャッシュしないように見えるためです (または、ここで間違っていますか?)
先に進む前に、次のオプション 2) が何らかの利点をもたらすことを確認したいと思います - コンコースはリソースとして使用される docker イメージをキャッシュしますか?
私はカウンセリングに比較的慣れていないため、何かを見逃す可能性があります。ですから、ここで明白なことを述べるように強制する場合は、ご容赦ください。:)
concourse - フライシンク時の不明なターゲット
VM をスピンアップし、次の方法でコンコース サーバーにログインしようとしています。
次に、次のメッセージを受け取ります。
ただし、次のことを行うと、この問題が発生します。
最初は、古いバージョンの fly を持っていました。/usr/local/bin
そのため、ディレクトリのfly を削除してから、最新のものをダウンロードしました。これで、VM にインストールしたコンコース バージョンよりも進んでいます。fly のドキュメントを確認しましたが、これを回避する方法がわかりません。
docker - Concourse の docker リソースを使用して、docker 構成で使用するコンテナーを取得します
コンコースの docker リソースを使用して、タスクの docker compose で使用されるコンテナーを取得できますか? 現在、プライベート Docker レジストリから統合テスト用のコンテナーをフェッチしているだけですが、これを行うと、接続/リソースがコンコース UI に表示されません。何か案は?
現在の私のタスクは次のとおりです。
Dockerfile は、パイプラインの前のステップで作成され、プライベート Docker レジストリにアップロードされたコンテナーを使用します。