ansible-docker/ansible.Dockerfile
Adrien Reslinger 03f28eb567
All checks were successful
continuous-integration/drone/push Build is passing
Update alpine version
2021-01-13 00:15:57 +01:00

44 lines
No EOL
2.2 KiB
Docker

# docker build -f ansible.Dockerfile -t adrien/ansible ./
FROM python:3.12-alpine
LABEL name="ansible" \
version="latest"
#RUN VAULT_VERSION=1.5.3 && KUBECTL_VERSION=v1.19.2 && HELM_VERSION=v3.3.3 && \
RUN apk --update add --virtual build-dependencies gcc musl-dev libffi-dev openssl-dev build-base libvirt-dev && \
pip3 install ansible asn1crypto bcrypt cachetools certifi cffi chardet cryptography dictdiffer \
docker-py google-auth httplib2 hvac idna ipaddress Jinja2 jmespath jsonpatch jsonpointer jsonschema \
kubernetes libvirt-python MarkupSafe oauthlib openshift paramiko pyasn1 pyasn1-modules pycparser \
PyNaCl python-dateutil python-string-utils PyYAML q requests requests-oauthlib rsa ruamel.yaml \
six simplejson urllib3 websocket-client ansible-lint openstacksdk && \
apk add ca-certificates && \
apk del build-dependencies && \
rm -rf /var/cache/apk/* && \
# wget https://releases.hashicorp.com/vault/${VAULT_VERSION}/vault_${VAULT_VERSION}_linux_amd64.zip && \
# unzip vault_${VAULT_VERSION}_linux_amd64.zip && \
# install vault /usr/local/bin/vault -o root -g root -m 0755 && \
# rm -f vault vault_${VAULT_VERSION}_linux_amd64.zip && \
# wget https://storage.googleapis.com/kubernetes-release/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl && \
# install kubectl /usr/local/bin/kubectl -o root -g root -m 0755 && \
# rm -f kubectl && \
# wget https://get.helm.sh/helm-${HELM_VERSION}-linux-amd64.tar.gz && \
# tar -zxf helm-${HELM_VERSION}-linux-amd64.tar.gz && \
# install -o root -g root -m 0755 linux-amd64/helm /usr/local/bin/helm && \
# rm -fr helm-${HELM_VERSION}-linux-amd64.tar.gz linux-amd64 && \
mkdir -p /etc/ansible /ansible && \
echo "[local]" >> /etc/ansible/hosts && \
echo "localhost" >> /etc/ansible/hosts && \
ln -s /usr/local/bin/python3 /usr/bin/python3
#RUN update-ca-certificates
ENV ANSIBLE_GATHERING=smart \
ANSIBLE_HOST_KEY_CHECKING=false \
ANSIBLE_RETRY_FILES_ENABLED=false \
ANSIBLE_ROLES_PATH=/ansible/playbooks/roles \
ANSIBLE_SSH_PIPELINING=True \
PYTHONPATH=/ansible/lib \
PATH=/ansible/bin:$PATH \
ANSIBLE_LIBRARY=/ansible/library
WORKDIR /ansible/playbooks
CMD ["ansible"]