Personalización
groales edited this page 2025-12-03 16:27:25 +01:00

Personalización

Configuraciones avanzadas y personalización de tu instancia de Gitea.

📧 Configuración de Email (SMTP)

Para notificaciones, recuperación de contraseñas y webhooks.

Editar app.ini

docker compose exec gitea vi /data/gitea/conf/app.ini

Añade o modifica la sección [mailer]:

[mailer]
ENABLED = true
FROM = gitea@tudominio.com
MAILER_TYPE = smtp
HOST = smtp.tudominio.com:587
IS_TLS_ENABLED = true
USER = gitea@tudominio.com
PASSWD = tu_password_smtp

Para Gmail:

HOST = smtp.gmail.com:587
USER = tu_email@gmail.com
PASSWD = tu_app_password

Reinicia Gitea:

docker compose restart gitea

🔑 Configuración de SSH

Generar Clave SSH (Cliente)

ssh-keygen -t ed25519 -C "tu_email@ejemplo.com"
cat ~/.ssh/id_ed25519.pub

Añadir Clave en Gitea

  1. Ve a SettingsSSH / GPG Keys
  2. Haz clic en Add Key
  3. Pega tu clave pública
  4. Haz clic en Add Key

Clonar con SSH

git clone git@gitea.tudominio.com:usuario/repo.git

⚠️ Nota: Este stack básico no expone el puerto SSH (22). Para usar SSH, necesitas publicar el puerto 22 del contenedor.

🔗 Webhooks

Configura notificaciones cuando ocurren eventos en tus repositorios.

Crear Webhook

  1. Ve al repositorio → SettingsWebhooks
  2. Haz clic en Add Webhook → Selecciona tipo (Gitea, Discord, Slack, etc.)
  3. Configura:
    • Target URL: URL de tu servicio
    • HTTP Method: POST (generalmente)
    • Content Type: application/json
    • Secret: Token de seguridad (opcional pero recomendado)
  4. Selecciona eventos que disparan el webhook
  5. Haz clic en Add Webhook

👥 Gestión de Usuarios

Desde Panel de Administración

Site AdministrationUser Accounts:

  • Create User Account: Crear usuarios manualmente
  • Edit: Modificar usuarios existentes
  • Delete: Eliminar usuarios

Deshabilitar Auto-Registro

Edita app.ini:

[service]
DISABLE_REGISTRATION = true
REQUIRE_SIGNIN_VIEW = true  # Requiere login para ver contenido

Cambiar a Usuario Admin

docker compose exec gitea gitea admin user change-password --username usuario --password nueva_password

🎨 Personalización Visual

Logo y Favicon

  1. Coloca tus archivos en el volumen gitea_data
  2. Edita app.ini:
[ui]
DEFAULT_THEME = gitea
THEMES = gitea,arc-green

Mensaje de Bienvenida

Crea un archivo Markdown en:

/data/gitea/custom/templates/home.tmpl

📊 Integración CI/CD

Gitea soporta Gitea Actions (compatible con GitHub Actions).

Habilitar Gitea Actions

Edita app.ini:

[actions]
ENABLED = true

Añadir Runner

Necesitas un contenedor adicional act_runner. Ver documentación oficial.

🔒 Autenticación Externa

LDAP/Active Directory

Site AdministrationAuthentication SourcesAdd Authentication Source

Selecciona LDAP (via BindDN) y configura:

  • Host
  • Port
  • Bind DN
  • User Search Base
  • User Filter

OAuth2 (Google, GitHub, etc.)

Site AdministrationAuthentication SourcesOAuth2

Configura el provider y las credenciales OAuth2.

📝 Configuración de Repositorios

Límites de Tamaño

Edita app.ini:

[repository]
ROOT = /data/git/repositories
DEFAULT_BRANCH = main

[repository.upload]
FILE_MAX_SIZE = 50

Git LFS

[lfs]
STORAGE_TYPE = local
PATH = /data/git/lfs

🛡️ Seguridad

2FA (Two-Factor Authentication)

  1. Usuario → SettingsSecurity
  2. Two-Factor Authentication
  3. Escanea QR con app (Google Authenticator, Authy)
  4. Introduce código de verificación

Tokens de Acceso

SettingsApplicationsGenerate New Token

Úsalos para:

  • API de Gitea
  • CI/CD pipelines
  • Automatización

🌐 Internacionalización

Gitea soporta múltiples idiomas. Cambia en:

SettingsAccountLanguage


Ver Backup y Restauración para proteger tu configuración.