安裝docker
- sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
- sudo yum install docker-ce docker-ce-cli containerd.io
- 設定開機自啟:systemctl enable docker.service
建立docker網路,網路名字自定義
docker network create balabala
前端準備
- 專案打包:npm run build
- 配置nginx.conf檔案
#user nobody;
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
# http server
server {
listen 80; # 在雲伺服器中的防火牆要開放埠
server_name lal.noleft.cn; # 域名或者伺服器公有ip
location / {
#這裡寫的是nginx目錄重定向後的絕對路徑
root /usr/share/nginx/html/dist;
index index.html index.htm;
# 解決history路由模式重新整理404
try_files $uri $uri/ /index.html;
}
#對接後端介面的
# location /myproject { # /myproject/test/api /test/api
# proxy_pass http://myproject:9898/; # 加/代表會丟棄/myproject
# # proxy_pass myproject; # 加/代表會丟棄/myproject
# }
# rewrite ^(.*)$ https://$host$1 permanent;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
- 建立目錄
在/usr/local下建立目錄nginx,在nginx下建立html目錄並放配置檔案
在html資料夾中放前端的包dist
執行命令
:後面的表示將地址重定向(所以nginx.conf配置檔案中寫的是重定向後的絕對路徑)
docker run -d --name nginx --network balabala -v /usr/local/nginx/html:/usr/share/nginx/html -v /usr/local/nginx/nginx.conf:/etc/nginx/nginx.conf -v -p 80:80 nginx:latest
重啟nginx服務並檢視程序是否正常執行
docker restart nginx
如果報錯可以檢視nginx日誌進行問題追蹤
docker logs -f nginx