Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hardpixel/dokku-gitlab
Run official GitLab docker image on Dokku PaaS
https://github.com/hardpixel/dokku-gitlab
docker dokku gitlab omnibus
Last synced: about 2 months ago
JSON representation
Run official GitLab docker image on Dokku PaaS
- Host: GitHub
- URL: https://github.com/hardpixel/dokku-gitlab
- Owner: hardpixel
- Created: 2019-08-31T22:41:55.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-05-06T00:00:35.000Z (over 3 years ago)
- Last Synced: 2024-07-31T20:32:44.506Z (5 months ago)
- Topics: docker, dokku, gitlab, omnibus
- Language: Dockerfile
- Size: 5.86 KB
- Stars: 10
- Watchers: 4
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- Install-anything-on-Dokku - Gitlab
README
Dokku GitLab
============Instructions for installing [GitLab](https://gitlab.com) as a [Dokku](http://dokku.viewdocs.io/dokku) application, using the official [GitLab CE](https://hub.docker.com/_/gitlab-community-edition) Docker image.
Setup application
-----------------Create dokku application:
```
dokku apps:create gitlab
```Create storage folders:
```
mkdir -p /home/storage/gitlab/data
mkdir -p /home/storage/gitlab/logs
mkdir -p /home/storage/gitlab/config
```Mount storage folders:
```
dokku storage:mount gitlab /home/storage/gitlab/config:/etc/gitlab
dokku storage:mount gitlab /home/storage/gitlab/logs:/var/log/gitlab
dokku storage:mount gitlab /home/storage/gitlab/data:/var/opt/gitlab
```Set proxy ports map and docker options:
```
dokku proxy:ports-set gitlab http:80:80
dokku docker-options:add gitlab deploy '-p 2222:22'
```Edit configuration
------------------Create `gitlab.rb` in `/home/storage/gitlab/config` and add the following settings:
```ruby
# GitLab URL
##! URL on which GitLab will be reachable.
##! For more details on configuring external_url see:
##! https://docs.gitlab.com/omnibus/settings/configuration.html#configuring-the-external-url-for-gitlab
external_url 'https://gitlab.example.com'##! **Override only if you use a reverse proxy**
##! Docs: https://docs.gitlab.com/omnibus/settings/nginx.html#setting-the-nginx-listen-port
nginx['listen_port'] = 80##! **Override only if your reverse proxy internally communicates over HTTP**
##! Docs: https://docs.gitlab.com/omnibus/settings/nginx.html#supporting-proxied-ssl
nginx['listen_https'] = false
```Deploy application
------------------Clone this repository and push it to your dokku server:
```
git clone https://github.com/hardpixel/dokku-gitlab.git
cd dokku-gitlabgit remote add dokku [email protected]:gitlab
git push dokku master
```Enable SSL
----------Generate LetsEncrypt certificates:
```
dokku letsencrypt gitlab
```Configure GIT
-------------Update `ssh` config, located at `~/.ssh/config`, on your local machine:
```
Host gitlab.example.com
Port 2222
```Reconfigure GitLab
------------------Connect to the gitlab app container:
```
dokku enter gitlab
gitlab-ctl reconfigure
```Or run the command from outside the app container:
```
dokku run gitlab gitlab-ctl reconfigure
```Update GitLab
-------------Before updating you have to stop the running container or the update will fail.
```
dokku ps:stop gitlab
docker pull gitlab/gitlab-ce
dokku ps:rebuild gitlab
```