Sign inSign up

cenk1cenk2/gitlab-tools

By cenk1cenk2

Updated 9 days ago

Runs Salamek/gitlab-tools in a container, which enables pull/push mirroring to Gitlab.

Image
0

4.7K

cenk1cenk2/gitlab-tools repository overview

docker-gitlab-tools

pipeline status Docker Pulls Docker Image Size (latest by date) Docker Image Version (latest by date) GitHub last commit

Description

This is the containerized version of the gitlab-tools. gitlab-tools enables you to synchronize repositories between different git servers.

The container itself includes everything that is required to run the gitlab-tools a UWSGI server to host the flask application, and an Nginx instance to stay in front of it.

With the latest revision it does not include RabbitMQ and Redis instances inside the container. You should use the variables to inject them directly.

Setup

You can run this application as a docker-compose stack. The image is hosted as cenk1cenk2/gitlab-tools on DockerHub. Check out the compose file for example configuration.

Environment Variables

You can pass the gitlab-tools configuration directly through environment variables without the need to run the CLI itself.

VariableDescription
LOG_LEVELSets the log level for the container. Can take values of "fatal", "error", "warn", "info", "debug", "trace"
GT_GITLAB_APP_IDYour application id for your Gitlab instance.
GT_GITLAB_APP_SECRETYour application secret for your Gitlab instance.
GT_GITLAB_URLYour URL pointing to your Gitlab instance.
GT_SERVER_NAMEOutward-facing URI of where this application will be hosted.
GT_SECRET_KEYSecret key for session storage.
GT_SQLALCHEMY_DATABASE_URIFull URL for SQLAlchemy to connect to the database. Should be in the format of: "postgresql://gitlab-tools:something@gitlab-tools-db/gitlab-tools"
GT_CELERY_BROKER_URLRabbitMQ connection string. Should be in the format of: "amqp://rmq:5672"
GT_CELERY_TASK_LOCK_BACKENDRedis connection string. Should be in the format of: "redis://redis:6379/0"
Persistent Storage

gitlab-tools uses the disk for storing data of SSH keys as well as the repositories themselves. The container runs the application under an unprivileged user called service and gitlab-tools uses the user home directory for the storage.

So to make this application work properly please mount a volume to /home/service to store the data persistently.

Tag summary

Content type

Image

Digest

sha256:f99234ec7

Size

508.7 MB

Last updated

9 days ago

docker pull cenk1cenk2/gitlab-tools