GNU/Linux >> Znalost Linux >  >> Panels >> Docker

Jak nainstalovat Gitea na Ubuntu pomocí Dockeru

Úvod

Při práci na vývoji softwaru je důležité umět spravovat zdrojový kód efektivním a sledovatelným způsobem. Správa zdrojového kódu (SCM ) systémy jsou vynikajícím způsobem, jak poskytnout efektivní a flexibilní proces pro práci na projektech jakékoli velikosti s libovolným počtem vývojářů. V průběhu let existovalo mnoho různých částí softwaru SCM, od CVS po SubVersion, Perforce po Mercurial, ale současným lídrem v oboru je Git, který zaznamenal velký růst díky popularitě webů, jako jsou GitHub a GitLab.

U bezplatných účtů na těchto službách zaměřených na veřejná úložiště s otevřeným zdrojovým kódem však možnost pracovat na soukromém nebo proprietárním softwaru znamená pro vývojáře náklady. Navíc je přístup k úložišti svěřen externí organizaci a mnozí by raději řídili svůj vlastní software od začátku do konce.

Za tímto účelem bylo v posledních několika letech vyvinuto několik samostatně hostovaných řešení, jako jsou Gogs, Gitea a GitLab. Tento tutoriál se zaměřuje na nastavení jednoho z nejpopulárnějších řešení, Gitea, které vám umožní hostovat soukromá úložiště a spravovat vaše vlastní projekty po celou dobu jejich životního cyklu. Gitea je malý, samostatný a lehký, díky čemuž je jeho nasazení rychlý proces, aniž by došlo k narušení požadavků na hardware. Budete používat instalaci Gitea Docker, která zajišťuje, že software bude stále aktuální.

Předpoklady

Před zahájením tohoto kurzu byste měli mít následující:

  • Server Ubuntu 20.04 s uživatelem bez oprávnění root nakonfigurovaným pomocí sudo oprávnění, jak je popsáno v úvodním nastavení serveru pro Ubuntu 20.04.
  • Docker nainstalovaný na vašem serveru. Postupujte podle kroků 1 a 2 z Jak nainstalovat Docker na Ubuntu 20.04 pro instalaci Dockeru.
  • Docker Compose nainstalovaný na vašem serveru. Postupujte podle kroku 1 našeho průvodce Jak nainstalovat a používat Docker Compose na Ubuntu 20.04, abyste to mohli nastavit.
  • Název domény směřující na váš server. Pokud používáte DigitalOcean Droplet, můžete toho dosáhnout podle naší dokumentace k doménám a DNS. Tento výukový program bude používat your_domain v příkladech.

Krok 1 – Vytvoření uživatele Git

Gitea, stejně jako mnoho úložišť zdrojového kódu, používá SSH pro přístup ke vzdáleným úložištím. To umožňuje uživatelům řídit přístup ke svému kódu správou svých klíčů SSH v rámci samotné Gitea. Aby však uživatelé mohli přistupovat k hostiteli přes SSH, budete muset vytvořit git uživatele na hostitelském počítači. Tento krok je dokončen jako první, abyste získali přístup k ID uživatele a skupiny.

Nejprve vytvořte na hostiteli uživatele, který bude přijímat tato připojení:

  1. sudo adduser --system --shell /bin/bash --gecos 'Git Version Control' --group --disabled-password --home /home/git git

V tomto příkazu vytvoříte systémového uživatele, který používá bash jako svůj shell, ale nemá přihlašovací heslo. To vám umožňuje používat sudo spouštět příkazy jako tento uživatel, ale brání přihlášení jako tento uživatel. Můžete také nastavit domovský adresář uživatele na /home/git .

Tento příkaz vypíše nějaké informace o uživateli, kterého právě vytvořil:

OutputAdding system user `git' (UID 112) ...
Adding new group `git' (GID 119) ...
Adding new user `git' (UID 112) with group `git' ...
Creating home directory `/home/git' …

Poznamenejte si zde uvedené hodnoty UID a GID (v tomto případě UID 112 a GID 119 ), protože budou použity v budoucím kroku.

Krok 2 – Instalace obrazu Gitea Docker

Gitea má obrázek dostupný v globálním úložišti Docker, což znamená, že pomocí Docker Compose můžete tento obrázek nainstalovat a spustit jako službu s trochou práce navíc. Samotný obraz spouští webové a SSH služby Gitea, což Gitu umožňuje přístup z prohlížeče i z příkazového řádku.

Abyste mohli spustit kontejner Gitea, budete používat Docker Compose, deklarativní nástroj pro nastavení prostředí.

Začněte vytvořením adresáře pro hostování vaší služby a zadejte jej:

  1. mkdir ~/gitea
  2. cd ~/gitea

Až tam budete, vytvořte soubor s názvem docker-compose.yml pomocí preferovaného textového editoru. Následující příklad používá nano . Tento soubor bude obsahovat popisy kontejnerů, které poběží jako součást vaší instalace Gitea:

  1. nano docker-compose.yml

Do tohoto nového souboru přidejte následující:

~/gitea/docker-compose.yml
version: "3"

networks:
  gitea:
    external: false

services:
  server:
    image: gitea/gitea:1.16.5
    container_name: gitea
    environment:
      - USER_UID=UID_from_step_1
      - USER_GID=GID_from_step_1
    restart: always
    networks:
      - gitea
    volumes:
      - ./gitea:/data
      - /home/git/.ssh/:/data/git/.ssh
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
    ports:
      - "127.0.0.1:3000:3000"
      - "127.0.0.1:2222:22"

Pojďme si projít, co tento soubor dělá:

  • version: "3" :to umožňuje Docker Compose, o jakou verzi konfiguračního souboru se jedná.
  • networks :tato sekce deklaruje síťové nastavení naší kolekce kontejnerů. V tomto případě gitea síť je vytvořena, ale není vystavena externě.
  • services
    • image: gitea/gitea:1.16.5 :to určuje, že budeme používat Gitea verze 1.16.5; můžete však změnit hodnotu za dvojtečkou a určit další verze, ať už konkrétní vydání, hlavní verzi, jako je :1 , nebo značku jako :latest nebo :dev .
    • environment :sekce prostředí specifikuje proměnné prostředí, které budou dostupné pro bitovou kopii během instalace a spuštění. V tomto případě specifikujeme ID uživatele a skupiny pro prostředí pomocí UID a GID poskytnutých ve výstupu adduser příkaz v kroku 1.
    • restart: always :tento řádek dává Dockeru pokyn, aby vždy restartoval kontejner, pokud selže, ať už proto, že se zhroutí samotný kontejner nebo hostitelský počítač; Gitea se v podstatě spustí při startu.
    • networks :to určuje, že služba Gitea bude mít přístup a bude přístupná v síti uvedené výše.
    • ./gitea:/data a /home/git/.ssh/:/data/git/.ssh :toto jsou místa, kam bude Gitea ukládat svá úložiště a související data. Aktuálně je to mapováno do složky s názvem gitea v aktuálním adresáři. Docker tuto složku vytvoří při spuštění kontejneru, pokud neexistuje. .ssh složka bude popsána dále v kroku 6.
    • /etc/timezone a /etc/localtime :tyto dva soubory obsahují informace o časovém pásmu a čase na hostitelském počítači. Tím, že je namapujete přímo do kontejneru jako soubory pouze pro čtení (určené koncovým :ro část definic), kontejner bude mít stejné informace jako hostitel.
    • ports :Gitea naslouchá připojení na dvou portech. Naslouchá připojení HTTP na portu 3000 , kde obsluhuje webové rozhraní pro úložiště zdrojového kódu a naslouchá připojení SSH na portu 22 . V tomto případě si ponecháváte port 3000 pro připojení HTTP tak, že jej namapujete na stejné číslo a port na kontejneru Gitea namapujete z obvyklého 22 na 2222 aby nedošlo ke střetu portů. V kroku 6 nastavíte shim SSH, který na požádání přesměruje provoz do Gitea.

Poznámka: Toto je minimální příklad souboru Docker Compose pro Gitea. Existuje několik dalších možností, které lze zahrnout, jako je použití MySQL nebo PostGreSQL jako záložní databáze nebo pojmenovaného svazku pro úložiště. Toto minimální nastavení používá SQLite jako záložní databázi a svazek pomocí adresáře s názvem gitea pro skladování. Více o těchto možnostech si můžete přečíst v dokumentaci Gitea.

Uložte a zavřete soubor. Pokud jste použili nano Chcete-li soubor upravit, můžete tak učinit stisknutím CTRL + X , Y a poté ENTER .

S tímto souborem pak můžete kontejnery vyvolat pomocí Docker Compose:

  1. docker-compose up

Tento příkaz stáhne obrázky, spustí kontejner Gitea a vrátí výstup takto:

Output[+] Running 9/9
 ⠿ server Pulled                                                                                                  8.2s
   ⠿ e1096b72685a Pull complete                                                                                   1.4s
   ⠿ ac9df86bb932 Pull complete                                                                                   3.3s
   ⠿ 6d34ed99b58a Pull complete                                                                                   3.4s
   ⠿ a8913d040fab Pull complete                                                                                   3.6s
   ⠿ a5d3a72a2366 Pull complete                                                                                   5.3s
   ⠿ 1f0dcaae29cc Pull complete                                                                                   5.6s
   ⠿ f284bcea5adb Pull complete                                                                                   7.3s
   ⠿ 0f09c34c97e3 Pull complete                                                                                   7.5s
[+] Running 2/2
 ⠿ Network gitea_gitea  Created                                                                                   0.2s
 ⠿ Container gitea      Created                                                                                   0.2s
Attaching to gitea
gitea  | Generating /data/ssh/ssh_host_ed25519_key...
gitea  | Generating /data/ssh/ssh_host_rsa_key...
gitea  | Generating /data/ssh/ssh_host_dsa_key...
gitea  | Generating /data/ssh/ssh_host_ecdsa_key...
gitea  | Server listening on :: port 22.
gitea  | Server listening on 0.0.0.0 port 22.
gitea  | 2022/03/31 17:26:21 cmd/web.go:102:runWeb() [I] Starting Gitea on PID: 14
gitea  | 2022/03/31 17:26:21 ...s/install/setting.go:21:PreloadSettings() [I] AppPath: /usr/local/bin/gitea
gitea  | 2022/03/31 17:26:21 ...s/install/setting.go:22:PreloadSettings() [I] AppWorkPath: /app/gitea
gitea  | 2022/03/31 17:26:21 ...s/install/setting.go:23:PreloadSettings() [I] Custom path: /data/gitea
gitea  | 2022/03/31 17:26:21 ...s/install/setting.go:24:PreloadSettings() [I] Log path: /data/gitea/log
gitea  | 2022/03/31 17:26:21 ...s/install/setting.go:25:PreloadSettings() [I] Configuration file: /data/gitea/conf/app.ini
gitea  | 2022/03/31 17:26:21 ...s/install/setting.go:26:PreloadSettings() [I] Prepare to run install page
gitea  | 2022/03/31 17:26:21 ...s/install/setting.go:29:PreloadSettings() [I] SQLite3 is supported
gitea  | 2022/03/31 17:26:21 cmd/web.go:208:listen() [I] Listen: http://0.0.0.0:3000
gitea  | 2022/03/31 17:26:21 cmd/web.go:212:listen() [I] AppURL(ROOT_URL): http://localhost:3000/

To však ponechá kontejner spuštěný v popředí a zastaví se, jakmile proces ukončíte pomocí Ctrl + C nebo ztrátou spojení. Chcete-li, aby kontejner běžel na pozadí jako samostatný proces, můžete připojit -d příznak příkazu Compose:

  1. docker-compose up -d

Při spuštění kontejneru budete upozorněni a poté se vrátíte do vašeho shellu.

Krok 3 – Instalace Nginx jako reverzního proxy

Spuštění webové služby, jako je Gitea, za reverzním proxy je běžnou praxí, protože moderní serverový software, jako je Apache nebo Nginx, může snadněji zpracovávat více služeb na jednom počítači, vyrovnávat zatížení na více serverech a zpracovávat SSL. Navíc vám to umožní nastavit název domény odkazující na vaši instanci Gitea běžící na standardních portech HTTP(S).

Pro účely tohoto tutoriálu použijeme Nginx. Nejprve aktualizujte seznamy balíčků na svém hostitelském počítači:

  1. sudo apt update

Dále nainstalujte Nginx pomocí apt :

  1. sudo apt install nginx

Nyní, když používáte firewall, ufw , budete muset povolit přístup k těmto portům:

  1. sudo ufw allow "Nginx Full"

Jakmile toto nainstalujete, měli byste mít přístup k serveru v prohlížeči na adrese http://your_domain . To vás zavede na velmi jednoduchou stránku, která vás přivítá v Nginx.

V tomto okamžiku budete muset vytvořit reverzní záznam proxy, abyste nasměrovali příchozí provoz přes Nginx do instance Gitea spuštěné v Dockeru. Vytvořte nový soubor v sites-available Nginx adresář pomocí preferovaného textového editoru. Následující příklad používá nano :

  1. sudo nano /etc/nginx/sites-available/gitea

V tomto souboru nastavte nový blok serveru s požadavky na / proxy k vaší instanci Gitea:

/etc/nginx/sites-available/gitea
server {
    # Listen for requests on your domain/IP address.
    server_name your_domain;

    root /var/www/html;

    location / {
        # Proxy all requests to Gitea running on port 3000
        proxy_pass http://localhost:3000;
        
        # Pass on information about the requests to the proxied service using headers
        proxy_set_header HOST $host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

Po dokončení úprav soubor uložte a zavřete.

Poznámka: Další informace o pochopení toho, co se děje v rámci těchto direktiv, najdete v kurzu Understanding Nginx HTTP Proxying, Load Balancing, Buffering and Caching.

Nginx určuje, jaké weby bude skutečně zobrazovat na základě toho, zda jsou tyto soubory přítomny v jeho sites-enabled adresář. To je spravováno pomocí symbolických odkazů směřujících na soubory v sites-available adresář. Budete muset vytvořit jeden z těchto symbolických odkazů, aby Nginx mohl začít sloužit Gitea:

  1. sudo ln -s /etc/nginx/sites-available/gitea /etc/nginx/sites-enabled/gitea

Než restartujete Nginx, aby se vaše změny projevily, měli byste nechat Nginx sám zkontrolovat, zda jsou tyto změny platné, testováním jeho konfigurace.

  1. sudo nginx -t

Pokud je vše v pořádku, tento příkaz vrátí výstup jako následující:

Outputnginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Pokud se vyskytnou nějaké problémy, řekne vám, co a kde jsou.

Až budete připraveni pokročit s touto změnou, restartujte systémovou službu Nginx:

  1. sudo systemctl restart nginx

Nyní, když navštívíte http://your_domain ve vašem prohlížeči byste se měli ocitnout na úvodní stránce nastavení Gitea, kterou můžete vyplnit.

Krok 4 – Instalace Certbota a nastavení certifikátů TLS

Díky Certbotu a bezplatné certifikační autoritě Let’s Encrypt bude přidání šifrování TLS do vaší instalační aplikace Gitea vyžadovat pouze dva příkazy.

Nejprve nainstalujte Certbot a jeho plugin Nginx:

  1. sudo apt install certbot python3-certbot-nginx

Dále spusťte certbot v --nginx režimu a zadejte stejnou doménu, kterou jste použili v Nginx server_name konfigurační směrnice:

  1. sudo certbot --nginx -d your_domain_here

Budete vyzváni k souhlasu se smluvními podmínkami Let's Encrypt a k zadání e-mailové adresy.

Poté budete dotázáni, zda chcete přesměrovat veškerý provoz HTTP na HTTPS. Je to na vás, ale obecně se to doporučuje a je to bezpečné.

Poté Let’s Encrypt vaši žádost potvrdí a Certbot stáhne váš certifikát:

OutputCongratulations! You have successfully enabled https://your_domain

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=your_domain
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/your_domain/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/your_domain/privkey.pem
   Your cert will expire on 2022-05-09. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all* of
   your certificates, run "certbot renew"
 - Your account credentials have been saved in your Certbot
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Certbot so
   making regular backups of this folder is ideal.
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Certbot automaticky znovu načte Nginx s novou konfigurací a certifikáty. Znovu načtěte svůj web ve svém prohlížeči a měl by vás automaticky přepnout na HTTPS, pokud zvolíte možnost přesměrování.

Váš web je nyní zabezpečený a můžete bezpečně pokračovat s webovým nastavením.

Další informace o zabezpečení domén pomocí Let’s Encrypt najdete v kurzu Jak zabezpečit Nginx pomocí Let’s Encrypt na Ubuntu 20.04.

Krok 5 — Konfigurace Gitea a přidání prvního uživatele

Nyní můžete přejít ke konfiguraci samotné Gitea a vytvoření prvního administrátora. Navštivte svou instanci Gitea otevřením https://your_domain v prohlížeči. Na úvodní konfigurační obrazovce Gitea bude pro službu několik možností:

Některé z nich, jako je název webu, závisí na vašem konkrétním případu použití, i když pro účely tohoto tutoriálu budete muset změnit následující:

  • Doména serveru: doménu serveru, kterou jste nastavili v kroku 3
  • Základní adresa URL Gitea: úplnou adresu URL, kterou budete používat pro přístup k Gitea v prohlížeči, včetně protokolu. Například https://your_domain .

Když uložíte změny konfigurace, budete přesměrováni na přihlašovací stránku Gitea.

Poznámka: Po uložení konfigurace se služba Gitea restartuje. Protože to může trvat několik sekund, můžete narazit na chybu Nginx oznamující 502 Bad Gateway . Pokud na tuto chybu narazíte, počkejte několik sekund a restartujte stránku.

Protože ještě nemáte uživatele, budete si ho muset nejprve vytvořit. Klikněte na odkaz Potřebujete účet? Zaregistrujte se nyní odkaz pod přihlašovacím formulářem pro registraci nového uživatele. Jako první uživatel v systému bude tento uživatel vytvořen jako správce. Pokud na konfigurační obrazovce nastavíte nastavení e-mailu, možná budete muset nejprve ověřit svůj účet.

Jakmile jste přihlášeni jako tento uživatel, klikněte na ikonu svého uživatele v pravém horním rohu stránky a poté klikněte na Správa webu z rozbalovací nabídky se dostanete na stránku, kde budete moci spouštět úlohy údržby, spravovat uživatelské účty a organizace a dále konfigurovat Gitea.

Vytvoření testovacího úložiště

Abyste mohli Gitea otestovat, jak na webovém rozhraní, tak pomocí samotného Gitu, vytvořte testovací úložiště. Toto úložiště můžete kdykoli později smazat.

Klikněte na + přihlaste se v pravém horním rohu stránky a poté klikněte na + Nové úložiště z rozbalovací nabídky. Zde se vám zobrazí obrazovka, která vám umožní pojmenovat a přizpůsobit úložiště informacemi, jako je jeho popis, nastavení, například zda je či není soukromé, a jakýkoli výchozí obsah, jako je README nebo .gitignore soubor.

Jakmile kliknete na Vytvořit úložiště , budete mít nové úložiště, se kterým si můžete hrát.

Krok 6 — Konfigurace SSH Shim

Posledním krokem procesu je příprava hostitelského počítače s podložkou SSH. Protože Gitea běží v kontejneru Docker, nemůže přijímat připojení SSH na výchozím portu 22 , protože to bude v rozporu s hostitelem. V souboru docker-compose.yml soubor, který jste vytvořili výše, byl Docker instruován, aby namapoval port na hostiteli na port 22 na kontejneru tak, aby akceptoval připojení SSH k portu 2222 . Navíc authorized_keys SSH soubor nebude ve výchozím nastavení přístupný pro někoho, kdo do hostitele připojí SSH.

Abyste to mohli vzít v úvahu, budete muset vytvořit SSH shim, který bude předávat SSH spojení do git uživatele na hostiteli do kontejneru. V souboru pro psaní jste také zadali, že USER v kontejneru bude mít ID uživatele a skupiny 1000, a na obrazovce konfigurace Gitea jste službě řekli, aby použila uživatele s názvem git .

Vytvoření uživatele Git a jeho klíče SSH

Dále budete muset pro uživatele vytvořit klíč SSH. Toto bude použito pouze v kroku níže a nebude sdíleno s nikým mimo hostitele.

  1. sudo -u git ssh-keygen -t rsa -b 4096 -C "Gitea Host Key"

Tento příkaz používá sudo vytvořit klíč SSH jako uživatel, kterého jste vytvořili výše. V tomto případě bude klíčem 4096bitový klíč RSA. Budete dotázáni na řadu otázek, například jaké heslo chcete pro klíč a jak pojmenovat soubor klíčů. Stiskněte ENTER pro každý z nich a ponecháte je prázdné, aby bylo možné přijmout výchozí nastavení.

Upozornění :Pokud na klíči nastavíte heslo, nebudete moci používat podložku.

Budete muset zajistit, aby uživatel v kontejneru Gitea tento klíč přijal. Můžete to udělat přidáním do .ssh/authorized_keys soubor:

  1. sudo -u git cat /home/git/.ssh/id_rsa.pub | sudo -u git tee -a /home/git/.ssh/authorized_keys
  2. sudo -u git chmod 600 /home/git/.ssh/authorized_keys

Všechny tyto příkazy fungují s podložkou, protože adresář /home/git/.ssh na hostiteli je připojen jako svazek na kontejner, což znamená, že obsah je mezi nimi sdílen. Když je přijato připojení k hostiteli přes git přes SSH, bude používat stejné authorized_keys soubor jako kontejner.

Vytvoření skriptu SSH Shim Script

Posledním krokem pro podložku je vytvoření pahýlu gitea příkaz na hostiteli. To je to, co umožňuje příkazům git pracovat přes SSH:když je vytvořeno připojení SSH, spustí se výchozí příkaz. Tato gitea příkaz na hostiteli je to, co bude proxy připojení SSH ke kontejneru.

Pro tento skript použijte cat pro zápis do souboru /usr/local/bin/gitea :

  1. cat <<"EOF" | sudo tee /usr/local/bin/gitea
  2. #!/bin/sh
  3. ssh -p 2222 -o StrictHostKeyChecking=no [email protected] "SSH_ORIGINAL_COMMAND=\"$SSH_ORIGINAL_COMMAND\" $0 $@"
  4. EOF

Příkaz v tomto skriptu SSH se přenese do kontejneru Gitea Docker a předá obsah původního příkazu používaného git .

Nakonec se ujistěte, že je skript spustitelný:

  1. sudo chmod +x /usr/local/bin/gitea

Testování připojení Git SSH

Vytahování a odesílání z úložišť Git můžete vyzkoušet ve své instanci Gitea přidáním klíče SSH k uživateli Gitea.

Budete potřebovat obsah vašeho veřejného klíče SSH. Toto se obvykle nachází v souboru s názvem něco jako ~/.ssh/id_rsa.pub , v závislosti na tom, který algoritmus jste použili při vytváření klíče:

  1. cat ~/.ssh/id_rsa.pub

Poznámka: Pokud potřebujete vytvořit klíč SSH poprvé, můžete se naučit, jak to udělat, v tomto tutoriálu Jak nastavit klíče SSH na Ubuntu 20.04.

Zkopírujte výstup tohoto příkazu.

V Gitea klikněte na ikonu svého uživatele v pravém horním rohu a vyberte Nastavení . Na stránce nastavení bude v horní části řada karet. Klikněte na Klíče SSH/GPG a poté Přidat klíč tlačítko vedle položky Spravovat klíče SSH . Vložte klíč do velké textové oblasti ve formuláři a poté klikněte na Přidat klíč tlačítko pod ním.

Nyní přejděte do testovacího úložiště, které jste vytvořili v kroku 3, a zkopírujte poskytnutou adresu URL SSH. Na místním počítači naklonujte úložiště:

  1. git clone git@your_domain:username/test

Toto použije SSH ke klonování úložiště. Pokud máte na svém klíči SSH nastaveno heslo, budete požádáni o jeho zadání.

Přesuňte se do tohoto adresáře, vytvořte nový soubor:

  1. cd test
  2. touch just_testing

Poté jej přidejte do fázovaných změn:

  1. git add just_testing

Nakonec tento soubor odevzdejte:

  1. git commit -am "Just testing pushing over SSH!"

Nyní byste měli být schopni odeslat změny do vzdáleného úložiště:

  1. git push origin master

Když obnovíte stránku v prohlížeči, váš nový soubor se objeví v úložišti.

Závěr

Nastavili jste službu Gitea pomocí Dockeru, abyste mohli sami hostovat vaše úložiště zdrojového kódu. Odtud budete moci pracovat na veřejných i soukromých úložištích pomocí známých pracovních postupů, jako jsou kontroly kódu s žádostí o stažení a projekty organizované organizací. Gitea také dobře funguje s různými nástroji pro kontinuální integraci a nasazení (CI/CD), jako jsou Drone, Jenkins a GoCD. Kromě toho vám používání svazků Docker, jako je tento, umožňuje rozšířit úložiště tak, aby se vešlo obsahu Git LFS (velké úložiště souborů) na síťovém nebo blokovém úložišti.


Docker
  1. Jak nainstalovat Docker na Ubuntu 18.04 / Ubuntu 18.10 / Ubuntu 19.04

  2. Jak nainstalovat Docker na CentOS

  3. Jak nainstalovat Docker na Ubuntu 18.04?

  1. Jak nainstalovat Docker na Ubuntu 18.04

  2. Jak nainstalovat Kubernetes na Ubuntu 18.04

  3. Jak nainstalovat Docker Compose na Ubuntu 18.04

  1. Jak nainstalovat Rancher na Ubuntu

  2. Jak nainstalovat Docker Compose na Ubuntu 20.04

  3. Jak nainstalovat Docker na Ubuntu 22.04