У нас есть небольшое внутреннее приложение, которое я должен поддерживать.Это приложение запускает новые Docker-контейнеры и работает на старой версии ruby (2.2) / rails (4.2).
Поскольку невозможно установить эту версию ruby на новую Ubuntu - неверная версия libssl в репозиториях, и я ненашел способ установить старую версию и новую версию параллельно - я решил поместить это приложение в контейнер докера.
Это работает, за исключением случаев, когда я пытаюсь подключить к нему докер-сокет, сервер rails падает при запуске - приложение хочет получить доступ к сокету в течение этого времени для отображения всех запущенных контейнеров.
Я уже убедилсячто группа докеров одинакова для хоста и контейнера с этим:
ARG DOCKER_GROUP_ID
USER root
RUN printf "deb http://archive.debian.org/debian/ jessie main\ndeb-src http://archive.debian.org/debian/ jessie main\ndeb http://security.debian.org jessie/updates main\ndeb-src http://security.debian.org jessie/updates main" > /etc/apt/sources.list
RUN echo "deb http://apt.dockerproject.org/repo debian-jessie main" > /etc/apt/sources.list.d/docker.list
RUN groupadd -g $DOCKER_GROUP_ID docker && usermod -a -G docker root
И во время сборки я передаю этот аргумент:
docker-compose build --build-arg DOCKER_GROUP_ID = getent group docker | cut -d: -f3
Когда я подключаюсь к контейнеру и звоню docker info
Я получаю результат, и контейнер все еще в порядке ...
Есть идеи?