数日前、私はDockerfile[1]のHere-Doc構文をテストしましたが、役に立たないことがわかりました。私はただ表面的なだけだった。 Docker公式サイトのドキュメントにあるbuildkit[2]の紹介を再度読みました。これは Docker Engine 23.0 以降のデフォルトのビルダーです。 BuildKitopen_in_new は、従来のビルダーを置き換えるために改良されたバックエンドです。 BuildKit は、バージョン 23.0 以降の Docker Desktop および Docker Engine のユーザーのデフォルトのビルダーです。 つまり、前回の記事で述べた不便さはすべて自然に解消されることになります。 私は、HereDoc は役に立たない構文であるという誤解を注意深く分析し、以下の理由を発見しました。 テスト サーバーの Docker バージョンが低すぎます (20.x)。 ベースイメージを書いてからかなり時間が経っているので、複雑なRUNコマンドやCOPYコマンドはありません。 上記の点を踏まえて、いくつかの最適化を行いました。
結論としては、Here-Doc 構文は本当に素晴らしいということです。 一言で言えば、複数行の構文をサポートするだけでなく、組み込みのシェル スクリプトも直接サポートします。 素晴らしい Dockerfile ヒアドキュメント構文まず、公式 Web サイトのドキュメントに従って、Docker エンジンのバージョンを最新バージョンにアップグレードします。 Ubuntu - docker[3]を例に挙げる
次に、Docker Hub[4]で対応するredis公式dockerfileを見つけます。 RUNコンテンツは&&でリンクされていないものの、;でセグメント化されて管理されていることがわかります。そして\、これはまだ少し不便です。 少し変更すると、(1) をすべて削除します。リンクとして使用されている\を削除し、(2)RUNのインデントをすべて削除します。 重要なポイント: これはシェル スクリプトです。つまり、ローカルテストが完了したら、それを Dockerfile に直接コピーできます。以前は、コマンドを連鎖するには && を使用する必要がありました。
docker buildコマンドを使用してイメージを直接ビルドし、実行結果を確認します。 トラブルシューティング変数の受け渡し問題以下の 2 つのモードに関しては、公式 Web サイトのドキュメントではその理由が説明されていません。これは比較実験結果から推測されただけであり、具体的な実装はまだ研究されていません。 モード 1 bash は EOT の直後にルート化されます。 このモードでは、最初の行の変数 dist を 2 行目の wget で使用することはできません。したがって、wget行によって実際に解析されるコマンドは
モード 2: 複数行コンテンツの最初の行でインタープリター #!/bin/bash が指定されている場合、すべてのコンテンツはシェル スクリプトと見なされます。 このモードでは、wget行によって実際に解析されるコマンドは
期待に応える ビルドキット構成ファイルなし
デフォルトの buildx 構成が見つからない場合は、以下を使用します。 |
<<: Dockerfileファイルを取得するためのDockerイメージ解析
6月28日のBaiduの大規模なアップデートは多くのウェブマスターを驚かせたが、それから間もなく、7...
すでにhostodo.comをよくご存知の方も多いでしょう。HostodoのVPSは、quadran...
ウェブサイトを構築するウェブマスターは皆、フレンドリーリンクがウェブサイトの重みを高めることができる...
アメリカの VPS には選択できるブランドが多すぎて、理解するまでどのアメリカの VPS が優れてい...
gomanilahost(2006年設立)は、主に共有ホスティングやVPS事業を展開するフィリピンの...
高品質のコンテンツから高品質の Web サイトが生まれ、Web サイトのコンテンツの重要性は明らかで...
サービス業界の人員として、SEO 担当者は自発的または意図的にチームを編成し、SEO サービスを提供...
暑い日はカーテンを閉めて家の中にこもり、猫たちが楽しそうに遊ぶ様子を見ながらブログを書いています。こ...
過去 10 年間のクラウド コンピューティングの普及により、多くの企業は、互いに互換性がなく、同じジ...
企業がインフラストラクチャをパブリック クラウドに移行するにつれて、クラウド コンピューティングのス...
時代の発展とともに、インターネットは特に若者にとって生活必需品となりました。彼らは食べ物や飲み物なし...
漏洩したパスワード検索サイトへのアクセスが一夜にして急増パスワードが漏洩した場合、QQアカウントのロ...
クモといえば、私のウェブマスターの友人のほとんどは、怒っていると同時に愛情深いです。私は蜘蛛を喜ばせ...
webhosting24 も歴史のある企業です。2001 年から事業を行っています。同社はイタリア、...
ローカルウェブサイトはどのように運営されるべきでしょうか? 多くのローカルウェブサイトが人気を博し、...