Skip to content

Running with Docker Compose


Attention!

Minimum required Docker version is 20.04.

Download the latest GitFlic self-hosted version.

  1. Download the enterprise image gitflic-server-ee.tar from your personal account under docker/images/

  2. Load the image into your system:

    docker load -i gitflic-server-ee.tar  
    
  3. Navigate to the docker folder with release files and edit the .env file:

    # .env  
    ...  
    GITFLIC_IMAGE=gitflic-server-ee:<current_tag>  
    ...  
    
  4. Adjust other settings if needed

  5. Generate SSH server certificate and RSA key pair:

    ssh-keygen -t ed25519 -N "" -q -f ./key.pem  
    openssl genpkey -algorithm RSA -out ./private_key.pem -pkeyopt rsa_keygen_bits:2048  
    openssl rsa -pubout -in private_key.pem -out ./public_key.pem  
    
  6. Create gitflic_cert volume and copy generated keys (find mount point with docker volume inspect gitflic_cert | grep Mountpoint):

    docker volume create gitflic_cert  
    sudo cp private_key.pem public_key.pem key.pem $(docker volume inspect gitflic_cert -f '{{.Mountpoint}}')  
    
  7. Start the system:

    docker compose --detach up  
    
  1. Generate SSH server certificate and RSA key pair:

    ssh-keygen -t ed25519 -N "" -q -f ./key.pem  
    openssl genpkey -algorithm RSA -out ./private_key.pem -pkeyopt rsa_keygen_bits:2048  
    openssl rsa -pubout -in private_key.pem -out ./public_key.pem  
    
  2. Create gitflic_cert volume and copy generated keys:

    docker volume create gitflic_cert  
    cp private_key.pem public_key.pem key.pem $(docker volume inspect gitflic_cert -f '{{.Mountpoint}}')  
    
  3. Navigate to the docker directory in the unpacked archive and edit .env if needed

  4. Start the system:

    docker compose --detach -f docker-compose.yaml --env-file .env up  
    

Default Login Credentials

  • Email: adminuser@admin.local
  • Password: qwerty123

Volume and Data Description

  • gitflic_data volume stores GitFlic application data
  • gitflic_etc volume stores GitFlic configuration
  • gitflic_cert volume stores certificates
  • pg_data volume stores PostgreSQL database
  • redis_data volume stores Redis database
  • .env is the main configuration file loaded by default
  • external.env is an optional file for overriding settings (database connections, email, elasticsearch). Can be empty/commented but must exist alongside docker-compose.yaml
  • TRANSPORT_URL parameter was removed from .env - now uses BASE_URL value
  • TRANSPORT_SSH parameter is only used during initial setup for correct SSH URL display. Can be modified later in GitFlic web interface
  • To add additional parameters to gitflic-server, create a .properties file (e.g. s3.properties) and place it in gitflic_etc volume. Changes will apply after restart. Avoid modifying application.properties directly

Automatic Translation!

This page has been translated using automated tools. The text may contain inaccuracies.