aboutsummaryrefslogtreecommitdiffstats
path: root/gitlab/Dockerfile
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2018-09-06 12:26:06 +0200
committerNatanael Copa <ncopa@alpinelinux.org>2018-09-06 14:28:09 +0200
commit76dcf6a13c5736ec15fb31fbc19c9eb8dee803a0 (patch)
tree9edbe57876d921f229657d712da048b0e515850e /gitlab/Dockerfile
parenta8cf191126eaf8271113958f29dcf8783b294420 (diff)
downloadgitlab-alpine-76dcf6a13c5736ec15fb31fbc19c9eb8dee803a0.tar.bz2
gitlab-alpine-76dcf6a13c5736ec15fb31fbc19c9eb8dee803a0.tar.xz
initial build of gitlab image
Diffstat (limited to 'gitlab/Dockerfile')
-rw-r--r--gitlab/Dockerfile70
1 files changed, 70 insertions, 0 deletions
diff --git a/gitlab/Dockerfile b/gitlab/Dockerfile
new file mode 100644
index 0000000..17f2ee2
--- /dev/null
+++ b/gitlab/Dockerfile
@@ -0,0 +1,70 @@
+FROM alpine:3.8
+
+ENV GITLAB_BRANCH 11-3-stable
+
+RUN apk add -U \
+ build-base \
+ zlib-dev \
+ yaml-dev \
+ libressl-dev \
+ gdbm-dev \
+ re2-dev \
+ readline-dev \
+ ncurses-dev \
+ libffi-dev \
+ curl-dev \
+ openssh-server \
+ libxml2-dev \
+ libxslt-dev \
+ icu-dev \
+ logrotate \
+ rsync \
+ py-docutils \
+ cmake \
+ ruby=~2.5 \
+ yarn \
+ nodejs \
+ sudo \
+ git \
+ go
+
+# create git user and config git
+RUN addgroup -S git \
+ && adduser -S -D -h /var/lib/git -s /bin/sh -G git -g git git \
+ && sudo -u git -H git config --global core.autocrlf input \
+ && sudo -u git -H git config --global gc.auto 0 \
+ && sudo -u git -H git config --global repack.writeBitmaps true \
+ && sudo -u git -H git config --global receive.advertisePushOptions true
+
+# clone gitlab repo
+RUN cd /var/lib/git \
+ && sudo -u git -H git clone https://gitlab.com/gitlab-org/gitlab-ce.git -b $GITLAB_BRANCH gitlab
+
+# fix permissions
+RUN cd /var/lib/git/gitlab \
+ && chown -R git log/ tmp/ \
+ && chmod -R u+rwX,go-w log/ \
+ && chmod -R u+rwX tmp/ \
+ && chmod -R u+rwX tmp/pids/ \
+ && chmod -R u+rwX tmp/sockets/ \
+ \
+ && install -d -o git -g git -m0700 public/uploads \
+ && chmod -R u+rwX builds/ \
+ && chmod -R u+rwX shared/artifacts/ \
+ && chmod -R ug+rwX shared/pages/
+
+
+# the following files may need to be edited for our config
+RUN cd /var/lib/git/gitlab \
+ && install -o git -g git config/initializers/rack_attack.rb.example config/initializers/rack_attack.rb \
+ && install -o git -g git config/gitlab.yml.example config/gitlab.yml \
+ && install -o git -g git -m0600 config/secrets.yml.example config/secrets.yml \
+ && install -o git -g git config/resque.yml.example config/resque.yml \
+ && install -o git -g git config/unicorn.rb.example config/unicorn.rb \
+ && install -o git -g git -m640 config/database.yml.postgresql config/database.yml
+
+
+
+
+
+