Docker-ImageをセットアップするためにJenkinsからArtifactを取得する必要があります。Dockerfileで使用されるJenkins用のAPIトークンを保存する場所
マイ・ジェンキンスがhere
見られるように
wget --auth-no-challenge --http-user=user --http-password=apiToken --secure-protocol=TLSv1 http://jenkins.yourcompany.com/job/your_job/build?token=TOKEN
経由のwgetに渡すことができる認証を必要とする今、私は私のDockerfileにAPIトークンを渡す必要があります。
Dockerfileがパブリックでアクセスできる限り、私はファイル内にapi-token plaintextを保存したくありません。 代替はドッカーARGになりますが、それは「ドッキングウィンドウ履歴」
コピーおよびパスワードを含むファイルを削除して見られるように、彼らは私にはとてもエレガントではないと思われるパスワードやセキュリティ関連のデータのためにそれをお勧めしません。
他に解決策はありますか?
これが私の最初の試みでした。問題は、COPYがアーティファクトをROOTとしてコピーし、別のユーザーとしてアプリを実行する必要があることです。 Dockerfileの内部でchownを実行すると、追加のレイヤーが作成されるため、Image Sizeが大幅に増加します(Artefact Size〜1G)。 –
ビルド中に '--squash'オプションを使うと画像サイズの問題を解決できます。 – Rawkode
詳しい情報が追加されました – Rawkode