Mudanças entre as edições de "Gitea"

De MochilaWiki
Ir para navegaçãoIr para pesquisar
 
Linha 171: Linha 171:
 
</source>
 
</source>
  
 +
em /etc/cron.daily/backup_gitea
 +
#!/bin/bash
 +
cd "/home/git/"
 +
su - git -s /bin/bash -c  '/usr/local/bin/gitea dump -c /etc/gitea/app.ini'
  
gitea dump
+
Retenção
* https://github.com/go-gitea/gitea/issues/2436
+
em /etc/cron.weekly/gitea-retencao
 +
#!/bin/bash
 +
find /home/git -name "*.zip" -type f -mtime +30 -delete
  
 
* no cron
 
 
<source lang="bash">
 
<source lang="bash">
systemctl enable gitea-dump.timer
+
chmod +x /etc/cron.weekly/gitea-retencao
systemctl enable gitea-dump
+
/etc/init.d/cron restart
systemctl restart gitea-dump.timer
 
systemctl restart gitea-dump
 
systemctl daemon-reload
 
 
</source>
 
</source>
 
  
 
== Referências ==
 
== Referências ==

Edição atual tal como às 14h36min de 23 de maio de 2022

Atualizando o sistema e instalando git

sudo apt -y update
sudo apt -y install git bash-completion

adicionando usuário git para Gitea

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

criando usuário e banco de dados em PostgreSQL

createuser gitea
createdb -O gitea gitea

e em /var/lib/postgres/data/pg_hba.conf insira

local    gitea           gitea           peer

criando usuário e banco de dados em MySQL

Instalando MySQL

sudo apt -y install mysql-server

Acessando o prompt do MySQL

$ sudo mysql -u root -p

Criando o banco de dados e usuário

CREATE DATABASE gitea;
GRANT ALL PRIVILEGES ON gitea.* TO 'gitea'@'localhost' IDENTIFIED BY "StrongP@ssword";
FLUSH PRIVILEGES;
QUIT;

Configuração Apache 2

sudo apt-get install apache2 -y
echo "ServerName localhost" | sudo tee -a /etc/apache2/apache2.conf
sudo a2enmod proxy
sudo a2enmod proxy_http
sudo touch /etc/apache2/sites-available/gitea.conf
sudo a2ensite gitea
sudo nano /etc/apache2/sites-available/gitea.conf

Caso queirá desativar a configuração de vhost padrão do Apache rode o comando

sudo a2dissite 000-default.conf

Configuração do Apache

<VirtualHost *:80>
    ServerName git.example.com
    ProxyPreserveHost On
    ProxyRequests off
    ProxyPass / http://localhost:3000/
    ProxyPassReverse / http://localhost:3000/
</VirtualHost>

Reiniciando o Apache

sudo service apache2 stop
sudo service apache2 start
systemctl status apache2.service

Configurando Nginx

apt -y install nginx

rode o comando

sudo nano /etc/nginx/conf.d/gitea.conf

e copiei o conteúdo

server {
    listen 80;
    server_name git.example.com;

    location / {
        proxy_pass http://localhost:3000;
    }
}

reiniciando o Nginx

sudo systemctl restart nginx

Instalando Gitea no Debian 8 / Ubuntu 18.04

export VER=1.13.0
wget https://github.com/go-gitea/gitea/releases/download/v${VER}/gitea-${VER}-linux-amd64
chmod +x gitea-${VER}-linux-amd64
sudo mv gitea-${VER}-linux-amd64 /usr/local/bin/gitea
sudo mkdir -p /etc/gitea /var/lib/gitea/{custom,data,indexers,public,log}
sudo chown git:git /var/lib/gitea/{data,indexers,log}
sudo chmod 750 /var/lib/gitea/{data,indexers,log}
sudo chown root:git /etc/gitea
sudo chmod 770 /etc/gitea


rode o comando

sudo nano /etc/systemd/system/gitea.service

e copiei o conteúdo

[Unit]
Description=Gitea (Git with a cup of tea)
After=syslog.target
After=network.target
After=mysql.service

[Service]
LimitMEMLOCK=infinity
LimitNOFILE=65535
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/bin/gitea web -c /etc/gitea/app.ini
Restart=always
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea

[Install]
WantedBy=multi-user.target

Habilitando e iniciando o Giteia

sudo systemctl daemon-reload
sudo systemctl enable gitea
sudo systemctl restart gitea

O arquivo de configuração fica em /etc/gitea/app.ini

Configuração de Mailer

[mailer]
ENABLED = true
USE_SENDMAIL = true
FROM = git@seudominio.com.br
SENDMAIL_PATH = /usr/sbin/sendmail
SENDMAIL_ARGS = -S mail.seudominio.com.br

backup

su - git
gitea dump -c /etc/gitea/app.ini

em /etc/cron.daily/backup_gitea

#!/bin/bash
cd "/home/git/"
su - git -s /bin/bash -c  '/usr/local/bin/gitea dump -c /etc/gitea/app.ini'

Retenção em /etc/cron.weekly/gitea-retencao

#!/bin/bash
find /home/git -name "*.zip" -type f -mtime +30 -delete
chmod +x /etc/cron.weekly/gitea-retencao
/etc/init.d/cron restart

Referências