我在詹金斯实施了CI。在每次提交时,它都会构建容器,运行测试然后停止并销毁容器。
docker-compose -p project_name build php
docker-compose -p project_name run --rm php bin/phpunit --group=unit
docker-compose -p project_name stop
docker-compose -p project_name down
可能会发生我将推送一次提交并在一分钟内推送另一次提交。因此第一个容器将在第二个容器启动时运行。
所以,我的问题是:第一个Jenkins任务的停止和停止操作,停止并销毁第一个容器后启动的第二个容器吗?
我应该为每个Jenkins构建使用不同的项目名称,还是可以为所有构建使用相同的项目名称?
谢谢
常见情况,为避免可能的冲突,请在项目名称中包含提交ID或任何其他唯一标识符。我们使用gitlab进行以下配置:
docker-compose -p "myproject-${CI_JOB_NAME}" ... up --force-recreate --remove-orphans