一 、docker 部署 wordpress 博客
wordpress前台地址:http://localhost:8686
wordpress后台地址:http://localhost:8686/wp-admin/
wordpress公网前台地址:https://wordpress.example.com:666
wordpress公网后台地址:https://wordpress.example.com:666/wp-admin/
家宽 nginx 反向代理
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
| mkdir -pm 755 /etc/nginx/conf.d && \ touch /etc/nginx/conf.d/wordpress.conf && \ cat <<'EOF' | sed '1!{/^[[:space:]]*#/d;/^[[:space:]]*$/d}' > /etc/nginx/conf.d/wordpress.conf
server { listen 666 ssl; listen [::]:666 ssl;
server_name wordpress.example.com;
ssl_certificate /etc/nginx/keyfile/cert.pem; ssl_certificate_key /etc/nginx/keyfile/key.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_ciphers HIGH:!aNULL:!MD5;
location / { proxy_pass http://10.10.10.251:8686; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $http_host; proxy_set_header Range $http_range; proxy_set_header If-Range $http_if_range; proxy_redirect off; proxy_buffering on; proxy_http_version 1.1; } charset utf-8; error_page 404 500 502 503 504 /50x.html; location = /50x.html { root /var/www/html; } } EOF
sudo systemctl restart nginx
|
创建 uploads.ini 文件
配置上传文件大小限制
1 2 3 4 5 6 7
| mkdir -p /mnt/mydisk/home/wordpress/html && \ touch /mnt/mydisk/home/wordpress/html/uploads.ini && \ cat > /mnt/mydisk/home/wordpress/html/uploads.ini <<'EOF' upload_max_filesize = 512M post_max_size = 512M memory_limit = 1024M EOF
|
1
| sudo chown -R 33:33 /mnt/mydisk/home/wordpress/html/uploads.ini
|
- 查看是否成功,
wordpress-wordpress-1
为wordpress容器id,具体可以用docker ps
查看
1
| docker exec wordpress-wordpress-1 php -i | grep upload
|
翻译过来就是
最大的文件上传: 512M
最大的执行大小: 512M
内存限制: 1G
1 、终端命令创建docker-compose.yml文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| mkdir -p /mnt/mydisk/home/wordpress && \ cd /mnt/mydisk/home/wordpress && \ touch docker-compose.yml && \ cat > docker-compose.yml <<'EOF' services: db: image: mysql:5.7 volumes: - ./mysql:/var/lib/mysql restart: always environment: MYSQL_ROOT_PASSWORD: somewordpress MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: wordpress wordpress: depends_on: - db image: wordpress:latest volumes: - ./html:/var/www/html - ./html/uploads.ini:/usr/local/etc/php/conf.d/uploads.ini ports: - "8686:80" - "6443:443" restart: always environment: WORDPRESS_DB_HOST: db WORDPRESS_DB_USER: wordpress WORDPRESS_DB_PASSWORD: wordpress WORDPRESS_DB_NAME: wordpress volumes: db_data: {} wordpress_data: {} EOF
docker-compose up -d
|
2 、拉取并运行
1
| cd /mnt/mydisk/home/wordpress && docker-compose up -d
|
3 、停止并删除
1
| cd /mnt/mydisk/home/wordpress && docker-compose down
|
4 、拉取镜像
1
| docker pull wordpress:latest
|
5 、容器升级
1 2 3 4 5
| cd /mnt/mydisk/home/wordpress && \ docker-compose down && \ docker-compose pull && \ docker-compose up -d && \ docker image prune -f
|
6 、插件目录加权限
1
| chmod -R 777 /mnt/mydisk/home/wordpress/html/wp-content
|
7 、上传主题,出现 您点击的链接已过期
在.htaccess最后面加内容
1 2 3 4 5 6 7
| tee -a /mnt/mydisk/home/wordpress/html/.htaccess <<'EOF' php_value max_execution_time 300 php_value upload_max_filesize 256M php_value post_max_size 256M php_value memory_limit 128M php_value max_input_vars 5000 EOF
|
8 、查看端口占用
9 、redis 设置
1
| cd /mnt/mydisk/home/wordpress/html
|
- 编辑
wp-config.php
文件,找到DB_COLLATE
在define( 'DB_COLLATE', 'XXX...');
后添加如下内容:
1 2 3
| /** Redis Object Cache */ define('WP_REDIS_HOST', 'wordpress-redis'); define('WP_REDIS_DATABASE', '0');
|
- 重启docker之后,在后台安装
Redis Object Cache
插件,直接点击Enable Object Cache
即可。
二 、容器维护命令
1 、查看所有运行容器的名称
1
| docker ps -a --format "{{.Names}}"
|
2 、停止 wordpress 容器
3 、启动 wordpress 容器
4 、重启 wordpress 容器
1
| docker restart wordpress
|
5 、进入 wordpress 容器
1 2 3
|
docker exec -it wordpress bash
|
6 、查看 wordpress 配置文件
1
| cat /mnt/mydisk/home/wordpress/docker-compose.yml
|
wordpress 安装主题
- argon主题下载:https://github.com/solstice23/argon-theme
wordpress 安装插件
- QPlayer2 音乐播放器:https://github.com/moeshin/QPlayer2-WordPress
wordpress 地址(URL)
