https://github.com/whisperpine/gitlab-compose
GitLab docker compose.
https://github.com/whisperpine/gitlab-compose
cloudflared deployment doker-compose gitlab terraform
Last synced: 8 months ago
JSON representation
GitLab docker compose.
- Host: GitHub
- URL: https://github.com/whisperpine/gitlab-compose
- Owner: whisperpine
- License: mit
- Created: 2023-12-30T12:52:12.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2025-06-05T05:17:14.000Z (8 months ago)
- Last Synced: 2025-06-26T18:52:02.055Z (8 months ago)
- Topics: cloudflared, deployment, doker-compose, gitlab, terraform
- Language: HCL
- Homepage:
- Size: 59.6 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# README
Deploy [GitLab](https://about.gitlab.com/) in your office and access it anywhere.
## File Notes
- [gitlab.rb](./gitlab.rb) is duplicated from */etc/gitlab/gitlab.rb*
(version v16.7.0-ee), which may be a handy reference.
- [setup-network.sh](./setup-network.sh) demonstrates how to create a docker network
with the [macvlan](https://docs.docker.com/network/drivers/macvlan/) driver type.
- [example.env](./example.env) is a template which is expected to be copied as
the `.env` file and edited further.
## Cloudflare Tunnels
[Cloudflare Tunnel](https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/)
provides a secure way to host without a public IP address.
It's recommended to set up infrastructures like Cloudflare Tunnel by [Terraform](https://www.terraform.io/).
Read more in [terraform/README.md](./terraform/README.md).
## Feature Flags
On self-hosted GitLab, you may choose to enable or disable certain [feature flags](https://docs.gitlab.com/ee/user/feature_flags).
Refer to GitLab Docs:
[Enable and disable GitLab features deployed behind feature flags](https://docs.gitlab.com/ee/administration/feature_flags).
Here's a quick note:
```sh
# enter interactive tty of gitlab container.
docker compose exec -it gitlab bash
# enter gitlab-rails console (this command may take several minutes).
sudo gitlab-rails console
```
Commonly used commands in gitlab-rails console
```rb
# enable "example_feature" feature flag.
Feature.enable(:example_feature)
# check if "example_feature" is enabled.
Feature.enabled?(:example_feature)
# disable "example_feature" feature flag.
Feature.disable(:example_feature)
# unset "example_feature" so that GitLab falls back to the default.
Feature.remove(:example_feature)
```
## Admin Settings
Disable [event data tracking](https://docs.gitlab.com/administration/settings/event_data/).