github.com/technosophos/deis@v1.7.1-0.20150915173815-f9005256004b/builder/rootfs/Dockerfile (about)

     1  FROM alpine:3.1
     2  
     3  # install common packages
     4  RUN apk add --update-cache curl bash sudo && rm -rf /var/cache/apk/*
     5  
     6  # install etcdctl
     7  RUN curl -sSL -o /usr/local/bin/etcdctl https://s3-us-west-2.amazonaws.com/get-deis/etcdctl-v0.4.9 \
     8      && chmod +x /usr/local/bin/etcdctl
     9  
    10  # install confd
    11  RUN curl -sSL -o /usr/local/bin/confd https://github.com/kelseyhightower/confd/releases/download/v0.10.0/confd-0.10.0-linux-amd64 \
    12      && chmod +x /usr/local/bin/confd
    13  
    14  RUN apk add --update-cache \
    15      coreutils \
    16      device-mapper \
    17      e2fsprogs \
    18      git \
    19      iptables \
    20      libudev \
    21      lxc \
    22      openssh \
    23      udev \
    24      util-linux \
    25      xz \
    26      && rm -rf /var/cache/apk/*
    27  
    28  # the docker package in alpine disables aufs and devicemapper
    29  RUN curl -sSL https://get.docker.com/builds/Linux/x86_64/docker-1.5.0 -o /usr/bin/docker && \
    30    chmod +x /usr/bin/docker
    31  
    32  # configure ssh server
    33  RUN mkdir -p /var/run/sshd && rm -rf /etc/ssh/ssh_host*
    34  
    35  # install git and configure gituser
    36  ENV GITHOME /home/git
    37  ENV GITUSER git
    38  RUN adduser -D -h $GITHOME $GITUSER
    39  RUN mkdir -p $GITHOME/.ssh && chown git:git $GITHOME/.ssh
    40  RUN chown -R $GITUSER:$GITUSER $GITHOME
    41  
    42  # define the execution environment
    43  # use VOLUME to remove /var/lib/docker from copy-on-write for performance
    44  # we don't want to stack overlay filesystems
    45  VOLUME /var/lib/docker
    46  
    47  ENTRYPOINT ["/bin/entry"]
    48  CMD ["/bin/boot"]
    49  EXPOSE 2223
    50  RUN addgroup -g 2000 slug && adduser -D -u 2000 -G slug slug
    51  
    52  # $GITUSER is added to docker group to use docker without sudo and to slug
    53  # group in order to share resources with the slug user
    54  RUN addgroup -S docker
    55  RUN addgroup $GITUSER docker
    56  RUN addgroup $GITUSER slug
    57  RUN passwd -u git
    58  
    59  COPY . /
    60  
    61  ENV DEIS_RELEASE 1.11.0-dev