# Teamcity Запискаем докер, когда запускаем докер! Внутренний ТС. Подробнее в (Confluence)[https://confluence.archive.systems/display/PRO/TeamCity] ## Tl;dr Самое главное, что: 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) ## Запуск на локальной машине в исследовательских целях Для этого можно глянуть в [Multiple Compose files](https://docs.docker.com/compose/extends/#understanding-multiple-compose-files) или просто сделать: ```bash docker-compose -f docker-compose.yml -f docker-compose.local.yml up -d ```