CaptainDuckDuck 升级迁移
注意:只有当你想把 CaptainDuckDuck 服务器升级到 CapRover 时,才需要阅读本节。
迁移脚本
只需要运行 这个脚本,即可将 CaptainDuckDuck 服务器升级到 CapRover。脚本会自动备份你的配置目录 /captain,以便在出现问题时回滚。
要迁移,只需运行以下命令:
wget https://raw.githubusercontent.com/caprover/caprover/master/dev-scripts/migrate-from-cdd.sh
chmod +x migrate-from-cdd.sh
./migrate-from-cdd.sh迁移提示:
请确保磁盘空间足够。CapRover 镜像大约 400MB,并且脚本会自动备份配置目录。
未启用自建 Registry
服务器大约有 1.5GB 可用空间通常就足够了。
启用了自建 Registry
自建 Registry 可能会占用很多 GB 的磁盘空间。由于迁移脚本会自动备份配置目录,你在升级过程中可能会遇到磁盘空间不足的问题。
为了节省空间,如果你启用了自建 Registry,有两个选择:
- 你可以手动编辑迁移脚本,移除备份那一行(
tar -cvf /captain-bk-$(date +%Y_%m_%d_%H_%M_%S).tar /captain)。 - 或者,你可以运行
rm -rf /captain/registry/*删除 Registry 的全部内容(它会占用大量磁盘空间)。注意:执行该操作后,你需要重新部署应用,其他节点才能访问镜像;如果你只有一个节点,则无需额外操作。
从 CaptainDuckDuck 升级到 CapRover 的破坏性变更:
captain-definition文件的schemaVersion已改为2。- 如果你之前需要把某个应用的自定义端口改成非 80 端口,现在不再需要修改 NGINX 配置,你只需在 UI 里把容器端口设置为任意端口即可。
- 如果你之前使用自定义
dockerfileLines,并且把所有ADD/COPY语句都加上了./src前缀,在 CapRover 里不再需要这样做。例如,你以前可能写过:
COPY ./src/package.json /usr/app/在 CapRover 中你应该改为:
COPY ./package.json /usr/app/