¿Cómo instalar la versión china de gitlab en el servidor ubuntu 14.04?
Entonces, lo que quiero hacer en este artículo es instalar gitlab desde el código fuente sin instalar el paquete Fool.
Gitlab tiene oficialmente un documento de descripción:/ce/install/installation.html. Este artículo básicamente sigue este documento. La diferencia es que este artículo usa apache en lugar de nginx.
Los pasos de instalación son los siguientes:
1. Paquete subordinado
2. Ruby
3.
4. Inicialización de la base de datos
5. Redis
Código fuente 6.gitlab
7. Gangsters callejeros
Este artículo puede Para una conexión VPN, el método para crear una conexión VPN en la línea de comando es el siguiente:
sudo apt-get install pptp-linux
Sudo pptpsetup -create VPN name-server dirección del servidor-nombre de usuario-contraseña contraseña [[ -encryption] -start
El comando anterior creará un dispositivo. Si no hay otros dispositivos de acceso telefónico, este dispositivo será ppp0. Puede ver en ifconfig que la opción "-encrypt" es opcional porque algunos servidores no la admiten y le indicarán que se requiere MPPE pero la negociación entre pares falló. Al crear, puede utilizar la opción "-start" para ver el estado de la conexión.
Después de reiniciar, la conexión VPN creada por pptpsetup no será válida. Si desea eliminar la conexión VPN sin reiniciar:
Sudo pptpsetup -remove VPN name
Después de crear la conexión VPN, debe habilitarla y agregarla a la lista de enrutamiento:
p>Nombre de Sudo pon VPN
sudo ruta agregar desarrollo predeterminado ppp0
Deshabilitar la conexión VPN a través de:
Sudo poff nombre de VPN< /p >
Comencemos con el texto:
1. Paquete subordinado
Instalé ubuntu server 14.04. Puede elegir si desea instalar LAMP (Linux+Apache+MySQL+PHP) durante la instalación. De lo contrario, puede usar el siguiente comando para instalarlo:
sudo taskel install light-server
Se le pedirá que ingrese la contraseña raíz de MySQL durante la instalación, que será utilizada abajo.
Las siguientes son las dependencias:
sudo apt-get install flex bison ruby build-essential zlib 1g-dev libyaml-dev libssl-dev libgdbm-dev libreadline-dev libncurses 5 - dev libffi-dev curl OpenSSH-server redis-server check install libxml 2-dev libxslt-dev libcurl 4-OpenSSL-dev libicu-dev log rotar python-docutils pkg-config cmake libkrb 5-dev nodejs git-core
Nota: Ruby está instalado en el interior, que debería ser la versión 1.9.1. GitLab requiere Ruby 2.0 o superior, pero la instalación de Ruby 2.0 o superior requiere una versión inferior de Ruby, así que instálela primero y luego desinstálela. Además, existe Ruby 2.0 en la biblioteca de software de Ubuntu 14.04, pero no se puede utilizar para mediciones reales. Instalemos Ruby desde el código fuente.
2. Ruby
Descargar, compilar e instalar (eliminar Ruby 1.9.1 antes de la instalación):
curl-L-progress/ce/install /base de datos _ MySQL html
sudo apt-get install-y servidor MySQL cliente MySQL libmysql cliente-dev
mysql -u root -p
Ingrese MySQL Inicie sesión con la contraseña de root y luego:
mysql & gtCree el usuario "git"@"localhost" identificado por "$contraseña";
Recuerde cambiar el Reemplace "$contraseña" con la contraseña real, luego:
mysql & gtSET Storage_engine = INNODB
mysql & gtCree la base de datos si no existe ` gitlabhq_production ` conjunto de caracteres predeterminado `utf8 ` COLLATE `utf8_unicode_ci `;
mysql & gtGRANT SELECCIONAR, INSERTAR, ACTUALIZAR, ELIMINAR, CREAR, SOLTAR, INDICE, ALTERAR, BLOQUEAR TABLAS EN 'git labhq_production'. * TO ' git ' @ ' localhost
mysql & gt\q
5. Redis
Redis parece ser una base de datos que almacena claves, yo no. No lo sé, de todos modos, instálelo paso a paso:
Instalar redis-server
sudo CP/etc/redis/redis . p>
Sed·'s/^puerto. */puerto 0/'/etc/redis/redis . conf . orig | sudo tee/etc/redis/redis .conf 'Socket UNIX/var/run/redis/redis'. sudo tee-a/etc/redis/redis . conf
echo ' unixsocketperm 770 ' | sudo tee-a/etc/redis/redis .conf
sudo service redis-server restart.
sudo usermod -aG redis git
6.código fuente de gitlab
El código fuente de Gitlab está instalado en /home/git/gitlab de forma predeterminada. Si desea cambiar, consulte el manual oficial. El proceso para obtener el código fuente chino es el siguiente:
cd /home/git
sudo-u git-H git clone/Larry Li/git lab
.No sé si es por GFW o qué. Un repositorio clonado de git puede ser lento o lento. Yo uso una VPN, que es más rápida.
Una vez completado el clon de git, puedes comprobar la versión que desees.
Al momento de escribir este artículo (2065438 + 22 de abril de 2005), puede:
sudo -u git -H git check 7-7-zh
Luego configurar el código fuente
cd /home/git/gitlab
sudo -u git -H CP config/gitlab . ejemplo config/gitlab
sudo chown - R git log/
sudo chown -R git tmp/
sudo chmod -R u+rwX, go-w log/
sudo chmod - R u +rwX tmp/
sudo -u git -H mkdir /home/git/git lab-satellite
sudo chmod u+rwx,g=rx,o-rwx/ home/ git/git lab-satellites
sudo chmod -R u+rwX tmp/pids/
sudo chmod -R u+rwX tmp/sockets/
sudo chmod -R u+rwX public/upload
sudo -u git -H CP config/unicorn . ejemplo de configuración/unicorn . /initializer/rack _ attack . ejemplo config/initializer/rack _ attack
sudo -u git -H git config -global nombre de usuario "GitLab"
sudo-u. git-H git config-global usuario . correo electrónico " ejemplo @ ejemplo . com "
sudo-u git-H git config-global core .
sudo -u git. -H CP config/resque. yml. example config/resque.
Por supuesto, puede cambiar example@example.com a su dirección de correo electrónico. La configuración en el archivo yml anterior es básicamente la misma. para cambiar; luego, configure el nombre de usuario y la contraseña de la base de datos:
sudo-u git CP config/database . editor config/database.yml
sudo -u git -H chmod o-rwx config/database .yml
Luego, instala gemas:
sudo -u git -H instalación-implementación del paquete-no es necesario desarrollar y probar postgres aws
Este paso debe usar VPN, porque el malvado GFW bloquea rubygems.org, por lo que le indicará que la conexión ha sido restablecida por el compañero, etc., lo que lleva mucho tiempo. Si su máquina es multinúcleo, también puede agregar el mismo parámetro -jN que make, donde n es igual al número de núcleos.
(Agregado el 2 de mayo de 2015)
Descubrí que Taobao ha creado un espejo doméstico de rubygrems.org, pila RAILS_ENV=production.
Inicia el servicio gitlab:
Inicia el servicio sudo gitlab
7. Street hooligans
Descarga el archivo de configuración de Apache:/git lab-org /git lab-recipes/blob/master/web-server/Apache/git lab-Apache 2.4 .conf.
Coloque "ProxyPassReverse" en
/"Cambiar a "ProxyPassReverse"
/git lab-org/git lab-recipes/raw/master/we b -server/Apache/git lab-Apache 2.4 . conf
mv git lab-Apache 2.4 . conf 001-git lab
Editor 001-gitlab.conf. Modificación)
sudo CP 001-git lab . conf/etc/Apache 2/sites-available
CD/etc/Apache 2/sites-enabled
sudo rm 000-default.conf
sudo ln -s../sites-available/001-gitlab . conf 001-gitlab conf
Además, el módulo proxy necesita. estar habilitado para implementar la función de Proxy inverso; de lo contrario, indicará que "ProxyPassReverse" no es válido
CD/etc/Apache 2/MODS-enabled
sudo ln -s../MODS -disponible/proxy.conf proxy.conf
sudo ln -s../MODS-available/proxy .cargar proxy
sudo ln -s../MODS-available. /proxy _connect.load proxy_connect .cargar
sudo ln -s../MODS-available/proxy_http .cargar proxy_http . rewrite.load rewrite.load
Reiniciar apache:
sudo service apache2 se reinicia
Luego, verifique si la configuración es correcta:
sudo -u git -H bundle exec rake git lab:check RAILS _ ENV = production
Si todos los resultados están en verde, puedes acceder a ellos.
Nombre de usuario de inicio de sesión: root, contraseña inicial: 5iveL! (Reino Unido) Educación continua
Finalmente configure el correo electrónico, modifique /home/git/git lab/config/git lab yml, donde "email_from:" es una dirección de correo electrónico válida; lab/config/environments/production .rb, donde " config . action _ mailer . delivery _ método = " es ":SMTP ";
sudo -u git -H CP SMTP_settings.Rb.sample SMTP_settings.Rb
Luego modifique el contenido del archivo correctamente y luego reinicie el servicio gitlab:
el servicio sudo gitlab se reinicia