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 の非表示インデックスの詳細な説明
Redux はデータ状態管理プラグインです。React や Vue を使用してコンポーネント化された...
目次保守可能なコードとは何ですか?コード規約1. 読みやすさ2. 変数と関数の命名3. 透過的な変数...
最近、Docker を使用して Java アプリケーションをデプロイしていたときに、タイムゾーンが間...
目次ファイルアップロードのための2つのソリューションファイルストリーム(フォームデータ)に基づくクラ...
目次移行ツールアプリケーション変換mysql8.0 ドライバ パッケージを追加データソース構成の変更...
目次事前準備展開ターゲットDocker環境構築クラウドサーバーに接続Docker環境をインストールす...
CSS の font-family プロパティを使用して中国語フォントを参照する場合、フォントを定義...
この記事では、Linux サーバー上で Nginx と Apache の共存を実装する方法について説...
目次序文基本的な使い方文法エラー処理プロミスチェーン呼び出し非同期と待機よく使われる方法1. Pro...
目次なぜマテリアルライブラリが必要なのでしょうか?材質は何ですか?素材の種類fuep、vue3 ベー...
目次ライフサイクルを理解する理由ライフサイクルとはライフサイクルフック関数作成され、マウントされたフ...
この記事では、階段スライド効果を実現するためのjQueryの具体的なコードを参考までに紹介します。具...
質問画像とテキストのシームレスなスクロールは、一般的に携帯電話では良い効果をもたらしますが、一部のモ...
序文Windows では、各インスタンスに適切なパラメータを使用してコマンド ラインから複数の My...
目次MySQL を使い始めるMySQL 管理6. MySQL サーバーを起動および停止します。 7....