diff --git a/11.1/Dockerfile b/11.1/Dockerfile new file mode 100644 index 0000000..beae090 --- /dev/null +++ b/11.1/Dockerfile @@ -0,0 +1,105 @@ +##################### +# Building Stage # +##################### +FROM gitlab/gitlab-ce:11.1.4-ce.0 as builder + +ENV GITLAB_DIR=/opt/gitlab/embedded/service/gitlab-rails +ENV GITLAB_GIT_ZH=https://gitlab.com/xhang/gitlab.git + +# Reference: +# * https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/config/software/gitlab-rails.rb +# * https://gitlab.com/gitlab-org/gitlab-ce/blob/master/.gitlab-ci.yml +RUN set -xe \ + && echo " # Preparing ..." \ + && export DEBIAN_FRONTEND=noninteractive \ + && export SSL_CERT_DIR=/etc/ssl/certs/ \ + && export GIT_SSL_CAPATH=/etc/ssl/certs/ \ + && curl -sL https://deb.nodesource.com/setup_8.x | bash - \ + && curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \ + && echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list \ + && apt-get update \ + && apt-get install -yqq lsb-release patch nodejs python build-essential yarn cmake + +RUN set -xe \ + && echo " # Generating translation patch ..." \ + && cd /tmp \ + && git clone ${GITLAB_GIT_ZH} gitlab \ + && cd gitlab \ + && export IGNORE_DIRS=':!qa :!spec :!features :!.gitignore :!.gitlab :!locale :!app/assets/ :!vendor/assets/' \ + && git diff --diff-filter=d v11.1.4..v11.1.4-zh -- . ${IGNORE_DIRS} > ../zh_CN.diff \ + && echo " # Patching ..." \ + && patch -d ${GITLAB_DIR} -p1 < ../zh_CN.diff \ + && echo " # Copy assets files ..." \ + && git checkout v11.1.4-zh \ + && cp -R locale ${GITLAB_DIR}/ \ + && mkdir -p ${GITLAB_DIR}/app \ + && cp -R app/assets ${GITLAB_DIR}/app/ \ + && mkdir -p ${GITLAB_DIR}/vendor \ + && cp -R vendor/assets ${GITLAB_DIR}/vendor/ + +RUN set -xe \ + && echo " # Regenerating the assets" \ + && cd ${GITLAB_DIR} \ + && cp config/gitlab.yml.example config/gitlab.yml \ + && cp config/database.yml.postgresql config/database.yml \ + && cp config/secrets.yml.example config/secrets.yml \ + && rm -rf public/assets \ + && export NODE_ENV=production \ + && export RAILS_ENV=production \ + && export SETUP_DB=false \ + && export USE_DB=false \ + && export SKIP_STORAGE_VALIDATION=true \ + && export WEBPACK_REPORT=true \ + && export NO_COMPRESSION=true \ + && export NO_PRIVILEGE_DROP=true \ + && export NODE_OPTIONS=--max-old-space-size=4086 \ + && yarn install --frozen-lockfile \ + && bin/bundle install --frozen \ + && bin/rake gettext:compile \ + && bin/rake gitlab:assets:compile + +RUN set -xe \ + && echo " # Cleaning ..." \ + && yarn cache clean \ + && rm -rf log \ + tmp \ + config/gitlab.yml \ + config/database.yml \ + config/secrets.yml \ + .secret \ + .gitlab_shell_secret \ + .gitlab_workhorse_secret \ + app/assets \ + node_modules \ + && find /usr/lib/ -name __pycache__ | xargs rm -rf \ + && rm -rf /tmp/gitlab /tmp/*.diff /root/.cache /var/lib/apt/lists/* + + +###################### +# Production Stage # +###################### +FROM gitlab/gitlab-ce:11.1.4-ce.0 as production + +RUN set -xe \ + && export DEBIAN_FRONTEND=noninteractive \ + && apt-get update \ + && apt-get install -yqq locales tzdata \ + && locale-gen en_US.UTF-8 \ + && rm -rf /var/lib/apt/lists/* + +ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 +ENV TZ=Asia/Shanghai + +ENV GITLAB_VERSION=v11.1.4 +ENV GITLAB_DIR=/opt/gitlab/embedded/service/gitlab-rails +ENV GITLAB_GIT_ZH=https://gitlab.com/xhang/gitlab.git +ENV GITLAB_GIT_COMMIT_UPSTREAM=v11.1.4 +ENV GITLAB_GIT_COMMIT_ZH=v11.1.4-zh + +COPY --from=builder ${GITLAB_DIR}/app ${GITLAB_DIR}/app +COPY --from=builder ${GITLAB_DIR}/public ${GITLAB_DIR}/public +COPY --from=builder ${GITLAB_DIR}/config/application.rb ${GITLAB_DIR}/config/application.rb +COPY --from=builder ${GITLAB_DIR}/config/initializers ${GITLAB_DIR}/config/initializers +COPY --from=builder ${GITLAB_DIR}/config/locales ${GITLAB_DIR}/config/locales +COPY --from=builder ${GITLAB_DIR}/lib/gitlab ${GITLAB_DIR}/lib/gitlab +COPY --from=builder ${GITLAB_DIR}/locale ${GITLAB_DIR}/locale diff --git a/11.11/Dockerfile b/11.11/Dockerfile new file mode 100644 index 0000000..f6facb1 --- /dev/null +++ b/11.11/Dockerfile @@ -0,0 +1,105 @@ +##################### +# Building Stage # +##################### +FROM gitlab/gitlab-ce:11.11.8-ce.0 as builder + +ENV GITLAB_DIR=/opt/gitlab/embedded/service/gitlab-rails +ENV GITLAB_GIT_ZH=https://gitlab.com/xhang/gitlab.git + +# Reference: +# * https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/config/software/gitlab-rails.rb +# * https://gitlab.com/gitlab-org/gitlab-ce/blob/master/.gitlab-ci.yml +RUN set -xe \ + && echo " # Preparing ..." \ + && export DEBIAN_FRONTEND=noninteractive \ + && export SSL_CERT_DIR=/etc/ssl/certs/ \ + && export GIT_SSL_CAPATH=/etc/ssl/certs/ \ + && curl -sL https://deb.nodesource.com/setup_8.x | bash - \ + && curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \ + && echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list \ + && apt-get update \ + && apt-get install -yqq lsb-release patch nodejs python build-essential yarn cmake + +RUN set -xe \ + && echo " # Generating translation patch ..." \ + && cd /tmp \ + && git clone ${GITLAB_GIT_ZH} gitlab \ + && cd gitlab \ + && export IGNORE_DIRS=':!qa :!spec :!features :!.gitignore :!.gitlab :!locale :!app/assets/ :!vendor/assets/' \ + && git diff --diff-filter=d v11.11.8..v11.11.8-zh -- . ${IGNORE_DIRS} > ../zh_CN.diff \ + && echo " # Patching ..." \ + && patch -d ${GITLAB_DIR} -p1 < ../zh_CN.diff \ + && echo " # Copy assets files ..." \ + && git checkout v11.11.8-zh \ + && cp -R locale ${GITLAB_DIR}/ \ + && mkdir -p ${GITLAB_DIR}/app \ + && cp -R app/assets ${GITLAB_DIR}/app/ \ + && mkdir -p ${GITLAB_DIR}/vendor \ + && cp -R vendor/assets ${GITLAB_DIR}/vendor/ + +RUN set -xe \ + && echo " # Regenerating the assets" \ + && cd ${GITLAB_DIR} \ + && cp config/gitlab.yml.example config/gitlab.yml \ + && cp config/database.yml.postgresql config/database.yml \ + && cp config/secrets.yml.example config/secrets.yml \ + && rm -rf public/assets \ + && export NODE_ENV=production \ + && export RAILS_ENV=production \ + && export SETUP_DB=false \ + && export USE_DB=false \ + && export SKIP_STORAGE_VALIDATION=true \ + && export WEBPACK_REPORT=true \ + && export NO_COMPRESSION=true \ + && export NO_PRIVILEGE_DROP=true \ + && export NODE_OPTIONS=--max-old-space-size=4086 \ + && yarn install --frozen-lockfile \ + && bin/bundle install --frozen \ + && bin/rake gettext:compile \ + && bin/rake gitlab:assets:compile + +RUN set -xe \ + && echo " # Cleaning ..." \ + && yarn cache clean \ + && rm -rf log \ + tmp \ + config/gitlab.yml \ + config/database.yml \ + config/secrets.yml \ + .secret \ + .gitlab_shell_secret \ + .gitlab_workhorse_secret \ + app/assets \ + node_modules \ + && find /usr/lib/ -name __pycache__ | xargs rm -rf \ + && rm -rf /tmp/gitlab /tmp/*.diff /root/.cache /var/lib/apt/lists/* + + +###################### +# Production Stage # +###################### +FROM gitlab/gitlab-ce:11.11.8-ce.0 as production + +RUN set -xe \ + && export DEBIAN_FRONTEND=noninteractive \ + && apt-get update \ + && apt-get install -yqq locales tzdata \ + && locale-gen en_US.UTF-8 \ + && rm -rf /var/lib/apt/lists/* + +ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 +ENV TZ=Asia/Shanghai + +ENV GITLAB_VERSION=v11.11.8 +ENV GITLAB_DIR=/opt/gitlab/embedded/service/gitlab-rails +ENV GITLAB_GIT_ZH=https://gitlab.com/xhang/gitlab.git +ENV GITLAB_GIT_COMMIT_UPSTREAM=v11.11.8 +ENV GITLAB_GIT_COMMIT_ZH=v11.11.8-zh + +COPY --from=builder ${GITLAB_DIR}/app ${GITLAB_DIR}/app +COPY --from=builder ${GITLAB_DIR}/public ${GITLAB_DIR}/public +COPY --from=builder ${GITLAB_DIR}/config/application.rb ${GITLAB_DIR}/config/application.rb +COPY --from=builder ${GITLAB_DIR}/config/initializers ${GITLAB_DIR}/config/initializers +COPY --from=builder ${GITLAB_DIR}/config/locales ${GITLAB_DIR}/config/locales +COPY --from=builder ${GITLAB_DIR}/lib/gitlab ${GITLAB_DIR}/lib/gitlab +COPY --from=builder ${GITLAB_DIR}/locale ${GITLAB_DIR}/locale diff --git a/12.0/Dockerfile b/12.0/Dockerfile new file mode 100644 index 0000000..fb1b9c2 --- /dev/null +++ b/12.0/Dockerfile @@ -0,0 +1,105 @@ +##################### +# Building Stages # +##################### +FROM gitlab/gitlab-ce:12.0.9-ce.0 as builder + +ENV GITLAB_DIR=/opt/gitlab/embedded/service/gitlab-rails +ENV GITLAB_GIT_ZH=https://gitlab.com/xhang/gitlab.git + +# Reference: +# * https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/config/software/gitlab-rails.rb +# * https://gitlab.com/gitlab-org/gitlab-ce/blob/master/.gitlab-ci.yml +RUN set -xe \ + && echo " # Preparing ..." \ + && export DEBIAN_FRONTEND=noninteractive \ + && export SSL_CERT_DIR=/etc/ssl/certs/ \ + && export GIT_SSL_CAPATH=/etc/ssl/certs/ \ + && curl -sL https://deb.nodesource.com/setup_8.x | bash - \ + && curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \ + && echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list \ + && apt-get update \ + && apt-get install -yqq lsb-release patch nodejs python build-essential yarn cmake + +RUN set -xe \ + && echo " # Generating translation patch ..." \ + && cd /tmp \ + && git clone ${GITLAB_GIT_ZH} gitlab \ + && cd gitlab \ + && export IGNORE_DIRS=':!qa :!spec :!features :!.gitignore :!.gitlab :!locale :!app/assets/ :!vendor/assets/' \ + && git diff --diff-filter=d v12.0.9..v12.0.9-zh -- . ${IGNORE_DIRS} > ../zh_CN.diff \ + && echo " # Patching ..." \ + && patch -d ${GITLAB_DIR} -p1 < ../zh_CN.diff \ + && echo " # Copy assets files ..." \ + && git checkout v12.0.9-zh \ + && cp -R locale ${GITLAB_DIR}/ \ + && mkdir -p ${GITLAB_DIR}/app \ + && cp -R app/assets ${GITLAB_DIR}/app/ \ + && mkdir -p ${GITLAB_DIR}/vendor \ + && cp -R vendor/assets ${GITLAB_DIR}/vendor/ + +RUN set -xe \ + && echo " # Regenerating the assets" \ + && cd ${GITLAB_DIR} \ + && cp config/gitlab.yml.example config/gitlab.yml \ + && cp config/database.yml.postgresql config/database.yml \ + && cp config/secrets.yml.example config/secrets.yml \ + && rm -rf public/assets \ + && export NODE_ENV=production \ + && export RAILS_ENV=production \ + && export SETUP_DB=false \ + && export USE_DB=false \ + && export SKIP_STORAGE_VALIDATION=true \ + && export WEBPACK_REPORT=true \ + && export NO_COMPRESSION=true \ + && export NO_PRIVILEGE_DROP=true \ + && export NODE_OPTIONS=--max-old-space-size=4086 \ + && yarn install --frozen-lockfile \ + && bin/bundle install --frozen \ + && bin/rake gettext:compile \ + && bin/rake gitlab:assets:compile + +RUN set -xe \ + && echo " # Cleaning ..." \ + && yarn cache clean \ + && rm -rf log \ + tmp \ + config/gitlab.yml \ + config/database.yml \ + config/secrets.yml \ + .secret \ + .gitlab_shell_secret \ + .gitlab_workhorse_secret \ + app/assets \ + node_modules \ + && find /usr/lib/ -name __pycache__ | xargs rm -rf \ + && rm -rf /tmp/gitlab /tmp/*.diff /root/.cache /var/lib/apt/lists/* + + +###################### +# Production Stage # +###################### +FROM gitlab/gitlab-ce:12.0.9-ce.0 as production + +RUN set -xe \ + && export DEBIAN_FRONTEND=noninteractive \ + && apt-get update \ + && apt-get install -yqq locales tzdata \ + && locale-gen en_US.UTF-8 \ + && rm -rf /var/lib/apt/lists/* + +ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 +ENV TZ=Asia/Shanghai + +ENV GITLAB_VERSION=v12.0.9 +ENV GITLAB_DIR=/opt/gitlab/embedded/service/gitlab-rails +ENV GITLAB_GIT_ZH=https://gitlab.com/xhang/gitlab.git +ENV GITLAB_GIT_COMMIT_UPSTREAM=v12.0.9 +ENV GITLAB_GIT_COMMIT_ZH=v12.0.9-zh + +COPY --from=builder ${GITLAB_DIR}/app ${GITLAB_DIR}/app +COPY --from=builder ${GITLAB_DIR}/public ${GITLAB_DIR}/public +COPY --from=builder ${GITLAB_DIR}/config/application.rb ${GITLAB_DIR}/config/application.rb +COPY --from=builder ${GITLAB_DIR}/config/initializers ${GITLAB_DIR}/config/initializers +COPY --from=builder ${GITLAB_DIR}/config/locales ${GITLAB_DIR}/config/locales +COPY --from=builder ${GITLAB_DIR}/lib/gitlab ${GITLAB_DIR}/lib/gitlab +COPY --from=builder ${GITLAB_DIR}/locale ${GITLAB_DIR}/locale diff --git a/12.1/Dockerfile b/12.1/Dockerfile new file mode 100644 index 0000000..f686be5 --- /dev/null +++ b/12.1/Dockerfile @@ -0,0 +1,102 @@ +##################### +# Building Stage # +##################### +FROM gitlab/gitlab-ce:12.1.0-ce.0 as builder + +ENV GITLAB_DIR=/opt/gitlab/embedded/service/gitlab-rails +ENV GITLAB_GIT_ZH=https://gitlab.com/caeret/gitlab-ce.git + +RUN set -xe \ + && echo " # Preparing ..." \ + && export DEBIAN_FRONTEND=noninteractive \ + && export SSL_CERT_DIR=/etc/ssl/certs/ \ + && export GIT_SSL_CAPATH=/etc/ssl/certs/ \ + && curl -sL https://deb.nodesource.com/setup_8.x | bash - \ + && curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \ + && echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list \ + && apt-get update \ + && apt-get install -yqq lsb-release patch nodejs python build-essential yarn cmake + +RUN set -xe \ + && echo " # Generating translation patch ..." \ + && cd /tmp \ + && git clone ${GITLAB_GIT_ZH} gitlab \ + && cd gitlab \ + && export IGNORE_DIRS=':!qa :!spec :!features :!.gitignore :!.gitlab :!locale :!app/assets/ :!vendor/assets/' \ + && git diff --diff-filter=d v12.1.0..v12.1.0-zh -- . ${IGNORE_DIRS} > ../zh_CN.diff \ + && echo " # Patching ..." \ + && patch -d ${GITLAB_DIR} -p1 < ../zh_CN.diff \ + && echo " # Copy assets files ..." \ + && git checkout v12.1.0-zh \ + && cp -R locale ${GITLAB_DIR}/ \ + && mkdir -p ${GITLAB_DIR}/app \ + && cp -R app/assets ${GITLAB_DIR}/app/ \ + && mkdir -p ${GITLAB_DIR}/vendor \ + && cp -R vendor/assets ${GITLAB_DIR}/vendor/ + +RUN set -xe \ + && echo " # Regenerating the assets" \ + && cd ${GITLAB_DIR} \ + && cp config/gitlab.yml.example config/gitlab.yml \ + && cp config/database.yml.postgresql config/database.yml \ + && cp config/secrets.yml.example config/secrets.yml \ + && rm -rf public/assets \ + && export NODE_ENV=production \ + && export RAILS_ENV=production \ + && export SETUP_DB=false \ + && export USE_DB=false \ + && export SKIP_STORAGE_VALIDATION=true \ + && export WEBPACK_REPORT=true \ + && export NO_COMPRESSION=true \ + && export NO_PRIVILEGE_DROP=true \ + && export NODE_OPTIONS=--max-old-space-size=4086 \ + && yarn install --frozen-lockfile \ + && bin/bundle install --frozen \ + && bin/rake gettext:compile \ + && bin/rake gitlab:assets:compile + +RUN set -xe \ + && echo " # Cleaning ..." \ + && yarn cache clean \ + && rm -rf log \ + tmp \ + config/gitlab.yml \ + config/database.yml \ + config/secrets.yml \ + .secret \ + .gitlab_shell_secret \ + .gitlab_workhorse_secret \ + app/assets \ + node_modules \ + && find /usr/lib/ -name __pycache__ | xargs rm -rf \ + && rm -rf /tmp/gitlab /tmp/*.diff /root/.cache /var/lib/apt/lists/* + + +###################### +# Production Stage # +###################### +FROM gitlab/gitlab-ce:12.1.0-ce.0 as production + +RUN set -xe \ + && export DEBIAN_FRONTEND=noninteractive \ + && apt-get update \ + && apt-get install -yqq locales tzdata \ + && locale-gen en_US.UTF-8 \ + && rm -rf /var/lib/apt/lists/* + +ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 +ENV TZ=Asia/Shanghai + +ENV GITLAB_VERSION=v12.1.0 +ENV GITLAB_DIR=/opt/gitlab/embedded/service/gitlab-rails +ENV GITLAB_GIT_ZH=https://gitlab.com/caeret/gitlab-ce.git +ENV GITLAB_GIT_COMMIT_UPSTREAM=v12.1.0 +ENV GITLAB_GIT_COMMIT_ZH=v12.1.0-zh + +COPY --from=builder ${GITLAB_DIR}/app ${GITLAB_DIR}/app +COPY --from=builder ${GITLAB_DIR}/public ${GITLAB_DIR}/public +COPY --from=builder ${GITLAB_DIR}/config/application.rb ${GITLAB_DIR}/config/application.rb +COPY --from=builder ${GITLAB_DIR}/config/initializers ${GITLAB_DIR}/config/initializers +COPY --from=builder ${GITLAB_DIR}/config/locales ${GITLAB_DIR}/config/locales +COPY --from=builder ${GITLAB_DIR}/lib/gitlab ${GITLAB_DIR}/lib/gitlab +COPY --from=builder ${GITLAB_DIR}/locale ${GITLAB_DIR}/locale diff --git a/12.2/Dockerfile b/12.2/Dockerfile new file mode 100644 index 0000000..80d9643 --- /dev/null +++ b/12.2/Dockerfile @@ -0,0 +1,29 @@ +###################### +# Production Stage # +###################### +ARG GITLAB_CE_BASE_VERSION=12.2.8 +FROM gitlab/gitlab-ce:${GITLAB_CE_BASE_VERSION}-ce.0 AS production +MAINTAINER "blueapple " + +ENV GITLAB_VERSION=v12.2.8 +ENV GITLAB_DIR=/opt/gitlab/embedded/service/gitlab-rails +ENV GITLAB_GIT_ZH=https://gitlab.com/xhang/gitlab.git +ENV GITLAB_GIT_COMMIT_UPSTREAM=v12.2.8 +ENV GITLAB_GIT_COMMIT_ZH=v12.2.8-zh +ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 +ENV TZ=Asia/Shanghai + +RUN set -xe \ + && export DEBIAN_FRONTEND=noninteractive \ + && apt-get update \ + && apt-get install -yqq locales tzdata \ + && locale-gen en_US.UTF-8 \ + && rm -rf /var/lib/apt/lists/* \ + && wget -c -O /tmp/gitlab-${GITLAB_VERSION}-zh.tar.gz \ + https://gitlab.com/xhang/gitlab/-/archive/${GITLAB_VERSION}-zh/gitlab-${GITLAB_VERSION}-zh.tar.gz \ + && cd /tmp \ + && tar xf gitlab-${GITLAB_VERSION}-zh.tar.gz + +RUN yes|cp -ar /tmp/gitlab-${GITLAB_VERSION}-zh/* ${GITLAB_DIR}/ \ + && rm -rf /tmp/gitlab-${GITLAB_VERSION}-zh.tar.gz \ + /tmp/gitlab-${GITLAB_VERSION}-zh/ diff --git a/12.3/Dockerfile b/12.3/Dockerfile new file mode 100644 index 0000000..626388f --- /dev/null +++ b/12.3/Dockerfile @@ -0,0 +1,29 @@ +###################### +# Production Stage # +###################### +ARG GITLAB_CE_BASE_VERSION=12.3.5 +FROM gitlab/gitlab-ce:${GITLAB_CE_BASE_VERSION}-ce.0 AS production +MAINTAINER "blueapple " + +ENV GITLAB_VERSION=v12.3.5 +ENV GITLAB_DIR=/opt/gitlab/embedded/service/gitlab-rails +ENV GITLAB_GIT_ZH=https://gitlab.com/xhang/gitlab.git +ENV GITLAB_GIT_COMMIT_UPSTREAM=v12.3.5 +ENV GITLAB_GIT_COMMIT_ZH=v12.3.5-zh +ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 +ENV TZ=Asia/Shanghai + +RUN set -xe \ + && export DEBIAN_FRONTEND=noninteractive \ + && apt-get update \ + && apt-get install -yqq locales tzdata \ + && locale-gen en_US.UTF-8 \ + && rm -rf /var/lib/apt/lists/* \ + && wget -c -O /tmp/gitlab-${GITLAB_VERSION}-zh.tar.gz \ + https://gitlab.com/xhang/gitlab/-/archive/${GITLAB_VERSION}-zh/gitlab-${GITLAB_VERSION}-zh.tar.gz \ + && cd /tmp \ + && tar xf gitlab-${GITLAB_VERSION}-zh.tar.gz + +RUN yes|cp -ar /tmp/gitlab-${GITLAB_VERSION}-zh/* ${GITLAB_DIR}/ \ + && rm -rf /tmp/gitlab-${GITLAB_VERSION}-zh.tar.gz \ + /tmp/gitlab-${GITLAB_VERSION}-zh/ diff --git a/README.md b/README.md index df4938d..0fd00c7 100644 --- a/README.md +++ b/README.md @@ -1,22 +1,31 @@ +- twang2218的镜像不再更新,继续更新他的镜像 +- 新版本12.2以后采用直接替换文件的方式进行汉化(无编译过程),最新版本支持到12.3.5 +- 按照官方的说法,gitlab允许小版本直接升级,大版本需要阶段升级。 +- 跨版本升级示例:11.0.x -> 11.11.x -> 12.0.x -> 12.10.x -> 13.0.x # 支持的 tags 和对应的 `Dockerfile` -- [`9.2`, `9.2.10` (*9.2/Dockerfile*)](https://github.com/twang2218/gitlab-ce-zh/blob/master/9.2/Dockerfile) -- [`9.3`, `9.3.11` (*9.3/Dockerfile*)](https://github.com/twang2218/gitlab-ce-zh/blob/master/9.3/Dockerfile) -- [`9.4`, `9.4.6` (*9.4/Dockerfile*)](https://github.com/twang2218/gitlab-ce-zh/blob/master/9.4/Dockerfile) -- [`9.5`, `9.5.8` (*9.5/Dockerfile*)](https://github.com/twang2218/gitlab-ce-zh/blob/master/9.5/Dockerfile) -- [`10.0`, `10.0.3`, `latest` (*10.0/Dockerfile*)](https://github.com/twang2218/gitlab-ce-zh/blob/master/10.0/Dockerfile) -- [`testing` (*testing/Dockerfile*)](https://github.com/twang2218/gitlab-ce-zh/blob/master/testing/Dockerfile) +- [`9.2`, `9.2.10` (*9.2/Dockerfile*)](https://github.com/blueapple168/gitlab-ce-zh/blob/master/9.2/Dockerfile) +- [`9.3`, `9.3.11` (*9.3/Dockerfile*)](https://github.com/blueapple168/gitlab-ce-zh/blob/master/9.3/Dockerfile) +- [`9.4`, `9.4.6` (*9.4/Dockerfile*)](https://github.com/blueapple168/gitlab-ce-zh/blob/master/9.4/Dockerfile) +- [`9.5`, `9.5.8` (*9.5/Dockerfile*)](https://github.com/blueapple168/gitlab-ce-zh/blob/master/9.5/Dockerfile) +- [`10.0`, `10.0.3` (*10.0/Dockerfile*)](https://github.com/blueapple168/gitlab-ce-zh/blob/master/10.0/Dockerfile) +- [`11.1`, `11.1.4` (*11.1/Dockerfile*)](https://github.com/blueapple168/gitlab-ce-zh/blob/master/11.1/Dockerfile) +- [`11.11`, `11.11.8` (*11.11/Dockerfile*)](https://github.com/blueapple168/gitlab-ce-zh/blob/master/11.11/Dockerfile) +- [`12.0`, `12.0.9` (*12.0/Dockerfile*)](https://github.com/blueapple168/gitlab-ce-zh/blob/master/12.0/Dockerfile) +- [`12.1`, `12.1.0` (*12.1/Dockerfile*)](https://github.com/blueapple168/gitlab-ce-zh/blob/master/12.1/Dockerfile) +- [`12.3`, `12.3.5` (*12.3/Dockerfile*)](https://github.com/blueapple168/gitlab-ce-zh/blob/master/12.3/Dockerfile) +- [`testing` (*testing/Dockerfile*)](https://github.com/blueapple168/gitlab-ce-zh/blob/master/testing/Dockerfile) + +[![Build Status](https://travis-ci.org/blueapple168/gitlab-ce-zh.svg?branch=master)](https://travis-ci.org/blueapple168/gitlab-ce-zh) +[![Image Layers and Size](https://images.microbadger.com/badges/image/blueapple/gitlab-ce-zh.svg)](http://microbadger.com/images/blueapple/gitlab-ce-zh) -[![Build Status](https://travis-ci.org/twang2218/gitlab-ce-zh.svg?branch=master)](https://travis-ci.org/twang2218/gitlab-ce-zh) -[![Image Layers and Size](https://images.microbadger.com/badges/image/twang2218/gitlab-ce-zh.svg)](http://microbadger.com/images/twang2218/gitlab-ce-zh) -[![Deploy to Docker Cloud](https://files.cloud.docker.com/images/deploy-to-dockercloud.svg)](https://cloud.docker.com/stack/deploy/?repo=https://github.com/twang2218/gitlab-ce-zh) # GitLab 中文社区版 这是汉化的 GitLab 社区版 Docker Image [twang2218/gitlab-ce-zh](https://hub.docker.com/r/twang2218/gitlab-ce-zh/),基于官方提供的 Docker Image [gitlab/gitlab-ce](https://hub.docker.com/r/gitlab/gitlab-ce/),以及 Larry Li 的汉化 (8.9以前的版本) 和谢航的汉化 (8.9 以后的版本) 而制作。 * 如果碰到汉化问题,欢迎到 来提交 Issue 甚至 Merge Request; -* 如果碰到镜像问题,欢迎到 来提交 Issue 或 Pull Request。 +* 如果碰到镜像问题,欢迎到 来提交 Issue 或 Pull Request。 大家的贡献才能让汉化项目变得更好。如果喜欢本项目,不要忘了加星标啊。 ☺ @@ -27,7 +36,7 @@ 如果想简单的运行一下看看,可以执行这个命令: ```bash -docker run -d -p 3000:80 twang2218/gitlab-ce-zh:10.0.3 +docker run -d -p 3000:80 blueapple/gitlab-ce-zh:12.3.5 ``` *可以将 `10.0.3` 换成你所需要的版本标签。* @@ -50,7 +59,7 @@ docker rm -fv <容器ID> version: '2' services: gitlab: - image: 'twang2218/gitlab-ce-zh:10.0.3' + image: 'blueapple/gitlab-ce-zh:12.3.5' restart: unless-stopped hostname: 'gitlab.example.com' environment: @@ -123,7 +132,7 @@ docker run -d \ -v gitlab-logs:/var/log/gitlab \ -v gitlab-data:/var/opt/gitlab \ --network gitlab-net \ - twang2218/gitlab-ce-zh:10.0.3 + blueapple/gitlab-ce-zh:12.3.5 ``` 如果需要进入容器修改配置文件,可以用 `docker exec` 命令进入容器: @@ -154,13 +163,13 @@ docker volume rm gitlab-config gitlab-datagitlab-logs * `testing` 是比较 [xhang 翻译项目](https://gitlab.com/xhang/gitlab) 的 `v10.0.3` 标签和 [`10-0-stable-zh` 分支](https://gitlab.com/xhang/gitlab/tree/10-0-stable-zh) 的差异生成汉化补丁,并基于官方镜像 `gitlab/gitlab-ce:10.0.3-ce.0` 应用汉化结果进行构建的。 -测试镜像将会在所对应分支发生改变后数分钟内开始构建镜像,构建成功后,会推送到 [Docker Hub 网站](https://hub.docker.com/r/twang2218/gitlab-ce-zh/),以方便测试,可以随时关注最新的[镜像标签列表](https://hub.docker.com/r/twang2218/gitlab-ce-zh/tags/)中所对应的构建时间。 +测试镜像将会在所对应分支发生改变后数分钟内开始构建镜像,构建成功后,会推送到 [Docker Hub 网站](https://hub.docker.com/r/blueapple/gitlab-ce-zh/),以方便测试,可以随时关注最新的[镜像标签列表](https://hub.docker.com/r/blueapple/gitlab-ce-zh/tags/)中所对应的构建时间。 运行测试镜像和运行其它镜像一样,可以用 `docker-compose` 的方法,也可以用之前最简命令的方法: ```bash -docker pull twang2218/gitlab-ce-zh:testing -docker run -d -p 3000:80 twang2218/gitlab-ce-zh:testing +docker pull blueapple/gitlab-ce-zh:testing +docker run -d -p 3000:80 blueapple/gitlab-ce-zh:testing ``` > 需要注意的是,这里的 `docker pull` 是必须的,因为测试镜像构建比较频繁,需要确保本地镜像是最新的镜像。如果是 `docker-compose`,则执行 `docker-compose pull` 来或取最新镜像。 @@ -221,7 +230,7 @@ docker run -d -p 3000:80 twang2218/gitlab-ce-zh:testing 例如: `./build.sh run 10.0.3` -这将会以命令 `docker run -d -P twang2218/gitlab-ce-zh:10.0.3` 来运行镜像。这里使用的是 `-P`,因此会随机映射端口。方便测试环境测试,避免和其它端口冲突。 +这将会以命令 `docker run -d -P blueapple/gitlab-ce-zh:10.0.3` 来运行镜像。这里使用的是 `-P`,因此会随机映射端口。方便测试环境测试,避免和其它端口冲突。 ```bash CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES