丝袜av在线观看|日本美女三级片在线播放|性欧美一区二区三区|小骚热免费国产视频|黑人va在线观看|女同国产91视频|五月丁香色播Av|国产凸凹视频一区二区|伊人电影久久99|国产成人无码一区二区观看

使用Docker快速部署WordPress并配置SSL證書

來自:素雅營(yíng)銷研究院

頭像 方知筆記
2025年04月24日 02:16

前言

在當(dāng)今互聯(lián)網(wǎng)時(shí)代,擁有一個(gè)安全可靠的網(wǎng)站至關(guān)重要。WordPress作為最受歡迎的內(nèi)容管理系統(tǒng)之一,結(jié)合Docker容器化技術(shù)和SSL加密協(xié)議,可以快速搭建一個(gè)高性能且安全的網(wǎng)站。本文將詳細(xì)介紹如何使用Docker部署WordPress并配置SSL證書。

準(zhǔn)備工作

在開始之前,請(qǐng)確保您的系統(tǒng)已安裝以下組件:

  • Docker引擎
  • Docker Compose
  • 域名(用于SSL證書申請(qǐng))

使用Docker Compose部署WordPress

  1. 首先創(chuàng)建一個(gè)docker-compose.yml文件:
version: '3'

services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: your_root_password
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress

wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "80:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
WORDPRESS_DB_NAME: wordpress
volumes:
- wordpress_data:/var/www/html

volumes:
db_data:
wordpress_data:
  1. 運(yùn)行以下命令啟動(dòng)服務(wù):
docker-compose up -d

配置SSL證書

使用Let’s Encrypt獲取免費(fèi)SSL證書

  1. 首先停止現(xiàn)有的WordPress容器:
docker-compose stop wordpress
  1. 修改docker-compose.yml文件,添加Nginx反向代理和Certbot服務(wù):
version: '3'

services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: your_root_password
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress

wordpress:
depends_on:
- db
image: wordpress:latest
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
WORDPRESS_DB_NAME: wordpress
volumes:
- wordpress_data:/var/www/html
networks:
- web

nginx:
image: nginx:latest
ports:
- "80:80"
- "443:443"
volumes:
- ./nginx-conf:/etc/nginx/conf.d
- ./certbot/www:/var/www/certbot
- ./certbot/conf:/etc/letsencrypt
depends_on:
- wordpress
restart: always
networks:
- web

certbot:
image: certbot/certbot
volumes:
- ./certbot/www:/var/www/certbot
- ./certbot/conf:/etc/letsencrypt
depends_on:
- nginx
entrypoint: "/bin/sh -c 'trap exit TERM; while :; do certbot renew; sleep 12h & wait $${!}; done;'"
networks:
- web

volumes:
db_data:
wordpress_data:

networks:
web:
driver: bridge
  1. 創(chuàng)建Nginx配置文件nginx-conf/wordpress.conf
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;

location / {
return 301 https://$host$request_uri;
}

location /.well-known/acme-challenge/ {
root /var/www/certbot;
}
}

server {
listen 443 ssl;
server_name yourdomain.com www.yourdomain.com;

ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

location / {
proxy_pass http://wordpress:80;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
  1. 初始化證書申請(qǐng):
docker-compose run --rm certbot certonly --webroot --webroot-path /var/www/certbot --dry-run -d yourdomain.com -d www.yourdomain.com
  1. 如果測(cè)試成功,移除--dry-run參數(shù)重新運(yùn)行獲取真實(shí)證書。

  2. 最后啟動(dòng)所有服務(wù):

docker-compose up -d

配置WordPress使用HTTPS

  1. 登錄WordPress后臺(tái)
  2. 進(jìn)入”設(shè)置”->“常規(guī)”
  3. 將”WordPress地址(URL)“和”站點(diǎn)地址(URL)“中的http改為https
  4. 保存更改

自動(dòng)續(xù)期SSL證書

由于Let’s Encrypt證書有效期為90天,我們已配置Certbot容器自動(dòng)續(xù)期。您可以通過以下命令檢查續(xù)期日志:

docker-compose logs certbot

總結(jié)

通過Docker和Docker Compose,我們快速部署了一個(gè)WordPress網(wǎng)站,并使用Nginx反向代理和Let’s Encrypt SSL證書實(shí)現(xiàn)了全站HTTPS加密。這種方案不僅部署簡(jiǎn)單,而且便于維護(hù)和擴(kuò)展,是搭建安全WordPress網(wǎng)站的理想選擇。

注意事項(xiàng)

  1. 定期備份您的網(wǎng)站數(shù)據(jù)和數(shù)據(jù)庫(kù)
  2. 監(jiān)控證書續(xù)期情況
  3. 保持Docker鏡像更新以獲得安全補(bǔ)丁
  4. 考慮使用防火墻限制不必要的端口訪問

希望本教程能幫助您快速搭建一個(gè)安全可靠的WordPress網(wǎng)站!