初めてDockerを使用してイメージをローカルにパッケージ化してデプロイする まず、私のラップトップシステムはMACOS 10.15.4です 1. プロジェクトの構造は次のとおりです。これは React プロジェクトであり、パッケージ化された静的リソース パスは dist ディレクトリです。 2. フォーカスDockerfileとdocker/nginx.conf ファイル1. Dockerfileはイメージを構築するために使われるテキストファイルです。詳しい紹介については、リンクを参照してください: Docker Dockerfile 私の Dockerfile の内容は次のとおりです。 nginxから ワークディレクトリ /usr/src/app/ ./docker/nginx.conf /etc/nginx/conf.d/default.conf をコピーします。 ./dist /usr/share/nginx/html/ をコピーします。 エクスポーズ80 CMD ["nginx", "-g", "デーモンオフ;"] Dockerfile 内の大文字の単語はコマンドです。各コマンドの意味は次のように説明されます。
2. docker/nginx.conf サーバー{ 聞く 80; # gzip 設定 gzip オン; gzip_min_length 1k; gzip_comp_レベル9; gzip_types text/plain text/css text/javascript application/json application/javascript application/x-javascript application/xml; gzip_vary オン; gzip_disable "MSIE [1-6]\."; クライアントの最大ボディサイズは100mです。 ルート /usr/share/nginx/html; 位置 / { try_files $uri $uri/ /index.html; } 場所 /api/ { # バックエンドのアドレスは proxy_pass http://www.XXX.com/ です。 } } 3. docker buildコマンドを実行してイメージを作成する実行したコマンドは、 4. docker runを実行してイメージをデプロイする実行したコマンドは: 5. localhost:80を開いてプロジェクトを確認しますこれは私にとって初めての Docker ローカル デプロイメントの経験です。多くの原則と Docker コマンドについてまだよくわかっていません。今後、さらに詳しく学習していきます。 ちょっとした問題を追記しておきます。今日、突然会社のプライベートクラウドにイメージをプッシュできなくなりました。ネットワーク環境の問題だったので、同僚にプッシュを手伝ってもらいました。 docker save 10.10.10.52:5000/zhanwu-study/prod:4.1.2 > study.tar 次に、現在のディレクトリに生成された study.tar ファイルを DingTalk 経由で同僚に送信します。同僚は study.tar ファイルをローカル コンピューターにダウンロードし、次のコマンドを実行します。 docker load < study.tar バージョンを更新します (新しいイメージは生成されず、2 つのバージョンは同じイメージになります)。 docker タグ 10.10.10.52:5000/zhanwu-study/prod:4.1.2 10.10.10.52:5000/zhanwu-study/prod:4.1.3 次に、プライベート クラウドにプッシュします。 docker push 10.10.10.52:5000/zhanwu-study/prod:4.1.3 これで、docker を使用してイメージをローカルにパッケージ化してデプロイする方法についての説明は終わりです。より関連性の高いローカル docker パッケージ化およびデプロイ イメージについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
>>: XHTML 入門チュートリアル: テキストの書式設定と特殊文字
前の記事では、deepin linux に新しいカーネルを手動でインストールする方法について説明しま...
目次コンポーネントの再帰呼び出しレンダリングメソッドの使用プロジェクトに取り組んでいると、左側のメニ...
注:記事に誤りがある場合は、メッセージを残して指摘してください。ご協力ありがとうございます。名前名前...
1. メニューバーで「編集」→「仮想ネットワーク エディター」を選択して仮想ネットワーク エディタ...
目次day.js を使用する理由モーメントデイ.js day.js がなければどうなるでしょうか? ...
Nginx はネストされた if ステートメントをサポートしておらず、if ステートメントでの論理判...
目次1. 概要2. オブジェクト作成のパラメータ3. 監視例4. 使用方法5. ソースコード1. 概...
このブログのすべてのコンテンツは、クリエイティブ コモンズ ライセンスの下でライセンスされています。...
エラーの説明Docker Desktop をインストールすると、WSL2 (Windows ベースの...
ネットワーク通信の概要オンライン ゲームを開発する場合、必然的にネットワーク通信に対処する必要があり...
導入:従来の画像検証コードと比較して、スライダー検証コードには次の利点があります。サーバーは検証コー...
フォームは、get と post の 2 つのデータ転送方法を提供します。どちらもデータを送信する方...
例示するDML(データ操作言語)とは、データベースの追加、削除、変更を行うための操作命令のことです。...
需要背景プロジェクトはVueを使用して作成され、ビジネス要件にはパズル効果があります。デフォルトの背...
この記事では、jQueryプラグインを使用してマインスイーパゲームを実装する方法に関する3番目の記事...