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 の非表示インデックスの詳細な説明
目次先読みと後読みをキャプチャグループと組み合わせる捕獲グループと非捕獲グループ前を向いて、後ろを振...
HTML でフォームの送信を無効にする方法は 2 つあります。 1. コントロールタグにreadon...
目次必要とする実装コードデータベース数日前、友人からこれを書くのを手伝ってほしいと頼まれました。ただ...
MySQLの完全バックアップを実行するときは、--all-databaseパラメータを使用します。例...
序文今日、オープンソース プロジェクトのフィードバック フォームを設計していたところ、絵文字表現を挿...
1. 公式サイトからmysql-8.0.17-winx64をダウンロードし、Zipファイル形式を選択...
この記事では、WeChatアプレットの具体的なコードを共有し、簡単なチャットルームを実装します。具体...
目次序文文章パラメータ例Lodash 実装:トーキー機能: castPath関数: stringTo...
問題の背景: docker を使用してプロジェクトをデプロイする場合、プロジェクト内で印刷コントロー...
この記事では、MySQL 8.0.12のインストールされていないバージョンを設定して起動するための具...
tomcat が起動されるたびに、次のログ ファイルがログ ディレクトリに自動的に生成され、日付順...
jQuery フォーム検証の例 / ユーザー名、パスワード、住所、電子メールの検証を含む下記の通り ...
次のような効果がよく見られます。 そうです、ページ上でよく使われる「展開と折りたたみ」のインタラクシ...
注: このデモはミニプログラム環境でテストされており、他の h5 および pc Web ページにも適...
Mongodb には db.serverStatus() コマンドがあり、これを使用して Mongo...