Docker搭建 Nginx+PHP+MySQL 环境并部署WordPress实践

2020-06-17 06:37:18易采站长站整理

port = 3306
user = mysql
default-storage-engine = InnoDB
socket = /home/docker/mysql/mysql.sock
pid-file = /home/docker/mysql/mysql.pid
skip-name-resolve

# MyISAM #
key-buffer-size = 32M

# INNODB #
#innodb-flush-method = O_DIRECT
innodb-log-files-in-group = 2
innodb-log-file-size = 64M
innodb-flush-log-at-trx-commit = 2
innodb-file-per-table = 1
innodb-buffer-pool-size = 1G

# CACHES AND LIMITS #
tmp-table-size = 32M
max-heap-table-size = 32M
query-cache-type = 0
query-cache-size = 0
max-connections = 300
thread-cache-size = 50
open-files-limit = 1024
table-definition-cache = 100
table-open-cache = 400

# SAFETY #
max-allowed-packet = 16M
max-connect-errors = 1000000

# DATA STORAGE #
datadir = /home/docker/mysql

# LOGGING #
log-error = /home/docker/mysql/mysql-error.log
log-queries-not-using-indexes = 1
slow-query-log = 1
slow-query-log-file = /home/docker/mysql/mysql-slow.log

# BINARY LOGGING #
log-bin = /home/docker/mysql/mysql-bin
server-id = 1
expire-logs-days = 14
sync-binlog = 1

构建镜像

把上一步创建的文件推送到阿里云的Kelude。然后我们登录阿里云的docker镜像仓库cr.console.aliyun.com。这里以设置自动构建nginx镜像为例,php和mysql镜像构建设置类似。

1.点击左侧“镜像列表”,在右侧点击仓库镜像,如图:

2.在仓库镜像创建对话框中,说明如下:

地域:选择离部署docker主机最近的位置,国内的话选择华东1或华东2。

Namespace和仓库名称:这里选择centos-bz,nginx。

设置代码源:我们这里选择阿里云code。

构建设置:勾选代码变更时自动构建镜像,海外机器构建(因为国内主机apt-get安装软件时较慢),Dockerfile路径填/centos.bz/nginx

完成后点击创建仓库按钮。

如图:

3.回到镜像列表,找到nginx镜像,点击管理。

4.左侧点击“构建”,右侧点击“立即构建”开始首次构建,之后我们更改Dockerfile及配置文件到Kelude之后就会自动构建了。

5.查看日志,查看构建进程。

然后继续完成php,mysql的镜像构建设置。

启动环境

为了方便统一管理nginx,php,mysql的启动,我们使用docker-compose工具。我们只需要编写一个docker-compose.yml文件,然后使用docker-compose工具就可以快速启动docker容器了。之后把docker-compose.yml传输到任意一台支持docker环境的主机中就可以快速配置wordpress的运行环境。

docker-compose.yml