环境要求:

  1. 服务器已安装 Docker。
  2. 服务器网络畅通(能正常从 Docker Hub 拉取镜像,或已开启代理)。
  3. 已确保 80 端口和 443 端口未被其他程序(如宿主机的 Nginx)占用。

第一步:创建挂载目录并清理历史容器

启动前,建立好挂载目录以保存核心配置、上传的附件和备份。

# 强杀可能冲突的旧容器
docker rm -f typecho 2>/dev/null

# 创建宿主机挂载目录
mkdir -p /srv/myblog/home
chmod -R 777 /srv/myblog/home

第二步:启动 Typecho 容器

使用内置 SSL 和时区配置的优选镜像 rehiy/typecho

docker run -d \
  --name typecho \
  --restart always \
  -p 80:80 -p 443:443 \
  -e TZ=Asia/Shanghai \
  -v /srv/myblog/home:/var/www/default/usr/home \
  rehiy/typecho

第三步:完成网页端初始化安装

  1. 浏览器访问:http://你的服务器IP
  2. 数据库类型选择:SQLite 3
  3. 其余保持默认,设置管理员账号密码,点击安装完成。

第四步:安装 TypechoGlass 主题(关键防坑点)

避坑说明:
很多人以为把主题放在宿主机的挂载目录 /srv/myblog/home/themes 就可以了,但在 rehiy/typecho 这个镜像中,真正的主题读取路径被硬编码在了容器内部的 /var/www/default/usr/themes,且未挂载出来。因此,必须将主题直接拷贝进容器内部!

1. 下载主题源码到服务器宿主机

cd /root
git clone https://github.com/Sandro-Z/TypechoGlass.git

2. 将主题直接塞进容器真实的读取路径

docker cp /root/TypechoGlass typecho:/var/www/default/usr/themes/TypechoGlass

3. 修复权限(必须执行,否则后台不显示)

由于该镜像内的服务运行账户是 bin:bin,必须将拷贝进去的主题拥有权移交给 bin

docker exec typecho chown -R bin:bin /var/www/default/usr/themes/TypechoGlass
docker exec typecho chmod -R 755 /var/www/default/usr/themes/TypechoGlass

第五步:在后台启用主题

  1. 登录博客后台:http://你的服务器IP/admin
  2. 点击侧边栏的 控制台 -> 外观
  3. 找到 TypechoGlass 主题,点击 “启用”
  4. (可选) 点击该主题下方的“设置外观”,配置你的头像、背景图等信息。

搞定!享受你的博客吧!