mirror of
https://github.com/setube/ogame-vue-ts.git
synced 2026-05-11 23:45:11 +08:00
- 重构 Dockerfile 支持本地完整源码构建流程 - 添加 CI 专用的 Dockerfile.ci 使用预构建产物 - 创建 .dockerignore 和 .dockerignore.ci 文件优化构建上下文 - 添加 build-docker.sh 和 build-docker.bat 本地构建脚本 - 更新 GitHub Actions 工作流支持 Node.js 环境和 pnpm 依赖管理 - 添加 DOCKER.md 详细说明文档 - 优化 nginx 配置和端口暴露设置
2.0 KiB
2.0 KiB
Docker 构建说明
本项目支持两种 Docker 构建方式:
🏠 本地构建
方式一:使用构建脚本(推荐)
Linux/macOS:
chmod +x build-docker.sh
./build-docker.sh
Windows:
build-docker.bat
方式二:直接使用 Docker 命令
# 构建镜像
docker build -t ogame-vue-ts:local .
# 运行容器
docker run -p 8080:80 ogame-vue-ts:local
☁️ GitHub Actions 自动构建
当代码推送到 main 分支或创建 tag 时,GitHub Actions 会自动:
- 在 Actions 环境中构建项目
- 使用构建产物创建 Docker 镜像
- 推送到 GitHub Container Registry 和 Docker Hub
使用预构建镜像
# 从 GitHub Container Registry 拉取
docker pull ghcr.io/your-username/ogame-vue-ts:latest
# 从 Docker Hub 拉取(如果配置了)
docker pull your-dockerhub-username/ogame-vue-ts:latest
# 运行
docker run -p 8080:80 ghcr.io/your-username/ogame-vue-ts:latest
📁 文件说明
Dockerfile- 本地构建用,包含完整的源代码构建流程Dockerfile.ci- GitHub Actions 构建用,使用预构建产物.dockerignore- 本地构建时排除的文件.dockerignore.ci- CI 构建时排除的文件build-docker.sh/build-docker.bat- 本地构建便捷脚本
🔧 配置说明
GitHub Actions 环境变量
需要在 GitHub 仓库设置中配置:
Variables (公开):
DOCKERHUB_USERNAME- Docker Hub 用户名(可选)
Secrets (私密):
DOCKERHUB_TOKEN- Docker Hub 访问令牌(可选)GITHUB_TOKEN- 自动提供,用于 GHCR
本地构建要求
- Docker
- 足够的磁盘空间(构建过程中会下载 Node.js 依赖)
🚀 快速开始
-
本地开发测试:
./build-docker.sh docker run -p 8080:80 ogame-vue-ts:local -
访问应用: 打开浏览器访问
http://localhost:8080 -
生产部署: 使用 GitHub Actions 自动构建的镜像进行部署