LINUX

Cómo configurar Gogs en Ubuntu 15.04

Gogs (Go Git Service) un servicio Git autohospedado indoloro escrito en Go. Como está construido con Go, automáticamente obtenemos su compatibilidad multiplataforma que admite, incluidos Linux, Mac OS y Windows. Gogs tiene una huella realmente baja, por lo que es fácil con pocos recursos del sistema. En este artículo, lo guiaremos con pasos simples y lo pondremos en funcionamiento en Ubuntu 15.04 con su interfaz web, panel de administración y todas sus funciones operativas, donde preferiblemente puede alojar sus códigos debido a sus muchas características excelentes, fáciles de usar y acceso.

Requerimientos básicos

Para configurar Gogs, necesitamos una actualización del sistema operativo con sus recursos básicos y los siguientes paquetes obligatorios.

  • MySQL versión 5.1 o superior.
  • git (bash) versión 1.8.0 o superior

Configuraremos la instalación de gogs y sus configuraciones dentro del siguiente entorno como un usuario general con privilegios de sudo.

Gogs (Servicio Go Git)
Sistema operativo base Ubuntu 15.04 (GNU / Linux 3.19.0-15-genérico x86_64)
Base de datos mysql Ver 14.14 Distrib 5.6.24, para debian-linux-gnu (x86_64)
Vamos go1.4.2.linux-amd64.tar.gz
Git git versión 2.1.4
RAM y CPU 2 GB, 1,0 GHz
Disco duro 30 GB

Actualizacion del sistema

Antes de comenzar con la instalación, debemos asegurarnos de que nuestro sistema esté actualizado, siempre podemos hacerlo usando el siguiente comando.

root@ubuntu-15:~#apt-get update

Crear nuevo usuario

Vamos a crear un nuevo usuario que usaremos para toda la configuración e instalación bajo este usuario.

root@ubuntu-15:~# adduser git

Otorga privilegios de superusuario al usuario «git»

root@ubuntu-15:~# visudo
# User privilege specification
root ALL=(ALL:ALL) ALL
git ALL=(ALL:ALL) ALL

Iniciar proceso de instalación

Primero, debemos instalar los requisitos previos necesarios para la configuración de Gogs.

Instalación de Git

Ubuntu 15.04 viene con la última versión de git preinstalada, por lo que no es necesario volver a instalarla. Podemos verificar su versión usando el siguiente comando.

git@ubuntu-15:~$ git --version
git version 2.1.4

Instalación de la base de datos MySQL

En estos pasos instalará el servidor mysql y luego creará una nueva base de datos y un usuario que servirá como base de datos de Gogs.

Paso 1: instale mysql usando apt-get

git@ubuntu-15:~$ sudo apt-get install mysql-server mysql-server-5.6
git@ubuntu-15:~$sudo systemctl status mysql
git@ubuntu-15:~$ sudo mysql --version
mysql Ver 14.14 Distrib 5.6.24, for debian-linux-gnu (x86_64) using EditLine wrapper

Paso 2: elige la contraseña de root

Durante el proceso de instalación, le pedirá la contraseña de usuario root de mysql, así que elija una contraseña segura.

Configurar la clave

Paso 3: Cree una nueva base de datos y un usuario para Gogs de la siguiente manera:

git@ubuntu-15:~$ sudo mysql -u root -p
Enter password:
mysql> SET GLOBAL storage_engine="InnoDB";
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> CREATE DATABASE gogs CHARACTER SET utf8 COLLATE utf8_bin;
Query OK, 1 row affected (0.00 sec)

mysql> CREATE USER 'gogs'@'localhost' IDENTIFIED by 'gogs123';
Query OK, 0 rows affected (0.00 sec)

mysql> GRANT ALL PRIVILEGES ON gogs.* TO 'gogs'@'localhost' IDENTIFIED BY 'gogs123';
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

mysql> q
Bye

Ir a la instalación

Instalaremos el paquete go (bash) en un directorio separado para que no interactúe con futuras actualizaciones del administrador de paquetes del sistema.

Paso 1: cree un nuevo directorio y descargue la última versión de Go

git@ubuntu-15:~$ sudo mkdir local
git@ubuntu-15:~$ cd local/
git@ubuntu-15:~/local$ pwd
/home/git/local
git@ubuntu-15:~/local$ sudo wget https://storage.googleapis.com/golang/go1.4.2.linux-amd64.tar.gz

Paso 2: expanda el paquete en el mismo directorio ~ / local

git@ubuntu-15:~/local$ sudo tar xf go1.4.2.linux-amd64.tar.gz
git@ubuntu-15:~/local$ ls
go go1.4.2.linux-amd64.tar.gz

Paso 3: Escriba «go» en la terminal y verá su manual de línea de comando como

Ir manual

Configurar el entorno para Go

Aquí necesitamos crear un entorno para que el usuario de git configure sus rutas que corresponden a nuestro sistema.

Inicio de Git

Comienza la instalación de Gogs

Ahora estamos en el punto de comenzar la instalación de Gogs usando la herramienta de línea de comando de código fuente Go.

Paso 1: Ejecute el comando Get de Go para descargar Gogs

git@ubuntu-15:~/local$ go get -u github.com/gogits/gogs

Paso 2: cambie el directorio y cree el programa principal

git@ubuntu-15:~/local$ cd $GOPATH/src/github.com/gogits/gogs
git@ubuntu-15:~/go/src/github.com/gogits/gogs$ go build

Paso 3: Prueba de instalación de Gogs

Ejecute el siguiente comando para asegurarse de que gogs esté funcionando bien y si no ve ningún mensaje de error, simplemente presione Ctrl-c para detener Gogs, también puede acceder a él en su navegador web localhost con su IP y puerto 3000, pero es mejor que no para iniciar la instalación en este punto para evitar errores.

git@ubuntu-15:~$ cd $GOPATH/src/github.com/gogits/gogs
git@ubuntu-15:~/go/src/github.com/gogits/gogs$ ./gogs web

Servicio web de Gogs

Instalación de Nginx

Necesitamos instalar Nginx para usarlo como un proxy inverso para que podamos vincular nuestro nombre de dominio a Gogs.
Así que comencemos con su instalación y luego lo configuraremos para Gogs.

Paso 1: Instale Nginx con el comando apt-get como

git@ubuntu-15:~$ sudo apt-get install nginx

git@ubuntu-15:~$ sudo systemctl status nginx

git@ubuntu-15:~$ sudo nginx -V
nginx version: nginx/1.6.2 (Ubuntu)

Paso 2: configurar Nginx

git@ubuntu-15:~$ sudo vi /etc/nginx/sites-available/default
# Default server configuration
#
server {
listen 80 default_server;
listen [::]:80 default_server;

# SSL configuration
#
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
#
# Self signed certs generated by the ssl-cert package
# Don't use them in a production server!
#
# include snippets/snakeoil.conf;

root /var/www/html;

# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;

server_name 172.25.10.179;

location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
proxy_pass http://localhost:3000;
try_files $uri $uri/ =404;
}
}

Paso 3: Ahora reinicie el servicio Niginx y verifique su estado

git@ubuntu-15:~$ systemctl restart nginx

Estado de Nginx

Inicio de Gogs como servicio

Para configurar Gogs se inicia automáticamente como un servicio en ejecución en el back-end, lo haremos instalando un paquete Supervisor.

Paso 1: Instalar Supervisor con apt-get

git@ubuntu-15:~$ sudo apt-get install supervisor

git@ubuntu-15:~$ systemctl status supervisor

Paso 2: reconfigurar Supervisor
Después de instalar el supervisor, ahora configúrelo según nuestro entorno y necesidades. Comencemos con la creación de un nuevo directorio para los registros y luego agreguemos el archivo supervisod.conf como:

git@ubuntu-15:~$ sudo mkdir -p /var/log/gogs
git@ubuntu-15:~$ sudo vi /etc/supervisor/supervisord.conf

[program:gogs]
directory=/home/git/go/src/github.com/gogits/gogs/
command=/home/git/go/src/github.com/gogits/gogs/ web
autostart=true
autorestart=true
startsecs=10
stdout_logfile=/var/log/gogs/stdout.log
stdout_logfile_maxbytes=1MB
stdout_logfilebackups=10
stdout_capture_maxbytes=1MB
stderr_logfile=/var/log/gogs/stderr.log
stderr_logfile_maxbytes=1MB
stderr_logfile_backups=10
stderr_capture_maxbytes=1MB
environment = HOME="/home/git", USER="git"

Paso 3: reinicie el servicio de supervisor y verifique su estado

Estado de supervisor

Finalizar la configuración de instalación de Gogs

Gogs se ha configurado con su configuración inicial y configuraciones con otros paquetes requeridos. Ahora solo necesitamos realizar unos pocos pasos de instalación la primera vez que se ejecuta.

Vamos a abrir su navegador web y acceder a gogs con su IP de host local como:

http://localhost:3000/install
http://172.25.10.179:3000/install

Instalar Gogs

Elija las configuraciones adecuadas en su tipo de base de datos, nombre de usuario y contraseña. Luego, después de crear una cuenta de administrador, simplemente haga clic en Instalar Gogs, eso es todo.

Crear una cuenta

Bienvenido a Gogs

Inicio de sesión de Gogs

Creemos sus repositorios

Nuevo repositorio

Has creado tu primer repositorio en Gogs

Repositorio de Gogs

Panel de Gogs

Tablero de Gogs

Clonar repositorio local con SSH

También podemos clonar cualquier repositorio usando su panel de control. Solo necesitamos obtener el enlace del repositorio deseado y luego SSH en el otro sistema y luego, usando el comando git clone, podemos obtenerlo fácilmente en otro sistema.

Repositorio de clonación

También podemos comentar usando los comandos git commit y git push para transmitir nuestros comentarios en los repositorios maestros.

Comprometerse o empujar

Conclusión

Gogs es un gran servicio de alojamiento de git y mucho más poderoso que Github. Es un servicio de alojamiento de git ligero, fácil de configurar, multiplataforma y con características favorablemente comparables a Gitlab / Github. Así que definitivamente recomiendo a Gogs como su servicio de autohospedaje de git.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar