文章目录
Github
官网
简介
WordPress 是一个开源的内容管理系统 (CMS),最初设计用于博客发布,但随着时间的推移,它已经发展成一个功能强大、灵活性高的网站构建工具。它是世界上最流行的网站建设平台之一,被全球数百万个网站使用,从个人博客到大型企业网站。
Docker 部署
MySQL
# 拉取 mysql8 镜像
docker pull mysql:8.0
- 创建缩主机 MySQL 目录
cd /home
mkdir mysql && cd mysql
mkdir conf data logs
my.cnf
在缩主机 /home/mysql/conf 目录下创建 my.cnf。
[mysqld]
skip-host-cache
skip-name-resolve
datadir=/var/lib/mysql
socket=/var/run/mysqld/mysqld.sock
secure-file-priv=/var/lib/mysql-files
user=mysql
# MySQL监听端口
port=3306
# MySQL绑定IP
# bind_address=127.0.0.1
# 生成日志
general_log=1
general_log_file=/var/log/mysql/mysql.log
# 无论是否超时,未被索引的记录也会记录下来
log_queries_not_using_indexes=1
# 全局开启慢查询功能
slow_query_log=1
# 慢查询阈值(秒),SQL 执行超过这个阈值将被记录在日志中
long_query_time=1
# 慢查询仅记录扫描行数大于此参数的 SQL
min_examined_row_limit=500
# 指定慢查询日志存储文件的地址和文件名
slow_query_log_file=/var/log/mysql/slow.log
# 错误日志
log_error=/var/log/mysql/error.log
log_error_verbosity = 3
# 取消 ONLY_FULL_GROUP_BY
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'
# 开启定时事件
event_scheduler=1
# 表名大小写不敏感
lower_case_table_names=1
# 设置字符集
character_set_server=utf8mb4
collation_server=utf8mb4_bin
# 默认使用的存储引擎
default_storage_engine=InnoDB
[client]
socket=/var/run/mysqld/mysqld.sock
default_character_set=utf8mb4
开启 binlog
[mysqld]
# binlog功能
log_bin=/var/lib/mysql/mysql-bin
# binlog 文件格式
binlog_format=ROW
# 表无论有没有主键约束或者唯一约束binlog都会记录所有前后镜像
binlog_row_image=FULL
# binlog 文件保留时间7天(默认0天)
expire_logs_days=7
# binlog 单个文件的最大值大小(默认1G)
max_binlog_size=512m
# 开启 binlog 后需要创建 function 或 procedure 时要开启
log_bin_trust_function_creators=1
# 服务id,以区分主库和备库
server-id=1
wordpress
# 拉取 wordpress 镜像
docker pull wordpress
项目源码
# 运行 wordpress 服务
docker run -d --name wordpress wordpress
# 拷贝 html 项目源码文件夹到缩主机
docker cp wordpress:/var/www/html ./
# 修改 html 项目源码文件夹为 wordpress
mv html wordpress
docker-compose.yml
cd /home
# 创建 docker-compose.yml
vim docker-compose.yml
services:
wordpress:
image: wordpress
container_name: wordpress
restart: always
ports:
- 8080:80
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_NAME: wordpress
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: 'DwIzp05BdKp7Bdmf'
volumes:
- /etc/localtime:/etc/localtime
- /home/wordpress:/var/www/html
depends_on:
- db
db:
image: mysql:8.0
container_name: mysql
restart: always
ports:
- 3306:3306
environment:
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: 'DwIzp05BdKp7Bdmf'
MYSQL_ROOT_PASSWORD: '4NuMDwIzp05BdKp7Bdmf'
volumes:
- /etc/localtime:/etc/localtime
- /home/mysql/data:/var/lib/mysql
- /home/mysql/conf:/etc/mysql/conf.d
- /home/mysql/logs:/var/log/mysql
- 部署 MySQL 与 WordPress
docker-compose up -d wordpress
WordPress 基本使用
进入安装向导完成 WordPress 初始化。
安装主题