Docker+PostgreSQL 搭建 Typecho
Typecho非常轻量,用Docker提供生产环境最合适不过了。通过以下步骤可便捷的搭建1.2.1版本的Typecho,完成后使用Nginx Proxy Manager
反代一下,体验非常棒!
使用官方镜像搭建
- 步骤如下
# 创建目录
mkdir blog && cd blog
# 创建docker-compose.yml
vim docker-compose.yml
# 启动
docker compose up -d
# 停止
docker compose stop
- docker-compose.yml
services:
typecho:
image: joyqi/typecho:1.2.1-php7.4-apache
container_name: blog-server
restart: always
ports:
- 8080:80
volumes:
- ./app:/app
environment:
TIMEZONE: Asia/Shanghai
TYPECHO_SITE_URL: https://zail.cn
postgres:
image: postgres:alpine
container_name: blog-database
restart: unless-stopped
ports:
- 5433:5432
shm_size: 256mb
volumes:
- ./db:/var/lib/postgresql/data
environment:
TZ: Asia/Shanghai
LANG: C.UTF-8
POSTGRES_DB: blog
POSTGRES_USER: postgres
POSTGRES_PASSWORD: 123456
官方镜像扩展
- 步骤如下
# 创建Dockerfile
cd blog && vim Dockerfile
# 构建本地镜像
docker compose build
- Dockerfile
# 引入官方镜像
FROM joyqi/typecho:1.2.1-php7.4-apache
# 安装 pcntl 扩展
RUN docker-php-ext-install pcntl
- docker-compose.yml
services:
typecho:
build: ./
container_name: blog-server
restart: always
ports:
- 8080:80
volumes:
- ./app:/app
environment:
TIMEZONE: Asia/Shanghai
TYPECHO_SITE_URL: https://zail.cn
postgres:
image: postgres:alpine
container_name: blog-database
restart: unless-stopped
ports:
- 5433:5432
shm_size: 256mb
volumes:
- ./db:/var/lib/postgresql/data
environment:
TZ: Asia/Shanghai
LANG: C.UTF-8
POSTGRES_DB: blog
POSTGRES_USER: postgres
POSTGRES_PASSWORD: 123456
常见问题
- 安装时数据库选
pgsql
,且数据库地址填postgres
- 使用Cloudflare的DNS不能登录
# 编辑config.inc.php,在末尾新增
define('__TYPECHO_SECURE__', true);
- 原版友链插件不支持pgsql,在懵仙兔兔1.2.7版本基础上增加了pgsql支持,点击下载
版权申明
本文系作者 @晏溪 原创发布在晏溪笔记站点。未经许可,禁止转载。
暂无评论数据