- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经使用 gitlab 和 docker 构建了一个 CI/CD。在我的 gitlab-ci.yml 中,我只是编写命令来构建和启动容器以运行测试,仅此而已。
现在我正在寻找一种方法来用 GOCD ci/cd 服务器做同样的事情。但是gocd的官方文档是直接来kubernetees或者Docker in Docker或者Docker outside的。我不需要这个。
我有一个 GOCD 服务器和两个 GOCD 代理。
我想构建并运行一个容器并可能部署它。我找不到在 GOCD 上制作具有三个阶段的管道的简单教程:
最佳答案
最后,我能够自己让它工作,这里有以下步骤:
在每个 gocd-agent 上手动添加指纹主机,您必须以 go 用户身份连接(或者不要忘记将正确的所有者设置为 known_hosts 文件):
ssh-keyscan -H your.repository.com >> /var/go/.ssh/known_hosts
创建管道
创建一个舞台
创造一个工作
创建一个或多个任务
--> 添加一个新任务 -> 选择“更多”,你将有可能添加一个自定义命令
此时,你可以在单元格中添加“命令”
/usr/bin/docker
或(取决于您的用例)
/usr/local/bin/docker-compose
在参数列表中,一行一个参数
build
.
-f
dockerfile
-t
yourrepository/tagOfYourImage
之后,不要忘记在每次运行之前和之后清理您的容器和创建的图像。您还可以在单元格“命令”中使用“/bin/bash”,然后使用两个参数
-c
"/usr/bin/docker rmi $(/usr/bin/docker image ls|/usr/bin/grep server_php|/usr/bin/awk '{ print $3 }'|/usr/bin/tr '\r' ' ') --force||true"
如果您希望所有作业在每个代理上都成功,请不要忘记在“作业设置”选项卡中选择“在所有代理上运行”选项。
如果您重新启动 docker 服务或您的代理之一,它将删除/var/run/docker.sock 上的 666 权限,将用户添加到组 docker 对我没有帮助。我必须再次为这个文件设置666权限。
关于docker - 使用 gocd CI/CD 运行 docker 容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60503946/
我需要在 GoCD、docker 和 GitHub 存储库中测量我的持续集成环境的性能。您能否向我推荐用于评估的 ant 指标。如果您向我推荐如何应用这些指标,那也很棒。 先感谢您 最佳答案 基本上有
我的管道有多种git Material ,这迫使我添加工作目录。由于gradle插件没有工作目录,因此找不到gradlew或build.gradle。 有没有办法解决这个问题。 最佳答案 您可以在Go
在 GOCD 中,我们能够为整个管道、阶段和单个作业定义环境变量和参数。运行管道时是否可以通过作业中的任务更新那些已经定义的环境变量和参数? 最佳答案 您想永久更新它们还是仅针对特定执行更新它们? 如
似乎无法更改 GoCD 中任何位置的现有管道的名称。听起来很简单,有没有什么方法可以重命名 GoCD 管道,而不需要在 UI 中执行一系列长操作? 我能够重命名管道的唯一方法是将其克隆到新名称,然后删
正如标题所说,我们如何以彩色显示 PowerShell 脚本的控制台输出?我们使用的是 GoCD v16.12。 编辑:根据公司政策,我们不允许使用 write-host。请不要问为什么:) 最佳答案
当尝试使用 Go Server docker 镜像在 GoCD 中创建管道时,我的更改请求被拒绝。 要启动服务器,我运行命令: docker run --name gocd_server -d -p
我正在尝试在 GoCD 中将 shell 脚本作为任务运行,但该脚本似乎没有执行某些命令的 root 权限。 最佳答案 首先,您需要非常小心,以 root 身份运行命令非常危险。如果您真的必须这样做,
我创建了一个新的 gocd 管道 并且有三个 shell 脚本 文件在不同的阶段运行。 问题是 go agent 不知道 npm。 注意:我在带有 go agent 的机器上安装了 npm,我从管道手
我已经使用 gitlab 和 docker 构建了一个 CI/CD。在我的 gitlab-ci.yml 中,我只是编写命令来构建和启动容器以运行测试,仅此而已。 现在我正在寻找一种方法来用 GOCD
我正在尝试使用 sudo yum install -y go-agent 安装 GoCD 代理 但是,我收到以下错误。 Resolving Dependencies --> Running trans
使用 GoCD,如何为下一阶段定义阶段的整个工作区(作为单个工件)?这将大大简化我的设置,其中第二阶段需要从前一阶段获取许多不同的工件。 我尝试了以下工件声明: 神器来源 = . 这会在第一阶段的上传
我正在尝试在容器站的 QNAP(基于 TS-451 x86,固件 4.2.0)上运行 gocd docker 容器(https://hub.docker.com/r/gocd/gocd-server/
我有一个 git 存储库,它使用 SSH key 对用户进行身份验证,我想将该存储库用作 GoCD Material 。 GoCD 给我这个错误: Error performing command:
我是一名优秀的程序员,十分优秀!