summaryrefslogtreecommitdiff
path: root/docker/Dockerfile
diff options
context:
space:
mode:
authorVincent Robert <vincent.robert@cantor.fr>2014-11-27 15:48:19 +0100
committerVincent Robert <vincent.robert@cantor.fr>2014-11-27 15:48:19 +0100
commit0dcc1e88a4a9a1fe4745421474fcb3e93bfb87ef (patch)
treebd78db3bc654405b82b3403e9d0b96485cf499d2 /docker/Dockerfile
parentb70cee9c2fde878d77b1540c31e7560ea9f97460 (diff)
downloadgitlab-ce-0dcc1e88a4a9a1fe4745421474fcb3e93bfb87ef.tar.gz
Add Dockerfile to build an Omnibus GitLab image
Diffstat (limited to 'docker/Dockerfile')
-rw-r--r--docker/Dockerfile36
1 files changed, 36 insertions, 0 deletions
diff --git a/docker/Dockerfile b/docker/Dockerfile
new file mode 100644
index 00000000000..b1720e15114
--- /dev/null
+++ b/docker/Dockerfile
@@ -0,0 +1,36 @@
+# Data: docker run --name gitlab_data genezys/gitlab:7.5.1 /bin/true
+# Run: docker run --detach --name gitlab --publish 8080:80 --publish 2222:22 --volumes-from gitlab_data genezys/gitlab:7.5.1
+
+FROM ubuntu:14.04
+MAINTAINER Vincent Robert <vincent.robert@genezys.net>
+
+# Install required packages
+RUN apt-get update -q \
+ && DEBIAN_FRONTEND=noninteractive apt-get install -qy \
+ openssh-server \
+ wget \
+ && apt-get clean
+
+# Download & Install GitLab
+RUN TMP_FILE=$(mktemp); \
+ wget -q -O $TMP_FILE https://downloads-packages.s3.amazonaws.com/ubuntu-14.04/gitlab_7.5.1-omnibus.5.2.0.ci-1_amd64.deb \
+ && dpkg -i $TMP_FILE \
+ && rm -f $TMP_FILE
+
+# Manage SSHD through runit
+RUN mkdir -p /opt/gitlab/sv/sshd/supervise \
+ && mkfifo /opt/gitlab/sv/sshd/supervise/ok \
+ && printf "#!/bin/sh\nexec 2>&1\numask 077\nexec /usr/sbin/sshd -D" > /opt/gitlab/sv/sshd/run \
+ && chmod a+x /opt/gitlab/sv/sshd/run \
+ && ln -s /opt/gitlab/sv/sshd /opt/gitlab/service \
+ && mkdir -p /var/run/sshd
+
+# Expose web & ssh
+EXPOSE 80 22
+
+# Volume & configuration
+VOLUME ["/var/opt/gitlab", "/var/log/gitlab", "/etc/gitlab"]
+ADD gitlab.rb /etc/gitlab/
+
+# Default is to run runit & reconfigure
+CMD gitlab-ctl reconfigure > /var/log/gitlab/reconfigure.log & /opt/gitlab/embedded/bin/runsvdir-start