問題タブ [terraform-provider-docker]

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.

0 投票する
1 に答える
1278 参照

terraform - Terraform の Docker プロバイダーが、アドレスが使用可能になるのを待ってから接続を試行するようにするにはどうすればよいですか?

Terraform に次のリソースがあります。

ipv4_addressこれは、docker マシンに接続できるようになる前に、値がわかっていることに依存しています。この値は、別のリソースがプロビジョニングされるまで不明です。

を実行するterraform planと、次のエラーが表示されます。

エラー: Docker クライアントの初期化中にエラーが発生しました: Docker ホスト `` を解析できません

docker.tf の 1 行目、プロバイダー "docker": 1: プロバイダー "docker" {

ipv4_addressDocker プラグインがプロビジョニングされる前に Docker マシンに接続しようとしているため、 は空に見えます。接続を試行する前に、マシンがプロビジョニングされるのを待つように指示するにはどうすればよいですか?


私が試したことの1つ:

これを行うと、次のエラーが表示されます。

エラー:プロバイダー ブロックの予約済み引数名

docker.tf の 4 行目、プロバイダ "docker": 4: depends_on = [

プロバイダー引数名「depends_on」は、Terraform が将来のバージョンで使用するために予約されています。

しかし、もっと読んでdepends_onみると、とにかくそれが解決策だとは思いません。

0 投票する
0 に答える
159 参照

docker - Terraform Docker プロバイダー: 特定のネットワークへの「バインド」ポート

デフォルト ブリッジ (OAM)、ブリッジ (データ入力)、および MacVLAN (データ出力) の 3 つのネットワークをサポートする Docker コンテナーを起動します。問題は、Docker プロバイダーがデフォルト ブリッジで定義済みのすべてのポートをセットアップしているように見えることです。定義されたポートを特定の Docker ネットワークにバインドするように Terraform に指示するにはどうすればよいですか??

.tf ファイルの抜粋:

Docker ネットワーク:

ポート 222 は機能しますが、ポート 881 は機能しません。

Docker を実行しているホスト OS からの IPTables:

行にはのtcp dpt:881宛先が必要です192.168.32.3。syslog コンテナーは Data-In Docker Network のみを使用するため、正しい IP アドレスを持っています。

提案/回避策はありますか?? ありがとう!:)

0 投票する
0 に答える
205 参照

docker - Terraform Docker プロバイダー:Docker ホストでコマンドを実行する方法はありますか?

Terraform Docker プロバイダーの制限 ( Terraform Docker プロバイダー: 特定のネットワークへの「バインド」ポートを参照) を考えると、コンテナーが開始された後に Docker ホストでコマンドを実行する方法はありますか?

特定のポートのブロックを接続する Docker ネットワークを指定できないため、ネットワークを 1 つだけ定義して CNF を開始し、Terraform がポートをそのネットワークにバインドし、その後他のネットワークをコンテナに追加して、開始または再起動しますか?私の Docker ホストはリモートです。それ以外の場合は、シェル スクリプトを使用して、Terraform の制限なしで正しく開始していたはずです。

0 投票する
1 に答える
512 参照

docker - terraform destroy で Docker イメージを強制的に削除する方法

私はterraform.io のチュートリアルに従っていました。このチュートリアルでは、terraform を使用して docker イメージとコンテナーをプロビジョニングし、terraform スタックを破棄しました。ただし、次のエラーが表示されます。

これに対するネイティブの Docker ソリューションが実行されていることはわかっていdocker rmi -f 540a289bab6cます。しかし、これにテラフォームのアプローチがあるかどうか疑問に思っていましたか?

terraform リソースのドキュメントは、terraformdocker_imageがイメージを破棄しようとした理由を示していますterraform destroy: テンプレートmain.tfが にkeep-locally設定されていましたtrue。しかし、その破壊を強制する方法については述べていません。

チュートリアルのmain.tf内容は次のとおりです。

terraform destroyでは、Docker ネイティブ ツールを使用して手動で介入することなく、このテンプレートで作業を強制するにはどうすればよいでしょうか?

0 投票する
2 に答える
373 参照

docker - Terraform docker がリモート ホストのコンテナー レジストリで認証できない

Terraform 0.13.4 を使用している Windows マシンで、Terraform と Docker プロバイダーを使用してリモート ホストでいくつかのコンテナーを起動しようとしています。

プライベートレジストリで認証できないため、これに苦労しています。常に取得して401 Unauthorizedいます。

sha256_digestリソースを取得して使用するためにこれを行わない場合docker_container、すべてが機能しますが、実行中のコンテナーが強制的に置き換えられます。