WordPress是一个非常流行的网站、博客内容管理系统,很网站都是使用它来创建的内容。本文记录笔者在容器中搭建WordPress的过程。 由于WordPress需要用到Mysql数据库,所以需要安装Mysql

一、下载安装Mysql

由于都是在容器中安装,所以Mysql也是在容器中进行安装,可以使用命令行的方式,也可以使用Cockpit Web页面拉取和创建。

1. 命令行的方式

1sudo podman pull mysql:latest
2sudo podman run --name mysql -p 3308:3306 -e MYSQL_ROOT_PASSWORD=123 -d mysql

2. Cockpit Web页面方式

拉取:

创建:

3. 创建数据库

在安装好数据库后,需要先创建一个用于WordPress的数据库,后面配置WordPress的数据库连接时需要用到。

二、使用官方WordPress镜像

(一)、安装WordPress

同样也可以使用命令行方式和Cockpit Web页面方式。

1. 命令行的方式

1sudo podman pull wordpress:latest
2sudo podman run --name wordpress -p 83:80 -d wordpress

2. Cockpit Web页面方式

需要注意的是使用Cockpit Web页面方式创建后,不能切换到控制台页面,否则会导致容器退出。多次切换到控制台导致退出后,可能无法再启动,只需刷新Cockpit Web页面再启动即可。

(二)、初始化WordPress

在启动好WordPress后,就可以使用浏览器访问WordPress了,第一次访问时,需要进行初始化,进行语言选择、数据库连接选择、站点标题、用户名、密码的设置等等。

1.选择语言

2. 配置数据库

3.设置站点标题、用户名、密码、电子邮件

三、使用带nginx的WordPress镜像

官方镜像是使用的apache作为Web服务的,如果想要使用nginx作为Web服务,可以下载安装docker.io/bitnami/wordpress-nginx:latest

1. 命令行方式

1sudo podman pull docker.io/bitnami/wordpress-nginx:latest
2sudo podman run --name wordpress -p 83:8080 -e WORDPRESS_DATABASE_HOST=10.1.1.6 -e WORDPRESS_DATABASE_PORT_NUMBER=3308 -e WORDPRESS_DATABASE_NAME=wordpress -e WORDPRESS_DATABASE_USER=root -e WORDPRESS_DATABASE_PASSWORD=123 -e WORDPRESS_USERNAME=admin -e WORDPRESS_PASSWORD=admin  -d docker.io/bitnami/wordpress-nginx

需要注意的是该镜像默认的监听端口是8080,而不是官方的80,所以在映射端口时需要把主机的端口映射到容器的8080端口。

另外就是该镜像不会像官方镜像那样可以在Web页面中设置数据库连接,而是需要在创建容器的时候使用环境变量进行设定,否则容器是不能启动的,具体的环境变量可以参考 wordpress-nginx概述

2.Cockpit Web页面方式

3.登录站点

由于在创建容器时并未指定站点的相关信息,都是使用的镜像默认的,可以参考 wordpress-nginx概述中的User and Site configuration

  • WORDPRESS_USERNAME: WordPress 应用程序的用户名. 默认为: user
  • WORDPRESS_PASSWORD: WordPress 应用程序的密码. 默认为: bitnami

当然也可以在创建容器时使用环境变量进行指定。

默认语言为英语,默认时区为UTC+0,从概述中没有看到有环境变量可以设置,需要进入站点修改。

语言改为“简体中文”,时区改为“UTC+8”,“保存更改”即可。