Jenkins 使用不同的 compose 文件启动相同的 docker 容器

Jenkins start same docker container with different compose files

我是 Jenkins 的新手,我有一个项目,但我需要它的几个实例,具有不同的配置,意思是 运行 不同的 docker-compose 文件,由于安装/端口不同,但项目的其余部分是相同的。

我找不到关于此类问题的任何信息。

如果有帮助: 詹金斯档案:

pipeline {
agent any

environment {
    PATH = "$PATH:/usr/local/bin"
}

stages {
    stage("build docker image"){   
        steps{
            sh """
                docker build . -t application:development --pull=false 
            """
        }
    }
    stage("run compose"){
        steps{
            sh"""
            docker-compose up -d
            """
        }
    }
}

是的!这个有可能。 您需要创建 2 个具有不同配置的 docker-compose 文件。
例如:
docker-撰写-a.yml
docker-撰写-b.yml
那么:

pipeline {
agent any

environment {
    PATH = "$PATH:/usr/local/bin"
}

stages {
    stage("build docker image"){   
        steps{
            sh """
                docker build . -t application:development --pull=false 
            """
        }
    }
    stage("run compose"){
        steps{
            sh"""
            docker-compose up -f docker-compose-a.yml -d
            docker-compose up -f docker-compose-b.yml -d
            """
        }
    }
}