目录

Wordpress

安装

wordpress 配置

创建项目文件夹 mkdir -p ~/services/bits && cd ~/services/bits

创建配置文件 nano .env

内容为

MYSQL_DATABASE=wordpress
MYSQL_USER=wordpress
MYSQL_PASSWORD=数据库密码
MYSQL_ROOT_PASSWORD=数据库root密码

创建 Docker copmose.yml 文件,包含 wordpress 容器 bits-wordpress 和数据库容器 bits-db

services:
  wordpress:
    image: wordpress:latest
    container_name: bits-wordpress
    restart: unless-stopped
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_NAME: ${MYSQL_DATABASE}
      WORDPRESS_DB_USER: ${MYSQL_USER}
      WORDPRESS_DB_PASSWORD: ${MYSQL_PASSWORD}
    volumes:
      - ./wordpress:/var/www/html
    networks:
      - web
      - bits-net-int

  db:
    image: mariadb:11
    container_name: bits-db
    restart: unless-stopped
    environment:
      MARIADB_DATABASE: ${MYSQL_DATABASE}
      MARIADB_USER: ${MYSQL_USER}
      MARIADB_PASSWORD: ${MYSQL_PASSWORD}
      MARIADB_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
    volumes:
      - ./db:/var/lib/mysql
    networks:
      - bits-net-int

networks:
  web:
    external: true
  bits-net-int:
    internal: true

运行

docker compose up -d

caddy 配置

nano ~/services/caddy/Caddyfile

在文件中添加

bits.xiaobenmao.win {
  reverse_proxy bits-wordpress:80
}

重启 caddy

cd ~/services/caddy && docker compose restart

大功告成

可以进入网页配置默认账号了

连接 Authentik

搜索安装 OpenID Connect Generic Client 插件并启用。

在 Authentik 管理页面中添加 provider 和 application

在 WordPress 设置 - OpenID Connect Client 里对应配置 login type、client ID、client secret、openID scope、login endpoint、userinfo endpoint、token validation endpoint、end session endpoint、JKWS URI、issuer、identity key、nickname key、email formatting。也可以通过 discovery URL 自动填入,只需将 Authentik provider 的 OpenID Configuration URL 粘贴进 Discovery URL 一栏即可。