2.7 KiB
2.7 KiB
部署说明
镜像地址
ghcr.io/zhengchentao/ezbookkeeping:latest
每次向 myrequirement 分支推送代码,GitHub Actions 自动构建并推送新镜像。
首次迁移(从官方镜像换成自定义镜像)
1. 备份容器内配置文件到宿主机
sudo docker cp ezbookkeeping:/ezbookkeeping/conf/ezbookkeeping.ini /opt/ezbookkeeping/ezbookkeeping.ini
这样之后删容器也不会丢配置。
2. 停止并删除旧容器
docker stop ezbookkeeping && docker rm ezbookkeeping
只删容器本身,数据目录不受影响。
3. 登录 GitHub Container Registry(只需一次)
在 GitHub → Settings → Developer settings → Personal access tokens → Tokens (classic) 生成 token,勾选 read:packages,然后:
echo 你的TOKEN | docker login ghcr.io -u zhengchentao --password-stdin
4. 拉取新镜像
docker pull ghcr.io/zhengchentao/ezbookkeeping:latest
5. 启动容器
docker run -d \
--name ezbookkeeping \
--restart unless-stopped \
-p 8080:8080 \
-v /opt/ezbookkeeping/data:/ezbookkeeping/data \
-v /opt/ezbookkeeping/ezbookkeeping.ini:/ezbookkeeping/conf/ezbookkeeping.ini \
-e EBK_MCP_ENABLE_MCP=true \
-e EBK_SECURITY_ENABLE_API_TOKEN=true \
ghcr.io/zhengchentao/ezbookkeeping:latest
参数说明:
| 参数 | 含义 |
|---|---|
-d |
后台运行 |
--restart unless-stopped |
服务器重启后自动启动 |
-p 8080:8080 |
端口映射 |
-v .../data:... |
挂载数据目录(数据库、图片等) |
-v .../ezbookkeeping.ini:... |
挂载配置文件 |
-e EBK_* |
环境变量覆盖配置 |
6. 确认运行正常
docker ps # 确认容器在运行
docker logs ezbookkeeping # 查看启动日志,确认无报错
后续更新(代码有改动时)
# 拉取最新镜像
docker pull ghcr.io/zhengchentao/ezbookkeeping:latest
# 停止并删除旧容器
docker stop ezbookkeeping && docker rm ezbookkeeping
# 重新启动(与首次启动命令相同)
docker run -d \
--name ezbookkeeping \
--restart unless-stopped \
-p 8080:8080 \
-v /opt/ezbookkeeping/data:/ezbookkeeping/data \
-v /opt/ezbookkeeping/ezbookkeeping.ini:/ezbookkeeping/conf/ezbookkeeping.ini \
-e EBK_MCP_ENABLE_MCP=true \
-e EBK_SECURITY_ENABLE_API_TOKEN=true \
ghcr.io/zhengchentao/ezbookkeeping:latest
常用运维命令
# 查看运行中的容器
docker ps
# 查看容器实时日志(Ctrl+C 退出)
docker logs -f ezbookkeeping
# 进入容器内部排查问题
docker exec -it ezbookkeeping sh
# 查看磁盘占用
docker system df