]>
Commit | Line | Data |
---|---|---|
1 | # Dockerfile for building Ansible image for Debian 8 (jessie), with as few additional software as possible. | |
2 | # | |
3 | # @see https://launchpad.net/~ansible/+archive/ubuntu/ansible | |
4 | # | |
5 | # Version 1.0 | |
6 | # | |
7 | ||
8 | ||
9 | # pull base image | |
10 | FROM debian:jessie | |
11 | ||
12 | MAINTAINER William Yeh <william.pjyeh@gmail.com> | |
13 | ||
14 | ||
15 | RUN echo "===> Installing python, sudo, and supporting tools..." && \ | |
16 | apt-get update -y && apt-get install --fix-missing && \ | |
17 | DEBIAN_FRONTEND=noninteractive \ | |
18 | apt-get install -y \ | |
19 | python python-yaml sudo \ | |
20 | curl gcc python-pip python-dev libffi-dev libssl-dev && \ | |
21 | apt-get -y --purge remove python-cffi && \ | |
22 | pip install --upgrade cffi pywinrm && \ | |
23 | \ | |
24 | \ | |
25 | echo "===> Fix strange bug under Jessie: cannot import name IncompleteRead" && \ | |
26 | easy_install -U pip && \ | |
27 | \ | |
28 | \ | |
29 | echo "===> Installing Ansible..." && \ | |
30 | pip install ansible && \ | |
31 | \ | |
32 | \ | |
33 | \ | |
34 | echo "===> Installing handy tools (not absolutely required)..." && \ | |
35 | apt-get install -y sshpass openssh-client && \ | |
36 | \ | |
37 | \ | |
38 | echo "===> Removing unused APT resources..." && \ | |
39 | apt-get -f -y --auto-remove remove \ | |
40 | gcc python-pip python-dev libffi-dev libssl-dev && \ | |
41 | apt-get clean && \ | |
42 | rm -rf /var/lib/apt/lists/* /tmp/* && \ | |
43 | \ | |
44 | \ | |
45 | echo "===> Adding hosts for convenience..." && \ | |
46 | mkdir -p /etc/ansible && \ | |
47 | echo 'localhost' > /etc/ansible/hosts | |
48 | ||
49 | ||
50 | # default command: display Ansible version | |
51 | CMD [ "ansible-playbook", "--version" ] |