婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 嘗試Docker+Nginx部署單頁應用方法

嘗試Docker+Nginx部署單頁應用方法

熱門標簽:遼寧電銷平臺外呼系統軟件 如何在各種地圖標注自己的地址 申請400電話號碼多少錢 信陽銷售外呼系統招商 百應電銷機器人靠譜嗎 coreldraw地圖標注 菏澤crm外呼系統價格 物超所值的400電話申請 營銷電銷機器人招商

開發到部署,親力親為

當我們開發一個單頁面應用時,執行完構建后

npm run build

會生成一個 index.html 在 dist 目錄,那怎么把這個 index.html 部署到服務器上呢?

目錄結構

  • dist/:前端構建完的靜態文件
  • docker/:鏡像所需的配置文件

配置 Nginx

挑幾點配置講講,先是 Gzip 壓縮資源,以節省帶寬和提高瀏覽器加載速度

雖然 Webpack 已經支持在構建時就生成 .gz 壓縮包,但也可以通過 Nginx 來啟用
gzip on;
gzip_disable "msie6";
# 0-9 等級,級別越高,壓縮包越小,但對服務器性能要求也高
gzip_comp_level 9;
gzip_min_length 100;
# Gzip 不支持壓縮圖片,我們只需要壓縮前端資源
gzip_types text/css application/javascript;

再就是服務端口的配置,將 API 反向代理到后端服務

server {
 listen 8080;
 server_name www.frontend.com;

 root /usr/share/nginx/html/;

 location / {
 index index.html index.htm;
 try_files $uri $uri/ /index.html;
 # 禁止緩存 HTML,以保證引用最新的 CSS 和 JS 資源
 expires -1;
 }

 location /api/v1 {
 proxy_pass http://backend.com;
 }
}

完整配置長這樣

worker_processes 1;

events { worker_connections 1024; }

http {
 ##
 # Basic Settings
 ##

 sendfile on;
 tcp_nopush on;
 tcp_nodelay on;
 keepalive_timeout 65;
 types_hash_max_size 2048;

 include /etc/nginx/mime.types;
 default_type application/octet-stream;

 ##
 # Logging Settings
 ##

 access_log /var/log/nginx/access.log;
 error_log /var/log/nginx/error.log;

 ##
 # Gzip Settings
 ##

 gzip on;
 gzip_disable "msie6";
 gzip_comp_level 9;
 gzip_min_length 100;
 gzip_types text/css application/javascript;

 server {
 listen 8080;
 server_name www.frontend.com;

 root /usr/share/nginx/html/;

 location / {
  index index.html index.htm;
  try_files $uri $uri/ /index.html;
  expires -1;
 }

 location /api/v1 {
  proxy_pass http://backend.com;
 }
 }
}

配置 Docker

這里簡單一點,基于基礎鏡像,拷貝我們寫好的 nginx.conf 和 index.html 到鏡像內

FROM nginx:alpine

COPY nginx.conf /etc/nginx/nginx.conf
COPY dist /usr/share/nginx/html

編寫 Makefile

完成了上面的準備,就可以編寫命令來執行鏡像的打包了

先給鏡像取個名稱和端口號

APP_NAME = spa_nginx_docker
PORT = 8080

通過 build 來打包鏡像

build:
 cp docker/Dockerfile .
 cp docker/nginx.conf .
 docker build -t $(APP_NAME) .
 rm Dockerfile
 rm nginx.conf

通過 deploy 來啟動鏡像

deploy:
 docker run -d -it -p=$(PORT):$(PORT) --name="$(APP_NAME)" $(APP_NAME)

最后還有個 stop 來停止和清理鏡像

stop:
 docker stop $(APP_NAME)
 docker rm $(APP_NAME)
 docker rmi $(APP_NAME)

完整配置長這樣

APP_NAME = spa_nginx_docker
PORT = 8080

build:
 cp docker/Dockerfile .
 cp docker/nginx.conf .
 docker build -t $(APP_NAME) .
 rm Dockerfile
 rm nginx.conf

deploy:
 docker run -d -it -p=$(PORT):$(PORT) --name="$(APP_NAME)" $(APP_NAME)

stop:
 docker stop $(APP_NAME)
 docker rm $(APP_NAME)
 docker rmi $(APP_NAME)

完整命令長這樣

# 靜態資源構建
npm run build

# 鏡像打包
make build

# 停止并刪除舊鏡像(首次可忽略)
make stop

# 鏡像啟動
make deploy

總結

目前的部署方法相對簡單,后續會加入基礎鏡像和鏡像倉庫的使用,先去前面探探路

標簽:瀘州 玉樹 湖北 內江 廈門 江西 泰安 江門

巨人網絡通訊聲明:本文標題《嘗試Docker+Nginx部署單頁應用方法》,本文關鍵詞  嘗試,Docker+Nginx,部署,單頁,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《嘗試Docker+Nginx部署單頁應用方法》相關的同類信息!
  • 本頁收集關于嘗試Docker+Nginx部署單頁應用方法的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲成人黄色影院| 国产精品久久久久久久久动漫| 国产在线视频一区二区三区| 亚洲欧美自拍偷拍色图| 日韩美女一区二区三区四区| 91在线播放网址| 韩国女主播成人在线| 亚洲制服欧美中文字幕中文字幕| 国产亚洲精品7777| 亚洲国产精品一区二区www| 国产精品久久久久久久久免费丝袜| 欧美精品九九99久久| 91网站最新地址| 国产激情91久久精品导航| 美女视频黄 久久| 一区二区高清视频在线观看| 国产精品视频看| 精品国产一区二区亚洲人成毛片 | 中文字幕一区二区三区四区| 日韩精品中午字幕| 欧美一区二区三区在线看| 色噜噜狠狠成人网p站| 成人不卡免费av| 福利一区二区在线| 激情伊人五月天久久综合| 日本美女一区二区| 调教+趴+乳夹+国产+精品| 亚洲国产成人高清精品| 一区二区三区四区乱视频| 欧美激情一区二区三区全黄| 久久久久久麻豆| 久久久久久久国产精品影院| 精品久久久久久久久久久久包黑料| 欧美精品v国产精品v日韩精品| 在线欧美一区二区| 在线一区二区三区| 欧美性大战久久久久久久| 在线欧美日韩精品| 欧美在线一区二区| 欧美日韩国产首页| 欧美日韩国产大片| 欧美妇女性影城| 777久久久精品| 欧美一区二区视频在线观看| 日韩区在线观看| 精品国产乱码久久久久久1区2区| 精品国产成人系列| 国产视频视频一区| 亚洲视频在线一区观看| 一区二区免费视频| 天堂va蜜桃一区二区三区漫画版| 免费成人美女在线观看.| 毛片av一区二区| 国产曰批免费观看久久久| 岛国一区二区在线观看| 成人av网址在线| 在线观看亚洲精品视频| 欧美一级二级在线观看| 久久青草欧美一区二区三区| 国产精品久久久久久久久快鸭| 亚洲男人天堂av| 日韩激情视频在线观看| 精品一二线国产| 北岛玲一区二区三区四区| 在线视频国内自拍亚洲视频| 91精品欧美一区二区三区综合在 | 激情综合色综合久久| 国产黄色精品视频| 91啪九色porn原创视频在线观看| 欧美日韩和欧美的一区二区| 久久色.com| 亚洲黄色小说网站| 开心九九激情九九欧美日韩精美视频电影| 国产成a人无v码亚洲福利| 91网页版在线| 日韩欧美不卡一区| 亚洲三级电影全部在线观看高清| 日韩高清在线不卡| www.久久精品| 日韩情涩欧美日韩视频| 1024成人网色www| 麻豆国产一区二区| a4yy欧美一区二区三区| 欧美一区二区播放| 亚洲日本在线天堂| 国产一区二区在线免费观看| 欧美中文字幕一区二区三区 | 一区二区三区**美女毛片| 裸体歌舞表演一区二区| 色欧美88888久久久久久影院| 精品少妇一区二区| 亚洲狠狠爱一区二区三区| 国产suv一区二区三区88区| 911精品国产一区二区在线| 国产精品久久久久精k8| 美洲天堂一区二卡三卡四卡视频 | 99久久综合精品| 精品免费视频.| 亚洲一区二区三区四区五区中文| 国产91精品一区二区| 日韩午夜激情av| 亚洲国产综合在线| 91麻豆免费视频| 国产色产综合色产在线视频| 麻豆精品视频在线观看| 欧美亚洲图片小说| 日韩美女久久久| 国产精品一区二区免费不卡 | 国产精品午夜电影| 久久国产精品色| 在线播放国产精品二区一二区四区| 亚洲欧美综合另类在线卡通| 国产成人激情av| 国产亚洲综合色| 久久99精品网久久| 欧美一区二区三区视频在线观看| 亚洲国产一区二区a毛片| 91成人免费在线| 一区二区久久久久| 色婷婷av一区二区三区gif| 一色桃子久久精品亚洲| 成人激情文学综合网| 欧美国产日本视频| 日韩亚洲欧美高清| 男女男精品网站| 欧美一区二区三区日韩| 亚洲一线二线三线视频| 欧美中文字幕不卡| 亚洲一区二区在线观看视频| 欧美在线观看禁18| 亚洲午夜久久久久久久久电影院| 91行情网站电视在线观看高清版| 日韩理论电影院| 91久久久免费一区二区| 亚洲在线中文字幕| 欧美日韩国产在线播放网站| 日韩成人一区二区三区在线观看| 欧美一区二区日韩| 国产一区二区调教| 中文字幕va一区二区三区| 欧美伊人久久大香线蕉综合69| 国产欧美一区二区三区网站| 久久精品国产在热久久| 日韩欧美成人激情| 国产精品小仙女| 精品国产髙清在线看国产毛片| 国产乱码精品一区二区三区忘忧草| 久久久久久久久蜜桃| 国产99精品视频| 中文字幕色av一区二区三区| 欧美主播一区二区三区美女| 青青草97国产精品免费观看无弹窗版| 日韩视频一区二区| 国产福利一区在线观看| 亚洲色大成网站www久久九九| 欧美中文字幕久久| 日韩不卡一区二区三区| 日韩精品一区二区三区三区免费| 高清国产一区二区三区| 一区二区三区国产| 欧美不卡123| 91视频com| 久久激情五月激情| 中文字幕一区二区不卡| 欧美色偷偷大香| 国产一区欧美日韩| 亚洲美女免费视频| 日韩一级片网站| 91丨九色丨国产丨porny| 亚洲成人动漫在线观看| 国产日韩成人精品| 欧美精三区欧美精三区| 国产成人在线视频播放| 亚洲mv在线观看| 国产日韩欧美麻豆| 91精品国产综合久久蜜臀| av一区二区三区黑人| 男女男精品视频| 亚洲精品高清在线| 久久久久久久久97黄色工厂| 欧美日韩免费一区二区三区视频| 国产成人丝袜美腿| 日本一不卡视频| 亚洲欧美国产毛片在线| 久久久久久97三级| 欧美剧在线免费观看网站| aaa欧美大片| 国产成人免费高清| 麻豆国产精品一区二区三区| 一区二区三区精品| 亚洲国产精品精华液2区45| 制服丝袜亚洲色图| 欧洲色大大久久| 成人禁用看黄a在线| 国产一区二区三区最好精华液| 丝袜亚洲精品中文字幕一区| 亚洲精品国产a| 中文字幕中文字幕一区二区| 久久人人97超碰com| 日韩亚洲欧美高清|