En esta guía, explicaremos cómo instalar Gogs en un VPS Ubuntu 18.04 con MariaDB como base de datos back-end.
Gogs es un servicio Git autohospedado gratuito y de código abierto escrito en el lenguaje de programación Go. Es fácil de instalar, es multiplataforma y es liviano, todo lo cual permite que Gogs se ejecute fácilmente en todo tipo de hardware. Esta guía también debería funcionar en otros sistemas Linux VPS, pero fue probada y escrita para un VPS Ubuntu 18.04.
Requisitos
- Un servidor con Ubuntu 18.04
- Una cuenta de usuario con privilegios de sudo o acceso al propio usuario "raíz"
Paso 1:Instale los paquetes necesarios
Inicie sesión en su VPS a través de SSH como root o como usuario sudo:
ssh userame@IP_Address
Una vez hecho esto, ejecute los siguientes comandos para actualizar todos los paquetes a sus últimas versiones disponibles:
sudo apt-get update sudo apt-get upgrade
Luego, necesitamos instalar git. Puede hacerlo usando el siguiente comando:
sudo apt-get install git
Paso 2:Crear base de datos MySQL
Gogs puede usar bases de datos MySQL, PostgreSQL, MSSQL, TiDB y SQLite3 para su base de datos.
En este tutorial, usaremos MySQL. Instale el último servidor MySQL ejecutando el siguiente comando:
sudo apt-get install mysql-server
Cuando se complete la instalación de MySQL, asegure su instalación de MariaDB usando mysql_secure_installation
guion. Esta parte es opcional, pero muy recomendable ya que mejora la seguridad de su servidor de base de datos:
sudo mysql_secure_installation
Luego, responda las preguntas de seguridad de la siguiente manera:
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
Inicie sesión en la consola de MySQL con el usuario root de MySQL, utilizando la contraseña que configuró en el paso anterior:
mysql -u root -p
Cree una base de datos MySQL y un usuario para Gogs y otorgue permisos al usuario mediante los siguientes comandos:
mysql> CREATE SCHEMA `gogs` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; mysql> GRANT ALL PRIVILEGES ON gogs.* TO 'gogs'@'localhost' IDENTIFIED BY 'strongpassword'; mysql> FLUSH PRIVILEGES; mysql> \q
Asegúrese de reemplazar 'contraseña segura' con una contraseña segura real.
Paso 3:Instalar Gogs
Primero, cree un nuevo usuario del sistema para Gogs:
sudo adduser --home /opt/gogs --shell /bin/bash --gecos 'Gogs application' gogs
Los siguientes comandos descargarán el binario de Gogs desde la página de Gogs Github:
sudo wget https://github.com/gogs/gogs/releases/download/v0.11.86/linux_amd64.tar.gz
Extraiga el archivo al directorio /opt/gogs:
tar xvf linux_amd64.tar.gz --strip-components=1 -C /opt/gogs
Cambie la propiedad del directorio al usuario de Gogs:
sudo chown -R gogs:gogs /opt/gogs/
A continuación, copie el archivo de la unidad systemd:
sudo cp /opt/gogs/scripts/systemd/gogs.service /etc/systemd/system/
Abra el archivo de la unidad con su editor de texto preferido; nosotros usamos nano.
sudo nano /etc/systemd/system/gogs.service
Una vez abierto el archivo, edítelo de la siguiente manera:
[Unit] [Unit] Description=Gogs After=syslog.target After=network.target After=mariadb.service mysqld.service postgresql.service memcached.service redis.service [Service] # Modify these two values and uncomment them if you have # repos with lots of files and get an HTTP error 500 because # of that ### #LimitMEMLOCK=infinity #LimitNOFILE=65535 Type=simple User=gogs Group=gogs WorkingDirectory=/opt/gogs ExecStart=/opt/gogs web Restart=always Environment=USER=gogs HOME=/opt/gogs # Some distributions may not support these hardening directives. If you cannot start the service due # to an unknown option, comment out the ones not supported by your version of systemd. ProtectSystem=full PrivateDevices=yes PrivateTmp=yes NoNewPrivileges=true [Install] WantedBy=multi-user.target
Guarde y cierre el archivo, luego inicie y habilite el servicio Gogs:
sudo systemctl daemon-reload sudo systemctl start gogs sudo systemctl enable gogs
Verifique que el servicio de Gogs se haya iniciado correctamente:
● gogs.service - Gogs Loaded: loaded (/etc/systemd/system/gogs.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2019-04-07 12:25:32 CDT; 6min ago Main PID: 19220 (gogs) Tasks: 8 (limit: 2320) CGroup: /system.slice/gogs.service └─19220 /opt/gogs/gogs web Apr 07 12:25:32 localhost systemd[1]: Started Gogs. Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [ WARN] Custom config '/opt/gogs/custom/conf/app.ini' not found, ignore this if you're running first time Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [TRACE] Custom path: /opt/gogs/custom Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [TRACE] Log path: /opt/gogs/log Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [TRACE] Log Mode: Console (Trace) Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [ INFO] Gogs 0.11.86.0130 Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [ INFO] Cache Service Enabled Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [ INFO] Session Service Enabled Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [ INFO] SQLite3 Supported Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [ INFO] Run Mode: Development Apr 07 12:25:33 localhost gogs[19220]: 2019/04/07 12:25:33 [ INFO] Listen: http://0.0.0.0:3000
Paso 4:Configurar Gogs
Una vez completada la instalación, vaya a http://server_ip:3000/install
y complete todos los campos requeridos. Recuerde reemplazar "server_ip" con la dirección IP pública de su servidor:
Configuración de la base de datos
– Tipo de base de datos:MySQL
– Host:127.0.0.1:3306
– Usuario:gogs
– Contraseña:strongpassword
– Nombre de la base de datos:gogs
Configuración general de Gogs
– Nombre de la aplicación:Gogs
– Ruta raíz del repositorio:/opt/gogs/gogs-repositories
– Usuario de ejecución:gogs
– Dominio:SERVER_IP
– Puerto SSH :22
– Puerto HTTP:3000
– URL de la aplicación:http://SERVER_IP:3000/
– Ruta de registro:/opt/gogs/log
Finalmente, haz clic en instalar y listo.
El acceso administrativo se concede automáticamente al primer usuario registrado:
Eso es todo. Ha instalado Gogs con éxito en su Ubuntu 18.04 VPS. Para obtener más información sobre cómo administrar la instalación de Gogs, consulte la documentación oficial de Gogs.
Por supuesto, no tiene que hacer nada de esto si utiliza uno de nuestros servicios de alojamiento VPS de Linux, en cuyo caso simplemente puede pedirle a nuestros administradores expertos de Linux que lo configuren por usted. Están disponibles las 24 horas del día, los 7 días de la semana y atenderán su solicitud de inmediato.
PD . Si le gustó esta publicación, compártala con sus amigos en las redes sociales utilizando los accesos directos para compartir a continuación, o simplemente deje un comentario en la sección de comentarios. Gracias.