Teamcity — это, пожалуй, один и самых любимых мною продуктов JetBrains. Он и удобный, и гибкий, и вообще приятный в работе.
Бывает так, что я хочу попробовать свежую версию и не хочу париться с его настройкой и установкой. Теперь, сделать это проще простого: берём образы Docker и в путь!
Официальные образы лежат тут:
- Server: https://hub.docker.com/r/jetbrains/teamcity-server/
- Agent: https://hub.docker.com/r/jetbrains/teamcity-agent/
Казалось бы, запускать их уже и так просто, куда ещё упрощать?
Как бы не так! Можно проще при помощи docker-compose.
1. Устанавливаем docker-compose из пакетов:
1 |
> sudo apt-get install docker-compose |
2. Создаём каталог ~/test/teamcity
3. Пишем файл docker-compose.yml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
version: '2' services: teamcity-server-instance: image: jetbrains/teamcity-server ports: - "8111:8111" restart: always volumes: - ~/test/teamcity/data:/data/teamcity_server/datadir - ~/test/teamcity/logs:/opt/teamcity/logs networks: - teamcity-network teamcity-agent-instance: image: jetbrains/teamcity-agent restart: always volumes: - ~/test/teamcity/agent-conf:/data/teamcity_agent/conf environment: - SERVER_URL=teamcity-server-instance:8111 networks: - teamcity-network networks: teamcity-network: |
4. Запускаем это всё
1 |
> docker-compose up |
Радостные идём на http://localhost:8111/ тыкать мышкой для дальнейшей установки.
Если вдруг захотите запускать Teamcity в Docker на продакшен серверах, то рекомендую посмотреть тут готовые конфиги с Nginx и PostgreSQL: https://github.com/Egregors/teamcity-docker-compose