CentOS7部署WordPress


title: CentOS7部署WordPress
categories: Linux
tags:
- WordPress
timezone: Asia/Shanghai
date: 2019-02-25

环境

[root@centos181001 home]# cat /etc/centos-release
CentOS Linux release 7.6.1810 (Core)

方法1:本地安装

第一步:安装Mariadb

MySQL version 5.6 OR MariaDB version 10.0 or greater.

1.设置官方YUM源

cat </etc/yum.repos.d/mariadb.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.3/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
EOF

2.安装并设置开机自动启动

yum install -y MariaDB-server MariaDB-client
systemctl enable mariadb
systemctl start mariadb
systemctl status mariadb

第二步:安装Tengine

1.设置Tengine官方YUM源:CentOS7

curl -o /etc/yum.repos.d/opsx-centos7.repo https://mirrors.aliyun.com/opensource/149994924900000037/opsx/centos7/opsx-centos7.repo
yum clean all       #清理本地缓存
yum clean plugins   #清理插件缓存
yum makecache       #构建缓存

2.安装Tengine并启动

yum install -y tengine
/opt/tengine/sbin/nginx

3.配置文件路径

默认安装路径在:/opt/tengine

# 测试配置文件是否正确
/opt/tengine/sbin/nginx -t

4.优雅的重启(重载配置文件,如果配置文件有错误的话,会继续使用之前配置运行)

/opt/tengine/sbin/nginx -s reload
    -s stop     快速停止
    -s quit     优雅的退出
    -s reopen   重新打开日志文件
    -s reload   重新加载配置文

第三步:下载并安装PHP7.3.2

方法2:Docker方式运行

1.下载需要镜像

docker pull wordpress:5.0.3-php7.1-apache
docker pull mysql:5.7.25

2.启动MySQL容器

docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=xiaoliu -d mysql:5.7.25

3.启动WordPress容器

docker run --name some-wordpress --link some-mysql:mysql -p 8080:80 -d wordpress:5.0.3-php7.1-apache

4.打开以下地址进行Wordpress的初始化

http://11.11.11.61:8080

方法3:Docker下通过docker stack deploydocker-compose

1.编辑wordpress.yml

cat </home/wordpress.yml
version: '3.1'

services:

  wordpress:
    image: wordpress:5.0.3-php7.1-apache
    restart: always
    ports:
      - 8080:80
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: exampleuser
      WORDPRESS_DB_PASSWORD: examplepass
      WORDPRESS_DB_NAME: exampledb

  db:
    image: mysql:5.7.25
    restart: always
    environment:
      MYSQL_DATABASE: exampledb
      MYSQL_USER: exampleuser
      MYSQL_PASSWORD: examplepass
      MYSQL_RANDOM_ROOT_PASSWORD: '1'
EOF

2.运行以下两个命令的任意一个

docker stack deploy -c wordpress.yml wordpress
docker-compose -f wordpress.yml up

3.打开以下地址进行Wordpress的初始化

http://11.11.11.61:8080

附录:Wordpress官方镜像支持的变量

  • -e WORDPRESS_DB_HOST=…(默认为链接mysql容器的IP和端口)
  • -e WORDPRESS_DB_USER=… (默认为“root”)
  • -e WORDPRESS_DB_PASSWORD=…(默认为MYSQL_ROOT_PASSWORD链接mysql容器中环境变量的值)
  • -e WORDPRESS_DB_NAME=… (默认为“wordpress”)
  • -e WORDPRESS_TABLE_PREFIX=… (默认为“”,仅在需要覆盖wp-config.php中的默认表前缀时设置此项)
  • -e WORDPRESS_AUTH_KEY=…,-e WORDPRESS_SECURE_AUTH_KEY=…,-e WORDPRESS_LOGGED_IN_KEY=…,-e WORDPRESS_NONCE_KEY=…,-e WORDPRESS_AUTH_SALT=…,-e WORDPRESS_SECURE_AUTH_SALT=…,-e WORDPRESS_LOGGED_IN_SALT=…,-e WORDPRESS_NONCE_SALT=…(默认为唯一的随机SHA1s)
  • -e WORDPRESS_DEBUG=1(默认为禁用,非空值将使WP_DEBUG在wp-config.php)
  • -e WORDPRESS_CONFIG_EXTRA=…(默认为空,非空值将逐字嵌入wp-config.php- 特别适用于应用此图像默认不提供的额外配置值,例如WP_ALLOW_MULTISITE; 有关详细信息,请参阅docker-library / wordpress#142)

如果WORDPRESS_DB_NAME给定的MySQL服务器上尚未存在指定的,则在启动wordpress容器时将自动创建,只要WORDPRESS_DB_USER指定的具有创建它的必要权限。

你可能感兴趣的:(随笔)