# 切換到您當前的目錄
cd /AAAAAAAAAAAA# 創建存放nginx配置、證書和日志的目錄結構
mkdir -p nginx-config/conf.d nginx-ssl nginx-logs# 為掛載做準備,您可能需要將當前dist目錄內容移動到新的html目錄
# 首先查看當前dist目錄的內容
ls -la dist/# 如果html目錄不存在,可以創建并復制文件(假設dist目錄里是您的網站文件)
mkdir -p nginx-html
cp -r dist/* nginx-html/
從阿里下nginx證書壓縮包
#將證書放入證書文件夾
cp xxx.cn.pem xxx.cn.key nginx-ssl/
# 創建存放主配置文件的目錄(如果尚未創建)
mkdir -p nginx-config# 從容器中復制 nginx.conf 到宿主機
docker cp 862c2ce78d42:/etc/nginx/nginx.conf ./nginx-config/# 從容器中復制 conf.d 目錄下的所有默認配置(例如 default.conf)
docker cp 862c2ce78d42:/etc/nginx/conf.d ./nginx-config/# 查看復制出的配置文件
ls -la nginx-config/
ls -la nginx-config/conf.d/
conf.d/ssl.conf
# 強制 http 跳轉到 https
server {
? ? listen 80;
? ? server_name sayfamily.cn www.sayfamily.cn;
? ? return 301 https://$host$request_uri;
}
# HTTPS server
server {
? ? listen 443 ssl;
? ? server_name sayfamily.cn www.sayfamily.cn;
? ? ssl_certificate ? ? /etc/nginx/ssl/sayfamily.cn.pem;
? ? ssl_certificate_key /etc/nginx/ssl/sayfamily.cn.key;
? ? ssl_session_cache ? shared:SSL:1m;
? ? ssl_session_timeout 10m;
? ? ssl_ciphers HIGH:!aNULL:!MD5;
? ? ssl_prefer_server_ciphers on;
? ? location / {
? ? ? ? root ? /usr/share/nginx/html;
? ? ? ? index? index.html;
? ? }
}
配置完后執行:
docker run -d --name nginx-ssl -p 80:80 -p 443:443 -v /AAAAAAAAAAAA/nginx-html/dist:/usr/share/nginx/html -v /AAAAAAAAAAAA/nginx-ssl:/etc/nginx/ssl -v /AAAAAAAAAAAA/nginx-config/nginx.conf:/etc/nginx/nginx.conf -v /AAAAAAAAAAAA/nginx-config/conf.d:/etc/nginx/conf.d -v /AAAAAAAAAAAA/nginx-logs:/var/log/nginx nginx:latest
關鍵!:打開阿里云443端口