Zpět na blog
Únor 2, 2026Návody

Jak nastavit soukromý Git server na VPS

Kompletní průvodce nastavením vlastního soukromého Git serveru na VPS. Naučte se, jak hostovat Git repozitáře s plnou kontrolou a soukromím pomocí GitLabu, Gitea nebo holých repozitářů.

Jak nastavit soukromý Git server na VPS

Hostování vlastního Git serveru vám poskytuje úplnou kontrolu nad vašimi repozitáři kódu, zajišťuje soukromí a vyhýbá se závislosti na službách třetích stran. Ať už potřebujete jednoduchý holý repozitář nebo plně funkční platformu pro hostování Gitu, tento průvodce pokrývá více možností pro nastavení soukromého Git serveru na vašem VPS.

Proč hostovat vlastní Git server?

  • Úplné soukromí: Váš kód zůstává na vašem serveru
  • Žádná závislost na dodavateli: Plná kontrola nad vašimi repozitáři
  • Přizpůsobení: Konfigurujte přesně tak, jak chcete
  • Nákladově efektivní: Jeden server pro neomezené repozitáře
  • Soulad s předpisy: Splňte požadavky na rezidenci dat
  • Učení: Porozumějte vnitřním mechanismům Git serveru

Možnost 1: GitLab (plně funkční)

GitLab poskytuje kompletní DevOps platformu:

bash
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | bash
apt install gitlab-ce

gitlab-ctl reconfigure
# Přístup k GitLabu na http://ip-vaseho-serveru
# Výchozí uživatelské jméno: root
# Nastavte heslo při prvním přihlášení

Možnost 2: Gitea (lehký)

Gitea je lehký, samohostovaný Git služba:

bash
wget -O gitea https://dl.gitea.io/gitea/1.21.0/gitea-1.21.0-linux-amd64
chmod +x gitea
mv gitea /usr/local/bin/

# Vytvoření systemd služby
nano /etc/systemd/system/gitea.service
# Konfigurace a spuštění Gitea
systemctl enable gitea
systemctl start gitea

Možnost 3: Holý Git repozitář (jednoduchý)

Pro základní hostování Gitu bez webového rozhraní:

bash
mkdir -p /srv/git/mujprojekt.git
cd /srv/git/mujprojekt.git
git --bare init

# Nastavení správných oprávnění
chown -R git:git /srv/git
chmod -R 755 /srv/git

# Klonování z klienta:
git clone git@vas-server:/srv/git/mujprojekt.git

Konfigurace SSH přístupu

Nastavte SSH pro bezpečný přístup k Gitu:

bash
adduser git
su - git
mkdir .ssh
chmod 700 .ssh
nano .ssh/authorized_keys
# Přidejte veřejné klíče vývojářů
chmod 600 .ssh/authorized_keys

# Test připojení:
ssh git@vas-server

Doporučené postupy zabezpečení

  • Používejte SSH klíče místo hesel
  • Povolte dvoufaktorové ověřování (GitLab/Gitea)
  • Pravidelné zálohy repozitářů
  • Udržujte Git serverový software aktualizovaný
  • Nakonfigurujte firewall pro omezení přístupu
  • Používejte SSL/TLS pro webová rozhraní
  • Implementujte řízení přístupu a oprávnění
  • Sledujte protokoly pro podezřelou aktivitu

Strategie zálohování

Pravidelné zálohy jsou nezbytné:

bash
#!/bin/bash
# Skript pro zálohování Git repozitáře
BACKUP_DIR="/backup/git"
REPO_DIR="/srv/git"
DATE=$(date +%Y%m%d)

tar -czf $BACKUP_DIR/git-backup-$DATE.tar.gz $REPO_DIR
# Uchovávejte posledních 30 dní
find $BACKUP_DIR -name "*.tar.gz" -mtime +30 -delete