人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動態(tài)

Docker鏡像+nginx 部署 vue 項目的方法

發(fā)布日期:2022-01-19 15:11 | 文章來源:源碼中國

一、打包vue項目

在開發(fā)完的vue項目輸入如下命名,打包生成dist文件夾

yarn build / npm run build

此時根目錄會多出一個文件夾:dist文件夾,里面就是我們要發(fā)布的東西。

如果將該dist目錄整個傳到服務器上,部署成靜態(tài)資源站點就能直接訪問到該項目。

二、獲取nginx 鏡像

nginx 是一個高性能的HTTP和反向代理服務器,此處我們選用 nginx 鏡像作為基礎來構建我們的vue應用鏡像。

在終端輸入:

docker pull nginx

即可以獲取到nginx鏡像。

Docker鏡像是一個特殊的文件系統(tǒng),除了提供容器運行時所需的程序、庫、資源、配置等文件外,還包含了一些為運行時準備的一些配置參數(如匿名卷、環(huán)境變量、用戶等)。 鏡像不包含任何動態(tài)數據,其內容在構建之后也不會被改變。

  在終端輸入如下命令,可以看到nginx的鏡像

docker image ls

鏡像結果如下所示:

三、創(chuàng)建 nginx config配置文件

在項目根目錄下創(chuàng)建nginx文件夾,該文件夾下新建文件default.conf

server {
  listen    80;
  server_name localhost;
  #charset koi8-r;
  access_log /var/log/nginx/host.access.log main;
  error_log /var/log/nginx/error.log error;
  location / {
    root  /usr/share/nginx/html;
    index index.html index.htm;
    try_files $uri $uri/ /index.html;
  }
  #error_page 404       /404.html;
  # redirect server error pages to the static page /50x.html
  #
  error_page  500 502 503 504 /50x.html;
  location = /50x.html {
    root  /usr/share/nginx/html;
  }
}

注意⚠️:如果vue-router使用的是history模式,try_files $uri $uri/ /index.html; 非常重要!?。?/p>

因為我們的應用是單頁客戶端應用,如果后臺沒有正確的配置,當用戶在瀏覽器訪問地址時,就會返回404。

所以需要在服務端增加一個覆蓋所有情況的候選資源,如果URL匹配不到任何靜態(tài)資源,則應該返回同一個index.html頁面,這個頁面就是你app依賴的頁面。

上面的文件定義了首頁的指向為 /usr/share/nginx/html/index.html, 所以我們可以一會把構建出來的index.html文件和相關的靜態(tài)資源放到/usr/share/nginx/html目錄下。

四、創(chuàng)建 Dockerfile 文件

# 設置基礎鏡像
FROM nginx
# 定義作者
MAINTAINER lihui <1107136746@qq.com>
# 將dist文件中的內容復制到 /usr/share/nginx/html/ 這個目錄下面
COPY dist/ /usr/share/nginx/html/
#用本地的 default.conf 配置來替換nginx鏡像里的默認配置
COPY nginx/default.conf /etc/nginx/conf.d/default.conf

五、基于該Dockerfile構建vue應用鏡像

運行如下命令,注意不要少了最后的“ . ”

docker build -t test .

-t 是給鏡像命名 ,test是生成鏡像的名字,. 是基于當前目錄的Dockerfile來構建鏡像。

基于vue的鏡像就生成好了!

以上就是Docker鏡像+nginx 部署 vue 項目的方法的詳細內容,更多關于docker部署vue項目的資料請關注本站其它相關文章!

版權聲明:本站文章來源標注為YINGSOO的內容版權均為本站所有,歡迎引用、轉載,請保持原文完整并注明來源及原文鏈接。禁止復制或仿造本網站,禁止在非www.sddonglingsh.com所屬的服務器上建立鏡像,否則將依法追究法律責任。本站部分內容來源于網友推薦、互聯(lián)網收集整理而來,僅供學習參考,不代表本站立場,如有內容涉嫌侵權,請聯(lián)系alex-e#qq.com處理。

實時開通

自選配置、實時開通

免備案

全球線路精選!

全天候客戶服務

7x24全年不間斷在線

專屬顧問服務

1對1客戶咨詢顧問

在線
客服

在線客服:7*24小時在線

客服
熱線

400-630-3752
7*24小時客服服務熱線

關注
微信

關注官方微信
頂部