Skip to content

Instantly share code, notes, and snippets.

@yankcrime
Created August 2, 2016 09:11
Show Gist options
  • Save yankcrime/dd5d347e683de131f344233bc7554e13 to your computer and use it in GitHub Desktop.
Save yankcrime/dd5d347e683de131f344233bc7554e13 to your computer and use it in GitHub Desktop.
FROM ubuntu:16.04
MAINTAINER Nick Jones "[email protected]"
ENV FACTER_role='nova'
MOUNT /opt/puppetlabs /etc/puppetlabs /root/.gem
MOUNT ./hieradata:/hieradata
ENV PUPPET_AGENT_VERSION="1.5.0" UBUNTU_CODENAME="xenial" PATH=/opt/puppetlabs/server/bin:/opt/puppetlabs/puppet/bin:/opt/puppetlabs/bin:$PATH
RUN apt-get update && \
apt-get install -y vim lsb-release git python-pip supervisor wget=1.17.1-1ubuntu1 && \
wget https://apt.puppetlabs.com/puppetlabs-release-pc1-"$UBUNTU_CODENAME".deb && \
dpkg -i puppetlabs-release-pc1-"$UBUNTU_CODENAME".deb && \
rm puppetlabs-release-pc1-"$UBUNTU_CODENAME".deb && \
apt-get update && \
apt-get install --no-install-recommends -y puppet-agent="$PUPPET_AGENT_VERSION"-1"$UBUNTU_CODENAME" && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
RUN /opt/puppetlabs/puppet/bin/gem install r10k:2.2.2 --no-ri --no-rdoc
COPY Puppetfile /
COPY manifests /manifests
RUN r10k puppetfile install --moduledir /etc/puppetlabs/code/modules && \
puppet apply manifests/init.pp --verbose --show_diff --summarize --hiera_config=/hieradata/hiera.yaml && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
EXPOSE 80
CMD ["/usr/bin/supervisord", "-n"]
COPY Rockerfile /Dockerfile
TAG nova
# vim:ts=4:sw=4:et:ft=Dockerfile
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment