Installation and Setup of GitFlic Runner with Docker Type
Check the compatibility table for the required agent version and download it from the runner releases page. The latest runner version is available here.
Dependency Installation
- 
Install the required Docker Engine version sudo apt update && sudo apt install docker.io1.1 Remove conflicting packages ```shell for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done ```1.2 Set up Docker repository ```shell # Add Docker's official GPG key: sudo apt-get update sudo apt-get install ca-certificates curl sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.asc # Add the repository to Apt sources: echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update ```1.3 Install Docker packages ```shell sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin ```Follow Docker's official installation guide. 
- 
Install Java - Check available OpenJDK versions:
 sudo apt policy openjdk-11-jdk- Install the package:
 sudo apt install openjdk-11-jdk- Verify installation:
 java --version- Copy Axiom JDK deb package to remote server
 scp axiomjdk11-*.deb <username>@<ip>:~/- Install the package:
 sudo apt install ./axiomjdk11*.deb- Verify installation:
 java --version
Agent Installation
- 
Run installation script echo "deb [signed-by=/etc/apt/keyrings/gitflic.asc] https://registry.gitflic.ru/company/gitflic/package/-/deb main stable" | sudo tee -a /etc/apt/sources.list.d/gitflic.list sudo curl https://registry.gitflic.ru/company/gitflic/package/-/deb/dists/main/public-key.asc -o /etc/apt/keyrings/gitflic.asc sudo apt update && sudo apt install gitflic-runner -yq
- 
Create temp directory and extract runner package sudo mkdir /tmp/gitflic-runner sudo unzip runner_*.zip -d /tmp/gitflic-runner
- 
Create directory for runner.jar sudo mkdir -p /opt/gitflic-runner
- 
Copy runner.jar to target directory sudo cp /tmp/gitflic-runner/runner.jar /opt/gitflic-runner
- 
Create gitflic-runner user sudo useradd --no-create-home --system --shell /sbin/nologin gitflic-runner
- 
Add gitflic-runner to docker group sudo usermod -aG docker gitflic-runner
Agent Registration
- 
Access web interface GitFlic → Admin Panel → CI/CD http(s)://<Web Interface Address>/admin/runnersAgent registration on gitflic.ru is only available at company level Company Settings → CI/CD Agents https://gitflic.ru/company/<company_name>/setting/cicd/runners
- 
Copy and save URL and Token 
- 
Navigate to runner.jar directory cd /opt/gitflic-runner
- 
Run registration command sudo java -jar runner.jar register --url <url> --registration-token <token>Parameter Required Description --url <url>Yes URL copied in step 1 --registration-token <token>or--token <token>Yes Token copied in step 1 --name <name>No Agent name --tags <tags>No Agent tags (comma-separated) --registry-url <docker_registry_url>No Docker registry URL (required for private registry access) --registry-user <docker_registry_user>No Docker registry username (required for private registry access) --registry-password <docker_registry_password>No Transport token for registry auth (required for private registry access) --docker-image <image>No Default image when none specified in pipeline - Upon successful registration, the web interface will show the connected agent.
- A config directory containing application.properties will be created.
 
- 
Add required parameters to config/application.properties: runner.executor=docker docker.didEnable=false docker.host=unix:///var/run/docker.sock docker.registry-username= #Registry username docker.registry-password= #Registry password docker.registry-url= #Registry URL logging.file.name=data/log/server.log logging.level.root=INFOAdd additional parameters as needed. See parameter reference. 
- 
Set directory ownership sudo chown -R gitflic-runner:gitflic-runner /opt/gitflic-runner
Windows Docker Socket Path
For Windows Docker hosts, use npipe interface:
docker.host=npipe:////./pipe/docker_engine  
Docker Hub Alternative
Due to Docker Hub limitations, configure GitFlic Docker Registry in config/application.properties:
docker.registry-username= #gitflic.ru username  
docker.registry-password= #gitflic.ru transport token  
docker.registry-url=https\://registry.gitflic.ru  
Legacy Agent Support (<3.1.1)
For older agents, add these parameters to handle helper image:
runner.helperImage=registry.gitflic.ru/company/gitflic/gitflic-runner-helper:{agent version}  
docker.registry-username= #gitflic.ru username  
docker.registry-password= #gitflic.ru transport token  
docker.registry-url=https\://registry.gitflic.ru  
Agent Startup
Run startup command
sudo -u gitflic-runner java -jar runner.jar start --config=config/application.properties  
--config= specifies configuration file location.  
- 
Create systemd unit file touch /etc/systemd/system/gitflic-runner.service
- 
Add service configuration sudo cat <<EOF >> /etc/systemd/system/gitflic-runner.service [Unit] Description=Gitflic-runner [Service] User=gitflic-runner Group=gitflic-runner WorkingDirectory=/opt/gitflic-runner ExecStart=/usr/bin/java -jar runner.jar start --config=config/application.properties ExecStop=/bin/kill -s 15 $MAINPID StandardOutput=journal StandardError=journal Restart=on-failure RestartSec=10 TimeoutStartSec=2min [Install] WantedBy=multi-user.target EOF/etc/systemd/system/gitflic-runner.service[Unit] Description=Gitflic-runner [Service] User=gitflic-runner Group=gitflic-runner WorkingDirectory=/opt/gitflic-runner ExecStart=/usr/bin/java -jar runner.jar start --config=config/application.properties ExecStop=/bin/kill -s 15 $MAINPID StandardOutput=journal StandardError=journal Restart=on-failure RestartSec=10 TimeoutStartSec=2min [Install] WantedBy=multi-user.target
- 
Reload systemd sudo systemctl daemon-reload
- 
Enable and start service systemctl enable gitflic-runner.service systemctl start gitflic-runner.service
Automatic Translation!
This page has been translated using automated tools. The text may contain inaccuracies.

