动态网站开发
其余项目为有后端的动态页面,每个项目都是由 Docker Compose 的配置文件定义的 Docker Compose 项目,包含一个或多个互相通信的容器。
本地开发
无需配置环境,下载对应平台的 Docker Desktop 后可以在项目根目录下运行
docker compose up -d
根据服务的不同,在 localhost 的不同端口访问。为了更好地贴近生产环境,本地开发时也可以把网关在本地同时运行,然后用 SwitchHosts 等 /etc/hosts
文件修改器将 api, bbs, mail 等子域名的 IP 地址映射到 127.0.0.1,这样在浏览器中输入与服务实际存在的域名相同的地址即可调试本地开发的代码。
自动构建
将代码提交到 master 分支时,GitHub Actions 会对提交代码中定义的各个容器构建镜像,并且上传到 ghcr.io
的 docker registry 上。
部署
首先在服务器 上配置好 docker 和 docker-compose,在本地的 ~/.ssh/config
中配置好 Host 信息(假设 Host 名称为 vultr),然后在项目根目录下运行
DOCKER_HOST="ssh://vultr" docker compose -f docker-compose.yml up -d