- FROM anapsix/alpine-java:8
- LABEL maintainer "Pascal Gollor <pascal@pgollor.de>"
-
- ARG VCS_REF
-
- LABEL org.label-schema.vcs-url="https://gitbucket.pgollor.de/docker/gitbucket" \
- org.label-schema.vcs-ref=$VCS_REF
-
- # ports
- EXPOSE 29418/tcp
- EXPOSE 8080/tcp
-
- # environment variables
- ENV GITBUCKET_USER_ID 1000
- ENV GITBUCKET_HOST 0.0.0.0
- ENV GITBUCKET_PORT 8080
- ENV GITBUCKET_HOME /srv/gitbucket
- ENV GITBUCKET_MAX_FILE_SIZE=10485760
-
- # create home
- RUN mkdir -p $GITBUCKET_HOME
-
- # update mirror
- RUN echo http://ftp.halifax.rwth-aachen.de/alpine/latest-stable/main > /etc/apk/repositories; \
- echo http://ftp.halifax.rwth-aachen.de/alpine/latest-stable/community >> /etc/apk/repositories
-
- # setup
- RUN apk update
- RUN apk add ca-certificates wget su-exec git
-
- # get gitbucket
- RUN wget https://github.com/gitbucket/gitbucket/releases/download/4.30.1/gitbucket.war -O $GITBUCKET_HOME/latest.war
-
- # create plugin dir
- RUN mkdir $GITBUCKET_HOME/plugins
-
- # get backup plugin
- RUN wget https://github.com/jyuch/gitbucket-backup-plugin/releases/download/1.2.1/gitbucket-backup-plugin-gitbucket_4.29.0-1.2.1.jar -O $GITBUCKET_HOME/gitbucket-backup-plugin-gitbucket_4.29.0-1.2.1.jar
-
- # clean
- RUN apk del wget
- RUN rm -rf /var/cache/apk/*
-
- # mark volumes
- VOLUME $GITBUCKET_HOME/repositories
- VOLUME $GITBUCKET_HOME/data
- VOLUME $GITBUCKET_HOME/gist
- VOLUME $GITBUCKET_HOME/plugins
- VOLUME $GITBUCKET_HOME/backup
-
- # set environment
- WORKDIR $GITBUCKET_HOME
-
- # copy files
- COPY docker-entrypoint.sh /
- COPY database.conf ./
- RUN chmod +x /docker-entrypoint.sh
-
- ENTRYPOINT ["/docker-entrypoint.sh"]
- CMD su-exec gitbucket java -jar $GITBUCKET_HOME/latest.war --host=$GITBUCKET_HOST --port=$GITBUCKET_PORT --gitbucket.home=$GITBUCKET_HOME --max_file_size=$GITBUCKET_MAX_FILE_SIZE