我使用Docker容器中的Jenkins.我想在Jenkins管道中构建docker镜像,但这个容器(Jenkins)中不存在docker.
由Docker Compose部署的Jenkins容器,yml文件:
version: "3.3"
services:
jenkins:
image: jenkins:alpine
ports:
- 8085:8080
volumes:
- ./FOR_JENKINS:/var/jenkins_home
Run Code Online (Sandbox Code Playgroud)
我们可以做些什么来在Jenkins管道中构建docker镜像?我们可以使用docker部署一些docker容器并使用一次构建docker镜像吗?或者是其他东西?你是怎么做的?
编辑:
谢谢@VonC,我检查了你的信息,但......"许可被拒绝"
Docker撰写文件:
version: "3.3"
services:
jenkins:
image: jenkins:alpine
ports:
- 8085:8080
volumes:
- ./FOR_JENKINS:/var/jenkins_home
# - /var/run/docker.sock:/var/run/docker.sock:rw
- /var/run:/var/run:rw
Run Code Online (Sandbox Code Playgroud)
Jenkinsfile:
pipeline {
agent any
stages {
stage('Build') {
steps {
echo "Compiling..."
sh "${tool name: 'sbt', type: 'org.jvnet.hudson.plugins.SbtPluginBuilder$SbtInstallation'}/bin/sbt compile"
}
}
/*stage('Unit Test') {
steps {
echo "Testing..."
sh "${tool name: 'sbt', type: 'org.jvnet.hudson.plugins.SbtPluginBuilder$SbtInstallation'}/bin/sbt coverage 'test-only * -- -F 4'"
sh "${tool name: …Run Code Online (Sandbox Code Playgroud) 我们可以在 Docker 撰写文件 YML 中使用模板吗?
例如,我想要部署带有复制的服务,并且我想要为容器设置名称,例如:-servicename-_-replicId-