From 7829e50f44e2cf71cf0c46be57b29653530c8a28 Mon Sep 17 00:00:00 2001 From: SolidNerd Date: Fri, 22 Jul 2016 15:58:08 +0200 Subject: [PATCH] gitlab: upgrade to CE v8.10.0 --- Changelog.md | 3 +++ Dockerfile | 2 +- README.md | 54 +++++++++++++++++++------------------- VERSION | 2 +- docker-compose.yml | 2 +- docs/container_registry.md | 20 +++++++------- kubernetes/gitlab-rc.yml | 2 +- 7 files changed, 44 insertions(+), 41 deletions(-) diff --git a/Changelog.md b/Changelog.md index b596a37f..e6e42855 100644 --- a/Changelog.md +++ b/Changelog.md @@ -2,6 +2,9 @@ This file only reflects the changes that are made in this image. Please refer to the upstream GitLab [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) for the list of changes in GitLab. +**8.10.0** +- gitlab: upgrade to CE v8.10.0 + **8.9.6** - gitlab: upgrade to CE v8.9.6 diff --git a/Dockerfile b/Dockerfile index a3bdd87b..68d9e393 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ FROM sameersbn/ubuntu:14.04.20160710 MAINTAINER sameer@damagehead.com -ENV GITLAB_VERSION=8.9.6 \ +ENV GITLAB_VERSION=8.10.0 \ GOLANG_VERSION=1.5.3 \ GITLAB_SHELL_VERSION=3.2.0 \ GITLAB_WORKHORSE_VERSION=0.7.8 \ diff --git a/README.md b/README.md index b714f9ec..cfb2eb9b 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ [![Docker Repository on Quay.io](https://quay.io/repository/sameersbn/gitlab/status "Docker Repository on Quay.io")](https://quay.io/repository/sameersbn/gitlab) [![](https://badge.imagelayers.io/sameersbn/gitlab.svg)](https://imagelayers.io/?images=sameersbn/gitlab:latest 'Get your own badge on imagelayers.io') -# sameersbn/gitlab:8.9.6-1 +# sameersbn/gitlab:8.10.0 - [Introduction](#introduction) - [Changelog](Changelog.md) @@ -111,7 +111,7 @@ Automated builds of the image are available on [Dockerhub](https://hub.docker.co > **Note**: Builds are also available on [Quay.io](https://quay.io/repository/sameersbn/gitlab) ```bash -docker pull sameersbn/gitlab:8.9.6-1 +docker pull sameersbn/gitlab:8.10.0 ``` You can also pull the `latest` tag which is built from the repository *HEAD* @@ -174,7 +174,7 @@ docker run --name gitlab -d \ --env 'GITLAB_PORT=10080' --env 'GITLAB_SSH_PORT=10022' \ --env 'GITLAB_SECRETS_DB_KEY_BASE=long-and-random-alpha-numeric-string' \ --volume /srv/docker/gitlab/gitlab:/home/git/data \ - sameersbn/gitlab:8.9.6-1 + sameersbn/gitlab:8.10.0 ``` *Please refer to [Available Configuration Parameters](#available-configuration-parameters) to understand `GITLAB_PORT` and other configuration options* @@ -209,7 +209,7 @@ Volumes can be mounted in docker by specifying the `-v` option in the docker run ```bash docker run --name gitlab -d \ --volume /srv/docker/gitlab/gitlab:/home/git/data \ - sameersbn/gitlab:8.9.6-1 + sameersbn/gitlab:8.10.0 ``` ## Database @@ -242,7 +242,7 @@ docker run --name gitlab -d \ --env 'DB_NAME=gitlabhq_production' \ --env 'DB_USER=gitlab' --env 'DB_PASS=password' \ --volume /srv/docker/gitlab/gitlab:/home/git/data \ - sameersbn/gitlab:8.9.6-1 + sameersbn/gitlab:8.10.0 ``` #### Linking to PostgreSQL Container @@ -286,7 +286,7 @@ We are now ready to start the GitLab application. ```bash docker run --name gitlab -d --link gitlab-postgresql:postgresql \ --volume /srv/docker/gitlab/gitlab:/home/git/data \ - sameersbn/gitlab:8.9.6-1 + sameersbn/gitlab:8.10.0 ``` Here the image will also automatically fetch the `DB_NAME`, `DB_USER` and `DB_PASS` variables from the postgresql container as they are specified in the `docker run` command for the postgresql container. This is made possible using the magic of docker links and works with the following images: @@ -340,7 +340,7 @@ docker run --name gitlab -d \ --env 'DB_NAME=gitlabhq_production' \ --env 'DB_USER=gitlab' --env 'DB_PASS=password' \ --volume /srv/docker/gitlab/gitlab:/home/git/data \ - sameersbn/gitlab:8.9.6-1 + sameersbn/gitlab:8.10.0 ``` #### Linking to MySQL Container @@ -383,7 +383,7 @@ We are now ready to start the GitLab application. ```bash docker run --name gitlab -d --link gitlab-mysql:mysql \ --volume /srv/docker/gitlab/gitlab:/home/git/data \ - sameersbn/gitlab:8.9.6-1 + sameersbn/gitlab:8.10.0 ``` Here the image will also automatically fetch the `DB_NAME`, `DB_USER` and `DB_PASS` variables from the mysql container as they are specified in the `docker run` command for the mysql container. This is made possible using the magic of docker links and works with the following images: @@ -410,7 +410,7 @@ The image can be configured to use an external redis server. The configuration s ```bash docker run --name gitlab -it --rm \ --env 'REDIS_HOST=192.168.1.100' --env 'REDIS_PORT=6379' \ - sameersbn/gitlab:8.9.6-1 + sameersbn/gitlab:8.10.0 ``` ### Linking to Redis Container @@ -437,7 +437,7 @@ We are now ready to start the GitLab application. ```bash docker run --name gitlab -d --link gitlab-redis:redisio \ - sameersbn/gitlab:8.9.6-1 + sameersbn/gitlab:8.10.0 ``` ### Mail @@ -450,7 +450,7 @@ If you are using Gmail then all you need to do is: docker run --name gitlab -d \ --env 'SMTP_USER=USER@gmail.com' --env 'SMTP_PASS=PASSWORD' \ --volume /srv/docker/gitlab/gitlab:/home/git/data \ - sameersbn/gitlab:8.9.6-1 + sameersbn/gitlab:8.10.0 ``` Please refer the [Available Configuration Parameters](#available-configuration-parameters) section for the list of SMTP parameters that can be specified. @@ -470,7 +470,7 @@ docker run --name gitlab -d \ --env 'IMAP_USER=USER@gmail.com' --env 'IMAP_PASS=PASSWORD' \ --env 'GITLAB_INCOMING_EMAIL_ADDRESS=USER+%{key}@gmail.com' \ --volume /srv/docker/gitlab/gitlab:/home/git/data \ - sameersbn/gitlab:8.9.6-1 + sameersbn/gitlab:8.10.0 ``` Please refer the [Available Configuration Parameters](#available-configuration-parameters) section for the list of IMAP parameters that can be specified. @@ -547,7 +547,7 @@ docker run --name gitlab -d \ --env 'GITLAB_SSH_PORT=10022' --env 'GITLAB_PORT=10443' \ --env 'GITLAB_HTTPS=true' --env 'SSL_SELF_SIGNED=true' \ --volume /srv/docker/gitlab/gitlab:/home/git/data \ - sameersbn/gitlab:8.9.6-1 + sameersbn/gitlab:8.10.0 ``` In this configuration, any requests made over the plain http protocol will automatically be redirected to use the https protocol. However, this is not optimal when using a load balancer. @@ -563,7 +563,7 @@ docker run --name gitlab -d \ --env 'GITLAB_HTTPS=true' --env 'SSL_SELF_SIGNED=true' \ --env 'NGINX_HSTS_MAXAGE=2592000' \ --volume /srv/docker/gitlab/gitlab:/home/git/data \ - sameersbn/gitlab:8.9.6-1 + sameersbn/gitlab:8.10.0 ``` If you want to completely disable HSTS set `NGINX_HSTS_ENABLED` to `false`. @@ -586,7 +586,7 @@ docker run --name gitlab -d \ --env 'GITLAB_SSH_PORT=10022' --env 'GITLAB_PORT=443' \ --env 'GITLAB_HTTPS=true' --env 'SSL_SELF_SIGNED=true' \ --volume /srv/docker/gitlab/gitlab:/home/git/data \ - sameersbn/gitlab:8.9.6-1 + sameersbn/gitlab:8.10.0 ``` Again, drop the `--env 'SSL_SELF_SIGNED=true'` option if you are using CA certified SSL certificates. @@ -634,7 +634,7 @@ Let's assume we want to deploy our application to '/git'. GitLab needs to know t docker run --name gitlab -it --rm \ --env 'GITLAB_RELATIVE_URL_ROOT=/git' \ --volume /srv/docker/gitlab/gitlab:/home/git/data \ - sameersbn/gitlab:8.9.6-1 + sameersbn/gitlab:8.10.0 ``` GitLab will now be accessible at the `/git` path, e.g. `http://www.example.com/git`. @@ -752,14 +752,14 @@ Also the container processes seem to be executed as the host's user/group `1000` ```bash docker run --name gitlab -it --rm [options] \ --env "USERMAP_UID=$(id -u git)" --env "USERMAP_GID=$(id -g git)" \ - sameersbn/gitlab:8.9.6-1 + sameersbn/gitlab:8.10.0 ``` When changing this mapping, all files and directories in the mounted data volume `/home/git/data` have to be re-owned by the new ids. This can be achieved automatically using the following command: ```bash docker run --name gitlab -d [OPTIONS] \ - sameersbn/gitlab:8.9.6-1 app:sanitize + sameersbn/gitlab:8.10.0 app:sanitize ``` ### Piwik @@ -986,7 +986,7 @@ Execute the rake task to create a backup. ```bash docker run --name gitlab -it --rm [OPTIONS] \ - sameersbn/gitlab:8.9.6-1 app:rake gitlab:backup:create + sameersbn/gitlab:8.10.0 app:rake gitlab:backup:create ``` A backup will be created in the backups folder of the [Data Store](#data-store). You can change the location of the backups using the `GITLAB_BACKUP_DIR` configuration parameter. @@ -1007,7 +1007,7 @@ Execute the rake task to restore a backup. Make sure you run the container in in ```bash docker run --name gitlab -it --rm [OPTIONS] \ - sameersbn/gitlab:8.9.6-1 app:rake gitlab:backup:restore + sameersbn/gitlab:8.10.0 app:rake gitlab:backup:restore ``` The list of all available backups will be displayed in reverse chronological order. Select the backup you want to restore and continue. @@ -1016,7 +1016,7 @@ To avoid user interaction in the restore operation, specify the timestamp of the ```bash docker run --name gitlab -it --rm [OPTIONS] \ - sameersbn/gitlab:8.9.6-1 app:rake gitlab:backup:restore BACKUP=1417624827 + sameersbn/gitlab:8.10.0 app:rake gitlab:backup:restore BACKUP=1417624827 ``` ## Automated Backups @@ -1041,7 +1041,7 @@ The `app:rake` command allows you to run gitlab rake tasks. To run a rake task s ```bash docker run --name gitlab -it --rm [OPTIONS] \ - sameersbn/gitlab:8.9.6-1 app:rake gitlab:env:info + sameersbn/gitlab:8.10.0 app:rake gitlab:env:info ``` You can also use `docker exec` to run raketasks on running gitlab instance. For example, @@ -1054,7 +1054,7 @@ Similarly, to import bare repositories into GitLab project instance ```bash docker run --name gitlab -it --rm [OPTIONS] \ - sameersbn/gitlab:8.9.6-1 app:rake gitlab:import:repos + sameersbn/gitlab:8.10.0 app:rake gitlab:import:repos ``` Or @@ -1073,7 +1073,7 @@ Copy all the **bare** git repositories to the `repositories/` directory of the [ ```bash docker run --name gitlab -it --rm [OPTIONS] \ - sameersbn/gitlab:8.9.6-1 app:rake gitlab:import:repos + sameersbn/gitlab:8.10.0 app:rake gitlab:import:repos ``` Watch the logs and your repositories should be available into your new gitlab container. @@ -1094,12 +1094,12 @@ To upgrade to newer gitlab releases, simply follow this 4 step upgrade procedure > **Note** > -> Upgrading to `sameersbn/gitlab:8.9.6-1` from `sameersbn/gitlab:7.x.x` can cause issues. It is therefore required that you first upgrade to `sameersbn/gitlab:8.0.5-1` before upgrading to `sameersbn/gitlab:8.1.0` or higher. +> Upgrading to `sameersbn/gitlab:8.10.0` from `sameersbn/gitlab:7.x.x` can cause issues. It is therefore required that you first upgrade to `sameersbn/gitlab:8.0.5-1` before upgrading to `sameersbn/gitlab:8.1.0` or higher. - **Step 1**: Update the docker image. ```bash -docker pull sameersbn/gitlab:8.9.6-1 +docker pull sameersbn/gitlab:8.10.0 ``` - **Step 2**: Stop and remove the currently running image @@ -1123,7 +1123,7 @@ Replace `x.x.x` with the version you are upgrading from. For example, if you are > **Note**: Since GitLab `8.0.0` you need to provide the `GITLAB_SECRETS_DB_KEY_BASE` parameter while starting the image. ```bash -docker run --name gitlab -d [OPTIONS] sameersbn/gitlab:8.9.6-1 +docker run --name gitlab -d [OPTIONS] sameersbn/gitlab:8.10.0 ``` ## Shell Access diff --git a/VERSION b/VERSION index 749c5d73..7f6758ef 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -8.9.6-1 +8.10.0 diff --git a/docker-compose.yml b/docker-compose.yml index c8aab2f5..5f77191b 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -22,7 +22,7 @@ services: gitlab: restart: always - image: sameersbn/gitlab:8.9.6-1 + image: sameersbn/gitlab:8.10.0 depends_on: - redis - postgresql diff --git a/docs/container_registry.md b/docs/container_registry.md index faf51c67..55db956e 100644 --- a/docs/container_registry.md +++ b/docs/container_registry.md @@ -18,7 +18,7 @@ Since `8.8.0` GitLab introduces container registry. GitLab is helping to authent # Available Parameters -Here is an example of all configuration parameters that can be used in the GitLab container. +Here is an example of all configuration parameters that can be used in the GitLab container. ``` ... @@ -96,7 +96,7 @@ services: gitlab: restart: always - image: sameersbn/gitlab:8.9.6-1 + image: sameersbn/gitlab:8.10.0 depends_on: - redis - postgresql @@ -165,8 +165,8 @@ With have here two options: ### Signed Certifcate If you have a signed certificate from a Trusted Certificate Authority you need only to copy the files in then `certs` folder and mount the folder in both containers (gitlab,registry) like in the docker-compose example. -After that you need to set an environment variable in each container. -In the **GitLab Container** you need to set `GITLAB_REGISTRY_KEY_PATH` this is the private key of the signed certificate. +After that you need to set an environment variable in each container. +In the **GitLab Container** you need to set `GITLAB_REGISTRY_KEY_PATH` this is the private key of the signed certificate. In the **Registry Container** you need to set `REGISTRY_AUTH_TOKEN_ROOTCERTBUNDLE` to the certificate file of the signed certifcate. For more info read [token auth configuration documentation][token-config]. @@ -217,7 +217,7 @@ Read more about the individual driver's config options in the > **Warning** GitLab will not backup Docker images that are not stored on the filesystem. Remember to enable backups with your object storage provider if desired. > > If you use **filesystem** as storage driver you need to mount the path from `GITLAB_REGISTRY_DIR` of the GitLab container in the registry container. So both container can access the registry data. -> If you don't change `GITLAB_REGISTRY_DIR` you will find your registry data in the mounted volume from the GitLab Container under `./gitlab/shared/registry`. This don't need to be seprated mounted because `./gitlab` is already mounted in the GitLab Container. If it will be mounted seperated the whole restoring proccess of GitLab backup won't work because gitlab try to create an folder under `./gitlab/shared/registry` /`GITLAB_REGISTRY_DIR` and GitLab can't delete/remove the mount point inside the container so the restoring process of the backup will fail. +> If you don't change `GITLAB_REGISTRY_DIR` you will find your registry data in the mounted volume from the GitLab Container under `./gitlab/shared/registry`. This don't need to be seprated mounted because `./gitlab` is already mounted in the GitLab Container. If it will be mounted seperated the whole restoring proccess of GitLab backup won't work because gitlab try to create an folder under `./gitlab/shared/registry` /`GITLAB_REGISTRY_DIR` and GitLab can't delete/remove the mount point inside the container so the restoring process of the backup will fail. > An example how it works is in the `docker-compose`. ### Example for Amazon Simple Storage Service (s3) @@ -282,7 +282,7 @@ docker stop registry gitlab && docker rm registry gitlab Execute the rake task with a removeable container. ```bash docker run --name gitlab -it --rm [OPTIONS] \ - sameersbn/gitlab:8.9.6-1 app:rake gitlab:backup:create + sameersbn/gitlab:8.10.0 app:rake gitlab:backup:create ``` ## Restoring Backups @@ -298,7 +298,7 @@ Execute the rake task to restore a backup. Make sure you run the container in in ```bash docker run --name gitlab -it --rm [OPTIONS] \ - sameersbn/gitlab:8.9.6-1 app:rake gitlab:backup:restore + sameersbn/gitlab:8.10.0 app:rake gitlab:backup:restore ``` The list of all available backups will be displayed in reverse chronological order. Select the backup you want to restore and continue. @@ -307,7 +307,7 @@ To avoid user interaction in the restore operation, specify the timestamp of the ```bash docker run --name gitlab -it --rm [OPTIONS] \ - sameersbn/gitlab:8.9.6-1 app:rake gitlab:backup:restore BACKUP=1417624827 + sameersbn/gitlab:8.10.0 app:rake gitlab:backup:restore BACKUP=1417624827 ``` # Upgrading from an existing GitLab installation @@ -318,7 +318,7 @@ If you want enable this feature for an existing instance of GitLab you need to d - **Step 1**: Update the docker image. ```bash -docker pull sameersbn/gitlab:8.9.6-1 +docker pull sameersbn/gitlab:8.10.0 ``` - **Step 2**: Stop and remove the currently running image @@ -370,7 +370,7 @@ docker run --name gitlab -d [PREVIOUS_OPTIONS] \ --env 'GITLAB_REGISTRY_API_URL=http://registry:5000/' \ --env 'GITLAB_REGISTRY_KEY_PATH=/certs/registry-auth.key' \ --link registry:registry -sameersbn/gitlab:8.9.6-1 +sameersbn/gitlab:8.10.0 ``` diff --git a/kubernetes/gitlab-rc.yml b/kubernetes/gitlab-rc.yml index 551677ae..6d880b73 100644 --- a/kubernetes/gitlab-rc.yml +++ b/kubernetes/gitlab-rc.yml @@ -14,7 +14,7 @@ spec: spec: containers: - name: gitlab - image: sameersbn/gitlab:8.9.6-1 + image: sameersbn/gitlab:8.10.0 env: - name: TZ value: Asia/Kolkata