如何将 Docker 运行 配置为 teamcity 中的构建步骤?
How to configure Docker run as build step in teamcity?
我是 docker 以及 team city 的初学者,我为 docker 容器的构建设置了管道,并希望将其配置为 运行 成功构建后,我尝试使用带有 docker 的步骤,但他们建议使用带有可执行参数的命令行和带有 docker 套接字的某种方式,我通过互联网/YouTube 没有看到在构建后启动容器的正常示例。我看到了一些与代理一起启动的示例,但我还是对所写的内容一无所知,我在 YouTube 上查找示例,但也没有找到。请举例说明 运行ning docker 作为 Linux.
管道中的一个步骤
我通过应用以下内容解决了我对 Jenkins 的类似要求..
在您的项目中添加一个 shell 文件(例如 run.sh)。那里有 docker 运行 命令,您将从命令行添加 > /dev/null 2>&1 & 以便进程可以在后台 运行 并且 O/P 流为空。
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag > /dev/null 2>&1 &
然后在你的 Jenkins (Teamcity) 脚本中添加一个 sh 步骤到 运行 这个文件
steps {
dir (whatever-dir-run.sh-is-in) {
sh "JENKINS_NODE_COOKIE=dontKillMe sh run.sh"
}
}
注意:如果 JENKINS_NODE_COOKIE 在 Teamcity 中有等效项,请使用它。
我是 docker 以及 team city 的初学者,我为 docker 容器的构建设置了管道,并希望将其配置为 运行 成功构建后,我尝试使用带有 docker 的步骤,但他们建议使用带有可执行参数的命令行和带有 docker 套接字的某种方式,我通过互联网/YouTube 没有看到在构建后启动容器的正常示例。我看到了一些与代理一起启动的示例,但我还是对所写的内容一无所知,我在 YouTube 上查找示例,但也没有找到。请举例说明 运行ning docker 作为 Linux.
管道中的一个步骤我通过应用以下内容解决了我对 Jenkins 的类似要求..
在您的项目中添加一个 shell 文件(例如 run.sh)。那里有 docker 运行 命令,您将从命令行添加 > /dev/null 2>&1 & 以便进程可以在后台 运行 并且 O/P 流为空。
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag > /dev/null 2>&1 &
然后在你的 Jenkins (Teamcity) 脚本中添加一个 sh 步骤到 运行 这个文件
steps {
dir (whatever-dir-run.sh-is-in) {
sh "JENKINS_NODE_COOKIE=dontKillMe sh run.sh"
}
}
注意:如果 JENKINS_NODE_COOKIE 在 Teamcity 中有等效项,请使用它。