在一台服务器上,安装wordpress是一件糟心的事情,尤其是你对php不熟悉,对数据库不太懂的情况下。如果中间没有安装好,也许还会残留很多的垃圾文件。所以使用docker安装wordpress是一个好的选择。
准备
一台ubuntu服务器,其它的linux系统大致差不多;
一个docker compose的配置文件;
一个uploads.ini的配置文件
安装docker
首先卸载一些可能会冲突的软件包
for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done
更新apt软件包索引
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
添加 Docker 的官方 GPG 密钥:
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
使用以下命令设置存储库:
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
再次更新 apt
包索引:
sudo apt-get update
安装最新的 Docker 引擎、containerd 和 Docker Compose。
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
测试一下
sudo docker run hello-world
如果显示下面的,就说明成功了
Hello from Docker!
This message shows that your installation appears to be working correctly.
安装wordpress
mkdir一个目录并进入
mkdir docker-wp && cd docker-wp
vim docker-compose.yaml
准备一个docker compose的配置文件
version: "3"
services:
db:
image: mysql/mysql-server
command: mysqld --max_allowed_packet=20M
volumes:
- ./mysql:/var/lib/mysql
ports:
- "13306:3306"
restart: always
environment:
MYSQL_ROOT_PASSWORD: changeyourpassword
MYSQL_DATABASE: itc_wp
MYSQL_USER: itc_user
MYSQL_PASSWORD: changeyourpassword
wordpress:
depends_on:
- db
image: wordpress:latest
volumes:
- ./config/uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
- ./html:/var/www/html
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: itc_user
WORDPRESS_DB_PASSWORD: changeyourpassword
WORDPRESS_DB_NAME: itc_wp
新建一个config目录,进入目录中建立一个uploads.ini的文件
sudo mkdir config && cd config
vim upload.ini
file_uploads = On
memory_limit = 1024M
upload_max_filesize = 2048M #可以上传2g的文件,如视频
post_max_size = 2048M
max_execution_time = 600
现在,回到 docker-wp 目录(就是docker-compose.yaml所在的目录),准备启动docker compose.
docker compose up -d
好,现在访问http://yourip:8000,就可以看到wordpress的设置页面了。