41 lines
827 B
Docker
41 lines
827 B
Docker
# alpine version
|
|
FROM alpine:3.16
|
|
|
|
|
|
# software versions
|
|
ENV ANSIBLE_VERSION=2.12.10
|
|
ENV ANSIBLE_LINT_VERSION=6.14.3
|
|
ENV YAML_LINT_VERSION=1.29.0
|
|
|
|
|
|
# install software
|
|
RUN apk update
|
|
RUN apk add --no-cache \
|
|
build-base \
|
|
ca-certificates \
|
|
git \
|
|
libffi-dev \
|
|
openssh \
|
|
python3 \
|
|
python3-dev \
|
|
py3-pip
|
|
|
|
|
|
# cleanup
|
|
RUN rm -rf /var/cache/apk/*
|
|
|
|
|
|
# install ansible + linters
|
|
RUN pip3 install --upgrade pip
|
|
RUN pip3 install --use-pep517 --ignore-installed \
|
|
ansible-core==${ANSIBLE_VERSION} \
|
|
ansible-lint==${ANSIBLE_LINT_VERSION} \
|
|
yamllint==${YAML_LINT_VERSION}
|
|
|
|
|
|
# install ansible collections
|
|
RUN ansible-galaxy collection install ansible.posix
|
|
RUN ansible-galaxy collection install community.docker
|
|
RUN ansible-galaxy collection install community.general
|
|
RUN ansible-galaxy collection install community.mysql
|