Omien Forgejo Runnerien pyörittäminen Codebergissä – Devan opas itsenäiseen CI/CD:hen

Omien Forgejo Runnerien pyörittäminen Codebergissä – Devan opas itsenäiseen CI/CD:hen

Tou 22, 2026 codeberg forgejo ci-cd docker self-hosting github-alternative devops automation

Miksi kannattaa hostata oma CI/CD-runner?

Codeberg on monille tuttu GitHub-vaihtoehto, mutta sen yhteisöllinen jaettujen resurssien käyttö voi joskus tuottaa jonkin verran viiveitä. Kun haluat parempaa suorituskykyä tai vain kontrolloida CI/CD-ympäristöäsi itse, ratkaisu on yksinkertainen: hostaa oma Forgejo-runner.

Runners eivät vaadi porttien avaamista, sillä ne ottavat yhteyttä ulospäin Codebergiin. Siksi ne toimivat hyvin sekä VPS:llä että kotipalvelimella.

Miten järjestelmä toimii?

Runner on käytännössä työntekijä, joka hakee tehtäviä Codebergistä ja suorittaa ne. Turvallisuuden vuoksi runner pyörii Docker-in-Docker-asetelmassa, joka eristää sen isäntäkoneen Dockerista. Näin vältetään suoria vaikutuksia isäntäjärjestelmään.

Docker Compose -asetelma

Perusasetelma koostuu kahdesta kontista. Alla oleva Docker Compose -tiedosto luo eristetyn Docker-ympäristön ja runnerin, joka käyttää sitä:

version: '3.8'

services:
  docker-in-docker:
    image: docker:dind
    container_name: 'docker_dind'
    privileged: 'true'
    command: ['dockerd', '-H', 'tcp://0.0.0.0:2375', '--tls=false']
    restart: 'unless-stopped'

  runner:
    image: 'data.forgejo.org/forgejo/runner:12'
    links:
      - docker-in-docker
    depends_on:
      docker-in-docker:
        condition: service_started
    container_name: 'runner'
    environment:
      DOCKER_HOST: tcp://docker-in-docker:2375
    user: 1001:1001
    volumes:
      - ./data:/data
    restart: 'unless-stopped'
    command: 'forgejo-runner daemon --config runner-config.yml'

Valmistelut ennen käynnistystä

Ennen konttien käynnistystä täytyy luoda hakemistorakenne ja säätää oikeudet. Suosittelemme sijoittamaan asetelmaa /opt/forgejo-runner -hakemistoon. Käynnistä seuraavat komennot:

cd /opt/forgejo-runner
mkdir -p data/.cache
chown -R 1001:1001 data
chmod 775 data/.cache
chmod g+s data/.cache

Next, luo oletusasetustiedosto:

sudo sh -c 'docker run --rm data.forgejo.org/forgejo/runner:12 forgejo-runner generate-config > data/runner-config.yml'

Rekisteröi runner Codebergiin

Rekisteröinti tapahtaa Codebergin asetuksissa kohdassa Actions → Runners. Luo uusi runner, anna sille nimi ja säädä kuvaus. Codeberg antaa sinulle UUID:n ja Tokenin – merkitse ne muistiin,因为

Read in other languages:

RU BG EL CS UZ TR SV RO PT PL NB NL HU IT FR ES DE DA ZH-HANS EN