問題タブ [windows-container]
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.
containers - Docker コンテナへの Windows サービスのインストール
Tomcat ベースの Windows アプリケーションの 1 つを Windows Nano Server コンテナーに移植しようとしています。インストール プロセスには、ActiveMQ サービスと別の Tomcat サービスの 2 つの Windows サービス インストールが含まれます。これは、製品で提供される 2 つのバッチ ファイルを使用して実現されます。サービスのインストールに加えて、JVM に関連するいくつかの引数も渡します。現在私が直面している問題は、これらのサービスを Nano Server にインストールできないことです。同じ Dockerfile が完璧に機能し、製品を Windows Server Core Container にインストールします。
観察: バッチ ファイルを介してインストールされるサービスは、2 つのシステム コンポーネント - Winsock 用の補助機能ドライバー (サービス名: afd) と TCP/IP プロトコル ドライバー (サービス名: tcpip) に依存しています。これは、サービスのプロパティを確認したときに、製品がインストールされた VM で発見したものです。これらは Nano Server コンテナーには存在しませんが、Windows Server Core コンテナーには存在します。それが理由でしょうか?はいの場合、これらのサービスを Nano Server で実行する方法はありますか?
この問題のトラブルシューティング方法がわかりません。Windows サービスに関して、Nano Server Container に制限はありますか?
windows - Windows docker ビルド中の変数の処理
後続のステートメントDockerfile
でアクセスできるように、Windows イメージの変数を定義するにはどうすればよいですか?RUN
私のテストDockerfile
は次のようになります
経由でイメージを構築するとき
PS > docker build -t myImage .
(a) 値のみviaArg
を表示します。viaEnv
ここの最初の例では、次のように複数のコマンドを 1 行にまとめています。
RUN $someVar=\"2.60.3\" ; echo $someVar
しかし、確かに別の方法があるはずです。
名前空間を使用する$env
唯一の方法ですか?
このすべてにどのようsetx
に参加しますか?
注:コマンドラインから変数を渡そうとしているのではないため、ARG
すでに間違った方法で使用されている可能性があります。そして、私は変数を永続的に設定したくありません。それらはビルド実行中にのみ存在する必要があるため、レジストリには必要ありません。
使用バージョンは