通常应保留
扩展我试图实现的目标:
- 在将代码提交到本地托管的Git服务器后,Drone管道将在所述服务器上测试、构建并最终部署React项目
限制:
- 我有最小的React&管道经验
- 保持所有内容都在本地托管(Gitea、Drone等(
- KISS,最好是单个管道,构建、部署并在推送新代码后删除以前的容器
- 我看到过类似的指南建议Docker注册中心将容器推送到,但我在实现/指南方面也同样不足
我的不足之处:
- 上述React项目正在建设中,但不确定如何进行部署
当前管道:
# .drone.yml
kind: pipeline
type: docker
name: example-build
trigger:
branch:
- master
event:
- push
steps:
- name: build-static-files
image: node:latest
commands:
- pwd
- whoami
- ls -al /drone
- ls -al /drone/src
- npm i socket.io-client @types/socket.io-client
- chmod 777 -R ./node_modules/
- npm run build
CI管道,以构建映像并将其推送到容器注册表。部署应该通过像GitOps这样的原则来完成。
话虽如此,增加部署步骤也无妨。部署步骤可能因您要部署的位置而异:
例如,使用示例应用程序https://github.com/kameshsampath/drone-fruits-app-demo你可以部署
- Docker Compose可在本地运行和测试-->https://github.com/kameshsampath/drone-fruits-app-demo/blob/main/.drone.compose.yml
- 部署到Kubernetes-->https://github.com/kameshsampath/drone-fruits-app-demo/blob/main/.drone.kind.yml
- 部署到云,例如Google Cloud和vercel.com-->https://github.com/kameshsampath/drone-fruits-app-demo/blob/main/.drone.gcloud.yml
我希望这能给你一些制作管道的想法。