github.com/alexandrev/docker@v1.9.0/Dockerfile.gccgo (about)

     1  # This file describes the standard way to build Docker, using docker
     2  #
     3  # Usage:
     4  #
     5  # # Assemble the full dev environment. This is slow the first time.
     6  # docker build -t docker -f Dockerfile.gccgo .
     7  #
     8  
     9  FROM gcc:5.2
    10  
    11  # Packaged dependencies
    12  RUN apt-get update && apt-get install -y \
    13  	apparmor \
    14  	aufs-tools \
    15  	btrfs-tools \
    16  	build-essential \
    17  	curl \
    18  	git \
    19  	iptables \
    20  	net-tools \
    21  	libapparmor-dev \
    22  	libcap-dev \
    23  	libsqlite3-dev \
    24  	mercurial \
    25  	parallel \
    26  	python-mock \
    27  	python-pip \
    28  	python-websocket \
    29  	--no-install-recommends
    30  
    31  # Get lvm2 source for compiling statically
    32  RUN git clone -b v2_02_103 https://git.fedorahosted.org/git/lvm2.git /usr/local/lvm2
    33  # see https://git.fedorahosted.org/cgit/lvm2.git/refs/tags for release tags
    34  
    35  # Compile and install lvm2
    36  RUN cd /usr/local/lvm2 \
    37  	&& ./configure --enable-static_link \
    38  	&& make device-mapper \
    39  	&& make install_device-mapper
    40  # see https://git.fedorahosted.org/cgit/lvm2.git/tree/INSTALL
    41  
    42  # Install lxc
    43  ENV LXC_VERSION 1.1.2
    44  RUN mkdir -p /usr/src/lxc \
    45  	&& curl -sSL https://linuxcontainers.org/downloads/lxc/lxc-${LXC_VERSION}.tar.gz | tar -v -C /usr/src/lxc/ -xz --strip-components=1
    46  RUN cd /usr/src/lxc \
    47  	&& ./configure \
    48  	&& make \
    49  	&& make install \
    50  	&& ldconfig
    51  
    52  ENV GOPATH /go:/go/src/github.com/docker/docker/vendor
    53  
    54  # Get the "docker-py" source so we can run their integration tests
    55  ENV DOCKER_PY_COMMIT 139850f3f3b17357bab5ba3edfb745fb14043764
    56  RUN git clone https://github.com/docker/docker-py.git /docker-py \
    57  	&& cd /docker-py \
    58  	&& git checkout -q $DOCKER_PY_COMMIT
    59  
    60  # Add an unprivileged user to be used for tests which need it
    61  RUN groupadd -r docker
    62  RUN useradd --create-home --gid docker unprivilegeduser
    63  
    64  VOLUME /var/lib/docker
    65  WORKDIR /go/src/github.com/docker/docker
    66  ENV DOCKER_BUILDTAGS apparmor selinux
    67  
    68  # Wrap all commands in the "docker-in-docker" script to allow nested containers
    69  ENTRYPOINT ["hack/dind"]
    70  
    71  # Upload docker source
    72  COPY . /go/src/github.com/docker/docker