1. Vueプロジェクトのパッケージ化 開発されたvueプロジェクトに次の名前を入力し、パッケージ化してdistフォルダを生成します。 糸ビルド / npm 実行ビルド この時点で、ルート ディレクトリに追加のフォルダー (公開したい内容が含まれる dist フォルダー) が作成されます。 dist ディレクトリ全体をサーバーに転送し、静的リソース サイトとしてデプロイすると、プロジェクトに直接アクセスできます。 2. nginxイメージを取得する nginx は、高性能な HTTP およびリバース プロキシ サーバーです。ここでは、nginx イメージをベースとして使用して、vue アプリケーション イメージを構築します。 ターミナルに次のように入力します: docker プル nginx nginx イメージを取得できます。 Docker イメージは、コンテナの実行に必要なプログラム、ライブラリ、リソース、構成、およびその他のファイルを提供するだけでなく、実行時に用意されたいくつかの構成パラメータ (匿名ボリューム、環境変数、ユーザーなど) も含む特別なファイル システムです。 イメージには動的なデータは含まれておらず、作成後にその内容は変更されません。 ターミナルで次のコマンドを入力してnginxイメージを確認します。 dockerイメージls ミラーリングの結果は次のようになります。 3. nginx config設定ファイルを作成する プロジェクトのルートディレクトリにnginxフォルダを作成し、そのフォルダに新しいファイルdefault.confを作成します。 サーバー{ 聞く 80; server_name ローカルホスト; #文字セット koi8-r; access_log /var/log/nginx/host.access.log メイン; error_log /var/log/nginx/error.log エラー; 位置 / { ルート /usr/share/nginx/html; インデックス index.html index.htm; try_files $uri $uri/ /index.html; } #エラーページ 404 /404.html; # サーバーのエラーページを静的ページ /50x.html にリダイレクトします # エラーページ 500 502 503 504 /50x.html; 場所 = /50x.html { ルート /usr/share/nginx/html; } } 注意⚠️: vue-router が履歴モードを使用している場合、 try_files $uri $uri/ /index.html; は非常に重要です。 ! ! 私たちのアプリケーションはシングルページ クライアント アプリケーションであるため、背景が正しく構成されていない場合、ユーザーがブラウザーでアドレスにアクセスしたときに 404 が返されます。 したがって、すべての状況をカバーするには、サーバー側で候補リソースを追加する必要があります。URL がどの静的リソースにも一致しない場合は、同じ index.html ページが返される必要があります。このページは、アプリが依存するページです。 上記のファイルはホームページを /usr/share/nginx/html/index.html として定義しているので、構築した index.html ファイルと関連する静的リソースを後で /usr/share/nginx/html ディレクトリに配置できます。 4. Dockerfileを作成する # nginxからベースイメージを設定する # 著者を定義します MAINTAINER lihui <[email protected]> #distファイルの内容を/usr/share/nginx/html/ディレクトリにコピーします。COPY dist/ /usr/share/nginx/html/ #nginxイメージのデフォルト設定をローカルのdefault.conf設定に置き換えます。COPY nginx/default.conf /etc/nginx/conf.d/default.conf 5. Dockerfileに基づいてVueアプリケーションイメージを構築する 次のコマンドを実行し、最後の「.」を忘れないようにしてください。 docker build -t テスト。 -t はイメージに名前を付けるために使用され、test は生成されたイメージの名前であり、. は現在のディレクトリ内の Dockerfile に基づいてイメージを構築するために使用されます。 Vueベースの画像が生成されました! 以上がDockerイメージ+nginxでVueプロジェクトをデプロイする方法の詳細な内容です。VueプロジェクトのDockerデプロイの詳細については、123WORDPRESS.COMの他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: Vue カプセル化に基づくプルダウン更新およびプルアップ読み込みコンポーネント
>>: MySQL 8.0 の非表示インデックスの詳細な説明
tomcat の containerID を見つけて、tomacat ディレクトリに入ります。 [r...
多くの Web サイト デザイナーが犯す最も一般的な間違いは、Web ページが IE で正常に表示さ...
1. 分散ストレージシステムの概要情報技術の継続的な発展により、利便性がもたらされる一方で、データ量...
スタイルシートの最も重要な機能の 1 つは、ページ、画面、電子シンセサイザーなどの複数のメディアに適...
この関数の効果はvue的provide/injectに似ています。 contextを通じて反応できる...
ページでビデオ タグを使用する場合は、Ogg Theora または VP8 (これに問題がない場合)...
さまざまなソースからデータを集約することで、中央倉庫を作成できます。データ ウェアハウスは、ビジネス...
コードをコピーコードは次のとおりです。 <本文> //マーキーの助けを借りて<MA...
今日、ちょっとした問題に遭遇し、長い間苦労しました。そのことを皆さんにシェアしたいと思います。 a ...
1. インストールターミネーターの最大の特徴は、1つのウィンドウで複数のターミナルを開くことができる...
昨夜、ブラウザのレンダリングプロセスに関するエッセイを書きましたが、小さなコードで説明しただけでした...
複雑なテーブル構造では、一部のセルが垂直方向に複数のセルにまたがるため、列間属性 COLSPAN を...
1. システムにログインし、ディレクトリに入ります: cd /etc/sysconfig/netwo...
今朝、私は Wampserver を使用してローカルの win7 マシン上に PHP 環境を構築し、...
目次Vue でのスロットの使用: slotスコープ付きスロット: テンプレートタグで囲む要約するVu...