Gogs: Różnice pomiędzy wersjami

 
(Nie pokazano 4 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:
mkdir -p ~/go
+
<pre>wget https://github.com/gogs/gogs/archive/refs/tags/v0.13.0.zip
echo 'export GOPATH=$HOME/go' >> $HOME/.bash_profile
+
unzip v0.13.0.zip
echo 'export PATH=$PATH:$GOPATH/bin' >> $HOME/.bash_profile
+
cd gogs-0.13.0
source $HOME/.bash_profile
+
go build -o gogs
go get -u github.com/gogs/gogs
+
</pre>
cd $GOPATH/src/github.com/gogs/gogs
 
go build
 
  
 
=== 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ę. Po tym należy:
+
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.
# Podać dane dostępowe do MySQL (bądź PostgreSQL).
 
# Wypełnić:
 
#* Run User - ''login'' do serwera ''Mydevil'',
 
#* Domain - ''sX.mydevil.net'', gdzie X to numer serwra ''MyDevil'',
 
#* Application URL: http://''domena''/.
 
# Opcjonalnie podać dane do skonfigurowanej skrzynki pocztowej.
 
# Podać dane dla konta administratora (nazwą konta nie może być admin).
 
 
 
Po wypełnieniu pól należy kliknąć ''Install Gogs''.
 
  
 
=== Automatyczne uruchomienie po restarcie  ===
 
=== Automatyczne uruchomienie po restarcie  ===
Linia 53: Linia 30:
 
<pre>
 
<pre>
 
#!/bin/bash
 
#!/bin/bash
export GOPATH=$HOME/go
+
export PATH=$HOME/bin:$PATH
export PATH=$PATH:$GOPATH/bin
+
nohup ~/gogs-0.13.0/gogs web -p numer_zarezerwowanego_portu
cd $GOPATH/src/github.com/gogs/gogs
 
nohup ./gogs web -p numer_zarezerwowanego_portu
 
 
</pre>
 
</pre>
  
Ustawić możliwość wykoywania skryptu:
+
Ustawić możliwość wykonywania skryptu:
 
<code>
 
<code>
 
chmod +x gogscron.sh
 
chmod +x gogscron.sh
Linia 66: Linia 41:
 
Celem automatycznego startu Gogs po restarcie serwera, należy w tabeli [[Cron]] (uruchomienie edycji z poziomu wiersza poleceń <code>crontab -e</code>) linijkę
 
Celem automatycznego startu Gogs po restarcie serwera, należy w tabeli [[Cron]] (uruchomienie edycji z poziomu wiersza poleceń <code>crontab -e</code>) linijkę
 
<code>@reboot /home/login/gogscron.sh</code>
 
<code>@reboot /home/login/gogscron.sh</code>
 +
Gdzie login to nazwa loginu konta hostingowego.
  
 
=== Integracja z repozytoriami MyDevil.net ===
 
=== Integracja z repozytoriami MyDevil.net ===

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