- Исправлены все Dockerfile (удален USER ansible перед CMD) Причина: systemd должен запускаться от root (PID 1) - Исправлены параметры в molecule/default/create.yml (environment → env для модуля community.docker.docker_container) - Добавлен -u root в Makefile для запуска контейнера - Добавлена переменная MOLECULE_EPHEMERAL_DIRECTORY - Удалена роль nginx из deploy.yml (не существует) Автор: Сергей Антропов Сайт: https://devops.org.ru
53 lines
1.5 KiB
Docker
53 lines
1.5 KiB
Docker
# ALT Linux с systemd
|
||
# Автор: Сергей Антропов
|
||
# Сайт: https://devops.org.ru
|
||
# https://hub.docker.com/_/alt/tags
|
||
|
||
FROM alt:p9
|
||
|
||
# Обновляем систему
|
||
RUN apt-get update && apt-get dist-upgrade -y
|
||
|
||
# Устанавливаем systemd и необходимые пакеты
|
||
RUN apt-get install -y \
|
||
systemd \
|
||
dbus \
|
||
curl \
|
||
wget \
|
||
git \
|
||
vim-enhanced \
|
||
nano \
|
||
htop \
|
||
tree \
|
||
jq \
|
||
python3 \
|
||
&& apt-get clean
|
||
|
||
# Устанавливаем pip для Python 3.7
|
||
RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | python3
|
||
|
||
# Устанавливаем yq
|
||
RUN wget -qO /usr/local/bin/yq https://github.com/mikefarah/yq/releases/latest/download/yq_linux_arm64 \
|
||
&& chmod +x /usr/local/bin/yq
|
||
|
||
# Устанавливаем Docker вручную для ALT Linux
|
||
RUN apt-get update && apt-get install -y \
|
||
ca-certificates \
|
||
curl \
|
||
gnupg \
|
||
&& apt-get clean
|
||
|
||
# Устанавливаем 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
|
||
|
||
# Настраиваем systemd
|
||
RUN systemctl set-default multi-user.target
|
||
|
||
# Создаем пользователя для Ansible
|
||
RUN useradd -m -s /bin/bash ansible \
|
||
&& echo "ansible ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
|
||
|
||
# Команда по умолчанию (система запускается от root для systemd)
|
||
CMD ["/sbin/init"]
|