Argo CD+GHCR+MCP的单一回购示例应用程序
此repo演示了:
- 单一回购 应用程序代码+k8s清单(kustomize)
- GitHub Actions构建更改后的服务并将图像推送到 GHCR
- 工作流更新中的图像标签 这个仓库Argo CD同步
- Argo CD
Application指向deploy/overlays/prod - Argo CD的可选MCP服务器(在IDE中使用)
快速开始
- 替换占位符
- 在 argocd/application.yaml,更改 https://github.com/eknathdj/argocd-mcdp-gitops.git 到您的repo URL。
- 推送到GitHub (分支
main).
- 确保GHCR正常工作\
默认情况下,工作流通过以下方式登录GHCR ${{ secrets.GITHUB_TOKEN }} 这通常就足够了。如果您的组织需要PAT,请创建 GHCR_TOKEN 随着 packages:write 范围并更改登录步骤。
- 安装Argo CD 在您的集群上(如果还没有)。
- 应用Argo CD应用程序
kubectl apply -n argocd -f argocd/application.yaml- 触发工作流 通过在以下情况下进行更改
services/*.
Argo CD将开始播放 deploy/overlays/prod 并部署到命名空间 app.
- 访问应用程序 在
http://app.127.0.0.1.nip.io(入口等级:nginx).
Dev和Prod覆盖
deploy/overlays/dev设置主机app.dev.127.0.0.1.nip.iodeploy/overlays/prod设置主机app.127.0.0.1.nip.io
Argo CD的MCP(可选)
创建 .vscode/mcp.json (或光标等效物):
{
"servers": {
"argocd-mcp-stdio": {
"type": "stdio",
"command": "npx",
"args": ["argocd-mcp@latest", "stdio"],
"env": {
"ARGOCD_BASE_URL": "https://your-argocd.example.com",
"ARGOCD_API_TOKEN": "REDACTED"
}
}
}
}添加新服务
- 创建
services//Dockerfile和代码。 - 在中添加部署/服务
deploy/base并将图像包含在deploy/base/kustomization.yaml. - 提交——CI将在以下情况下发生更改时构建它
services//.
