Gogs: Różnice pomiędzy wersjami

 
(Nie pokazano 3 pośrednich wersji utworzonych przez tego samego użytkownika)
Linia 10: Linia 10:
 
* Włączono możliwość korzystania z własnego oprogramowania - [[Binexec]].
 
* Włączono możliwość korzystania z własnego oprogramowania - [[Binexec]].
 
* Skonfigurowano skrzynkę pocztową w zarezerwowanej domenie (opcjonalnie).
 
* Skonfigurowano skrzynkę pocztową w zarezerwowanej domenie (opcjonalnie).
 
=== Instalacja Go ===
 
 
Przed instalacją "Gogs" należy zainstalować nową wersję "Go":
 
<pre>
 
wget https://dl.google.com/go/go1.14.2.freebsd-amd64.tar.gz
 
tar -zxf go1.14.2.freebsd-amd64.tar.gz
 
mkdir ~/bin
 
ln -s ~/go/bin/go ~/bin/ && ln -s ~/go/bin/gofmt ~/bin/
 
echo 'export PATH=$HOME/bin:$PATH' >> $HOME/.bash_profile
 
source $HOME/.bash_profile
 
</pre>
 
  
 
=== Instalacja Gogs ===
 
=== Instalacja Gogs ===
  
 
''Gogs'' trzeba zainstalować ze źródeł. Aby to zrobić należy wykonać następujące polecenia:
 
''Gogs'' trzeba zainstalować ze źródeł. Aby to zrobić należy wykonać następujące polecenia:
git clone --depth 1 https://github.com/gogs/gogs.git gogs
+
<pre>wget https://github.com/gogs/gogs/archive/refs/tags/v0.13.0.zip
cd gogs
+
unzip v0.13.0.zip
 +
cd gogs-0.13.0
 
go build -o gogs
 
go build -o gogs
 +
</pre>
  
 
=== Pierwsze uruchomienie ===
 
=== Pierwsze uruchomienie ===
  
Serwer należy uruchomić poleceniem <code>nohup ./gogs web -p ''zarezerwowany port''&</code>. Następnie należy uruchomić przeglądarkę internetową i wejść na wcześniej skonfigurowaną domenę oraz wypełnić dane instalacyjne w formularzu.
+
Serwer należy uruchomić poleceniem <code>nohup ~/gogs-0.13.0/gogs web -p ''zarezerwowany port''&</code>. Następnie należy uruchomić przeglądarkę internetową i wejść na wcześniej skonfigurowaną domenę oraz wypełnić dane instalacyjne w formularzu.
  
 
=== Automatyczne uruchomienie po restarcie  ===
 
=== Automatyczne uruchomienie po restarcie  ===
Linia 41: Linia 31:
 
#!/bin/bash
 
#!/bin/bash
 
export PATH=$HOME/bin:$PATH
 
export PATH=$HOME/bin:$PATH
nohup ~gogs/gogs web -p numer_zarezerwowanego_portu
+
nohup ~/gogs-0.13.0/gogs web -p numer_zarezerwowanego_portu
 
</pre>
 
</pre>
  

Aktualna wersja na dzień 19:37, 8 lis 2023

Gogs to manager repozytoriów Git napisany w Go.

Wstępna konfiguracja

Do uruchomienia Gogs należy najpierw zadbać o prawidłową konfigurację samej domeny. Przed przystąpieniem do dalszych kroków należy upewnić się, że:

  • Zarezerwowano jeden port tcp.
  • Domena jest prawidłowo dodana i skonfigurowana w naszym systemie DNS.
  • Została dodana Strona WWW z wskazaniem typu Proxy na zarezerwowany wcześniej port.
  • Stworzono bazę MySQL bądź PostgreSQL.
  • Włączono możliwość korzystania z własnego oprogramowania - Binexec.
  • Skonfigurowano skrzynkę pocztową w zarezerwowanej domenie (opcjonalnie).

Instalacja Gogs

Gogs trzeba zainstalować ze źródeł. Aby to zrobić należy wykonać następujące polecenia:

wget https://github.com/gogs/gogs/archive/refs/tags/v0.13.0.zip
unzip v0.13.0.zip
cd gogs-0.13.0
go build -o gogs

Pierwsze uruchomienie

Serwer należy uruchomić poleceniem nohup ~/gogs-0.13.0/gogs web -p zarezerwowany port&. Następnie należy uruchomić przeglądarkę internetową i wejść na wcześniej skonfigurowaną domenę oraz wypełnić dane instalacyjne w formularzu.

Automatyczne uruchomienie po restarcie

Z racji konieczności ręcznego startu gogs, przedstawiamy proces automatyzacji startu w razie restartu serwera hostującego.

Utworzyć w katalogu domowym plik gogscron.sh o treści:

#!/bin/bash
export PATH=$HOME/bin:$PATH
nohup ~/gogs-0.13.0/gogs web -p numer_zarezerwowanego_portu

Ustawić możliwość wykonywania skryptu: chmod +x gogscron.sh

Celem automatycznego startu Gogs po restarcie serwera, należy w tabeli Cron (uruchomienie edycji z poziomu wiersza poleceń crontab -e) linijkę @reboot /home/login/gogscron.sh Gdzie login to nazwa loginu konta hostingowego.

Integracja z repozytoriami MyDevil.net

Istnieje możliwość korzystania z Gogs z naszymi repozytoriami Git. Wystarczy stworzyć link symboliczny do wybranego repo:

cd /home/login/gogs-repositories/gogs_login/
rm -r gogs_repo.git
ln -s /home/login/repo/git/widoczność_repo/nazwa_repo gos_repo.git

SSH

Gogs domyślnie blokuje dostęp SSH do konta hostingowego. Umożliwia on jednak uruchomienie swego własnego wewnętrznego serwera SSH.

Linki Zewnętrzne