Files
DevOpsLab/Dockerfile-Ubuntu
Sergey Antropoff 357a4c69b5 Добавить docker-compose в образы Ubuntu и CentOS
- Добавлен docker-compose в Dockerfile-Ubuntu
- Добавлен docker-compose в Dockerfile-CentOS
- Docker-compose загружается с официального GitHub репозитория
- Образы теперь поддерживают запуск полноценных сред тестирования
- Возможность запуска docker-compose внутри контейнеров для тестирования

Теперь образы содержат:
- Все системные пакеты для разработки
- Ansible и связанные инструменты
- Docker-compose для оркестрации контейнеров
- Полный набор инструментов для тестирования

Автор: Сергей Антропов
2025-10-21 00:03:30 +03:00

56 lines
1.7 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Сборка контейнера с systemd для удобного тестирования ролей Ansible через Molecule
# Используем готовый образ с Ansible
FROM geerlingguy/docker-ubuntu2204-ansible:latest
# Устанавливаем переменные окружения
ENV DEBIAN_FRONTEND=noninteractive
ENV container=docker
# Устанавливаем дополнительные пакеты для тестирования
RUN apt-get update && \
apt-get install -y --no-install-recommends \
systemd \
systemd-sysv \
rsync \
git \
ssh \
gcc \
libffi-dev \
libssl-dev \
make \
sudo \
sshpass \
openssh-client \
nano \
less \
ca-certificates \
curl \
gnupg \
lsb-release \
&& rm -rf /var/lib/apt/lists/*
# Устанавливаем docker-compose
RUN curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && \
chmod +x /usr/local/bin/docker-compose
# Устанавливаем дополнительные Python пакеты для Ansible
RUN pip install --upgrade pip && \
pip install \
ansible-vault \
molecule \
molecule-docker \
ansible-lint \
yamllint \
docker \
&& rm -rf /root/.cache/pip
# Указываем, что контейнер использует systemd в качестве init-системы
ENV container=docker
STOPSIGNAL SIGRTMIN+3
# Создаем необходимые директории для systemd
VOLUME [ "/sys/fs/cgroup" ]
# Запускаем systemd при старте контейнера
CMD ["/sbin/init"]