FROM ubuntu:14.04 RUN apt-get update -y && \ DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ acl \ apache2 \ asciidoc \ bzip2 \ cdbs \ curl \ debhelper \ debianutils \ devscripts \ docbook-xml \ dpkg-dev \ fakeroot \ gawk \ gcc \ git \ libffi-dev \ libssl-dev \ libxml2-utils \ locales \ make \ mercurial \ mysql-server \ openssh-client \ openssh-server \ python-dev \ pass \ python-httplib2 \ python-jinja2 \ python-keyczar \ python-lxml \ python-mock \ python-mysqldb \ python-nose \ python-paramiko \ python-passlib \ python-pip \ python-setuptools \ python-virtualenv \ python-yaml \ reprepro \ rsync \ ruby \ sshpass \ subversion \ sudo \ tzdata \ unzip \ xsltproc \ zip \ && \ apt-get clean RUN pip install pip --upgrade RUN pip install --upgrade pycrypto cryptography # helpful things taken from the ubuntu-upstart Dockerfile: # https://github.com/tianon/dockerfiles/blob/4d24a12b54b75b3e0904d8a285900d88d3326361/sbin-init/ubuntu/upstart/14.04/Dockerfile ADD init-fake.conf /etc/init/fake-container-events.conf # undo some leet hax of the base image RUN rm /usr/sbin/policy-rc.d; \ rm /sbin/initctl; dpkg-divert --rename --remove /sbin/initctl # remove some pointless services RUN /usr/sbin/update-rc.d -f ondemand remove; \ for f in \ /etc/init/u*.conf \ /etc/init/mounted-dev.conf \ /etc/init/mounted-proc.conf \ /etc/init/mounted-run.conf \ /etc/init/mounted-tmp.conf \ /etc/init/mounted-var.conf \ /etc/init/hostname.conf \ /etc/init/networking.conf \ /etc/init/tty*.conf \ /etc/init/plymouth*.conf \ /etc/init/hwclock*.conf \ /etc/init/module*.conf\ ; do \ dpkg-divert --local --rename --add "$f"; \ done; \ echo '# /lib/init/fstab: cleared out for bare-bones Docker' > /lib/init/fstab # end things from ubuntu-upstart Dockerfile RUN rm /etc/apt/apt.conf.d/docker-clean RUN mkdir /etc/ansible/ RUN /bin/echo -e "[local]\nlocalhost ansible_connection=local" > /etc/ansible/hosts RUN locale-gen en_US.UTF-8 RUN ssh-keygen -q -t rsa -N '' -f /root/.ssh/id_rsa && \ cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys && \ for key in /etc/ssh/ssh_host_*_key.pub; do echo "localhost $(cat ${key})" >> /root/.ssh/known_hosts; done VOLUME /sys/fs/cgroup /run/lock /run /tmp RUN pip install coverage junit-xml ENV container=docker CMD ["/sbin/init"]