docker部署
Stacks>wordpress
services:
wordpress:
image: wordpress:6.6.1-php8.2
container_name: wordpress
restart: unless-stopped
ports:
- "8000:80"
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: wordpress_user
WORDPRESS_DB_PASSWORD: wordpress_password
WORDPRESS_DB_NAME: wordpress_db
volumes:
- /home/ubt/docker/wp/html:/var/www/html # 挂载宿主机目录到容器内部
db:
image: mysql:latest
container_name: mysql
restart: unless-stopped
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: root_password
MYSQL_DATABASE: wordpress_db
MYSQL_USER: wordpress_user
MYSQL_PASSWORD: wordpress_password
volumes:
- db_data:/var/lib/mysql
phpmyadmin:
image: phpmyadmin/phpmyadmin
container_name: phpmyadmin
restart: unless-stopped
ports:
- "8080:80"
environment:
PMA_HOST: db
PMA_USER: wordpress_user
PMA_PASSWORD: wordpress_password
depends_on:
- db
volumes:
wordpress_data:
db_data:
编辑自定义配置文件:
sudo nano php.ini
#文件内容
; 文件上传相关配置
file_uploads = On
upload_max_filesize = 2048M
post_max_size = 2048M
max_file_uploads = 50
; 性能相关配置
memory_limit = 1024M
max_execution_time = 300
拷贝自定义配置文件到容器:
ubt@ubt:~/docker/wp$ sudo docker cp php.ini wordpress:/usr/local/etc/php/php.ini
重启容器生效!
使用’All-in-One WP Migration’插件迁移数据!需要php.ini设置2048M的上传限制!
更换域名,需要更新数据库
例如:
UPDATE wp_options SET option_value = REPLACE(option_value, '192.168.100.225', '2068.online') WHERE option_name = 'home' OR option_name = 'siteurl'; UPDATE wp_posts SET post_content = REPLACE(post_content, '192.168.100.225' , '2068.online'); UPDATE wp_posts SET guid = REPLACE(guid, '192.168.100.225' ,'2068.online');