Первая стабильно работающая композиция c возможностью запуска сервисов на агентах
This commit is contained in:
1 parent
344c7a3dec
commit
ddcce0ec2c
8 files changed
+155
-31
No files matched your search
@@ -0,0 +1,41 @@
|
||||
# Teamcity
|
||||
|
||||
Запискаем докер, когда запускаем докер!
|
||||
Внутренний ТС. Подробнее в (Confluence)[https://confluence.archive.systems/display/PRO/TeamCity]
|
||||
|
||||
Переименовать в стандартное названия для docker-compose:
|
||||
```bash
|
||||
cp prod.yml docker-compose.yml
|
||||
```
|
||||
|
||||
Запуск:
|
||||
```bash
|
||||
docker-compose build
|
||||
docker-compose up -d --force-recreate
|
||||
```
|
||||
|
||||
## Запуск на локальной машине в исследовательских целях
|
||||
Для нашей версии (3.4) нужно доп. средства:
|
||||
* [pipenv](https://docs.pipenv.org/en/latest/)
|
||||
* [docker-compose addons](https://github.com/dnephin/compose-addons#docker-compose-addons)
|
||||
```bash
|
||||
pipenv install
|
||||
dcao-merge -o docker-compose.yml prod.yml local.yml
|
||||
```
|
||||
и запускаем. Подробнее [тут](https://stackoverflow.com/a/55033027).
|
||||
|
||||
## Разные нюансы compose-файла
|
||||
Самое главное, что:
|
||||
1. прокидываем сокет демона ХОСТА в контеры агентов (docker in docker)
|
||||
2. монтируем агентские рабочие папки из агентов на хост, чтобы демон (см. 1) мог увидеть файлы по относительным путям
|
||||
|
||||
Нельзя использовать ```_``` или ```-``` в названии сервисов! [Docker Compose DNS issues with Team City Agent](https://stackoverflow.com/q/46013774)
|
||||
|
||||
Нужно примаунтить директории, в которые чекаутится проект, чтобы избежать проблемы отсутствия файлов в первом докере (чтобы можно было запускать контейнеры внутри!). Первая ссылка - описание проблемы, вторая - солюшн.
|
||||
* [Using docker compose inside a running container](https://github.com/docker/compose/issues/3918#issuecomment-483969527)
|
||||
* [Unable to start any build step with Docker Wrapper on an agent from official docker image](https://youtrack.jetbrains.com/issue/TW-52017?_ga=2.31155327.1161243431.1566480946-540401972.1563195305)
|
||||
|
||||
Агенты должны делить сеть с хост-машиной, на которой стоит докер-демон, чтобы было возможно
|
||||
обращаться к сервисам по 127.0.0.1. [From inside of a Docker container, how do I connect to the localhost of the machine?](https://stackoverflow.com/a/24326540)
|
||||
|
||||
При этом сеть host надо указать при сборке (требует версию 3.4) [Option network_mode: host in docker compose file not working as expected](https://forums.docker.com/t/option-network-mode-host-in-docker-compose-file-not-working-as-expected/51682).
|
||||
Reference in new issue
Block a user