GitLab: Difference between revisions
(11 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
==Administration== | ==Kubernetes Administration== | ||
Here are notes on running your own gitlab instance. | Notes on deploying GitLab using their Helm chart. | ||
===Setup=== | |||
To use your own PVs and PVCs, | |||
* Create your own PVs and PVCs for gitaly, postgres, and redis. | |||
* Setup a PV for minio. | |||
** Note that the gitaly PVC should be named <code>repo-data-gitlab-gitaly-0</code> | |||
* Set the following values: | |||
<pre> | |||
minio: | |||
replicas: 2 | |||
persistence: | |||
volumeName: gitlab-minio | |||
redis: | |||
persistence: | |||
existingClaim: gitlab-redis | |||
postgresql: | |||
persistence: | |||
existingClaim: gitlab-postgres | |||
</pre> | |||
===Migration from Omnibus Install=== | |||
See [https://docs.gitlab.com/charts/installation/migration/package_to_helm.html Migrate from the Linux package to the Helm chart] | |||
===Docker-in-docker CI/CD=== | |||
The Gitlab CI/CD is useful for building docker images.<br> | |||
You will need to deploy setup Gitlab runners. | |||
Due to some issues with fastly [https://github.com/gliderlabs/docker-alpine/issues/307], you will want to set <code>command: ["--mtu=1300"]</code> on your <code>dind</code> service containers. | |||
==Omnibus Administration== | |||
Here are notes on running your own gitlab instance.<br> | |||
'''Note: I've migrated from the Omnibus install to the helm charts.''' | |||
===Terms=== | ===Terms=== | ||
* unicorn - this is the web server portion of gitlab | * unicorn - this is the web server portion of gitlab | ||
Line 21: | Line 54: | ||
gitlab_rails['lfs_enabled'] = true | gitlab_rails['lfs_enabled'] = true | ||
gitlab_rails['lfs_storage_path'] = "/var/opt/gitlab/gitlab-rails/shared/lfs-objects" | gitlab_rails['lfs_storage_path'] = "/var/opt/gitlab/gitlab-rails/shared/lfs-objects" | ||
</pre> | </pre> | ||
Line 45: | Line 62: | ||
** See [https://docs.gitlab.com/omnibus/settings/configuration.html#disable-storage-directories-management https://docs.gitlab.com/omnibus/settings/configuration.html#disable-storage-directories-management] for more details. | ** See [https://docs.gitlab.com/omnibus/settings/configuration.html#disable-storage-directories-management https://docs.gitlab.com/omnibus/settings/configuration.html#disable-storage-directories-management] for more details. | ||
=== | ===Email=== | ||
The easiest way if you have very few users like me is to setup a separate gmail account. | The easiest way if you have very few users like me is to setup a separate gmail account. | ||
Then use forwardemail.net such that the separate gmail account can send using your domain. | Then use forwardemail.net such that the separate gmail account can send using your domain. | ||
Line 54: | Line 71: | ||
gitlab_rails['gitlab_email_from'] = 'gitlab@mygitlabdomain.com' | gitlab_rails['gitlab_email_from'] = 'gitlab@mygitlabdomain.com' | ||
</pre> | </pre> | ||
===Container Registry=== | |||
In <code>/etc/gitlab/gitlab.rb</code>, edit the following: | |||
<pre> | |||
registry_external_url 'https://registry.gitlab.davidl.me' | |||
### Settings used by GitLab application | |||
gitlab_rails['registry_enabled'] = true | |||
gitlab_rails['registry_host'] = "registry.gitlab.davidl.me" | |||
gitlab_rails['registry_path'] = "/var/opt/gitlab/gitlab-rails/shared/registry" | |||
registry_nginx['enable'] = false | |||
</pre> | |||
Then have your reverse proxy to 5000. |