Docker-Compose 部署TeamCity CI/CD
准备
docker-compose 配置项目地址: https://github.com/JetBrains/teamcity-docker-samples
teamCity 与teamAgent的docker-compose.yml 配置文件
[[teamcity-docker-samples-master.zip]]
以下docker-compose-ubuntu 为例:
修改配置文件
在这里插入图片描述

.evn 可以把docker-composer配置的静态的属性配置到这个文件夹例,在docker-compose里使用
配置信息
version: '3.1'# Default ${TEAMCITY_VERSION} is defined in .env file# ./buildserver_pgdata - Posgres DB data# ./data_dir - TeamCity data directory# ./teamcity-server-logs - logs of primary TeamCity server# ./agents/agent-1/conf - configuration directory for the first build agent# ./agents/agent-1/conf - configuration directory for the second build agentservices:nginx:db:image: postgres:latestrestart: alwaysenvironment:- POSTGRES_PASSWORD=teamcity_password- POSTGRES_USER=teamcity_user- POSTGRES_DB=teamcity_db- PG_DATA=/var/lib/postgresql/datavolumes:- ./buildserver_pgdata:/var/lib/postgresql/dataports:- 5433:5432teamcity:image: jetbrains/teamcity-server:${TEAMCITY_VERSION}ports:- "8112:8111"volumes:- ./data_dir:/data/teamcity_server/datadir- ./teamcity-server-logs:/opt/teamcity/logsdepends_on:- dbteamcity-agent-1:image: jetbrains/teamcity-agent:${TEAMCITY_VERSION}-linux-sudoprivileged: trueports:- "9000-18000:9000-18000"volumes:- ./agents/agent-1/conf:/data/teamcity_agent/conf- /var/run/docker.sock:/var/run/docker.sock- ./agents/agent-1/work:/opt/buildagent/work- ./agents/agent-1/temp:/opt/buildagent/temp- ./agents/agent-1/system:/opt/buildagent/systemenvironment:- DOCKER_IN_DOCKER=startteamcity-agent-2:image: jetbrains/teamcity-agent:${TEAMCITY_VERSION}-linux-sudoprivileged: trueports:- "9000-18000:9000-18000"volumes:- ./agents/agent-2/conf:/data/teamcity_agent/confenvironment:- DOCKER_IN_DOCKER=start
volumes 配置是把agent的配置和相关的文件使用当前机器的目录,在执行的时候使用的也当前机器的命令。在此之前应该新建这些目录
teamCity 的演示和配置
先新建一个获取git的地址

在构建步骤里添加以下三个步骤

-
maven 打jar包 。新建步骤 选择maven在配置的goals选项填写 “clean package”

-
新建步骤 docker构建镜像。选择docker配置,Docker command选项选这个“build” ;“Path to file: ”选项填写项目内的dockerfile文件路径;“Context folder:”选项填写“/”;“Image name:tag” 选项填写项目镜像的名称和版本号,例如:“demo:latest”

-
再新建步骤,编辑docker启停的命令。新建时选择“Command Line”;
“Working directory:”选项选择项目内的文件夹即可;“Run”选项是选择执行脚本文件还是执行脚本命令,也可以在项目内编辑好docker启停的命令执行,在此处选择的是“Custom script”,下面就会有“Custom script”选项;“Custom script”选项添加docker气体的脚本即可

新建触发器
触发器可以自行定义触发条件,可以为定时触发,分支合并触发,提交日志关键字触发,此处添加的是“@build”提交日志关键字触发

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
