So erstellen Sie Gitlab auf CentOS6

So erstellen Sie Gitlab auf CentOS6

Vorwort

Das ursprüngliche Projekt wurde im öffentlichen Netzwerk gitlab abgelegt. Aus Sicherheitsgründen wurde im Intranet ein Set mit grafischer Oberfläche erstellt. Es kann direkt aus dem externen Netzwerk git importiert werden. Ich fand es sehr praktisch, es zu verwenden. Ich habe den Installationsvorgang aufgezeichnet. Bitte beachten Sie die offizielle Website: https://gitlab.com/gitlab-org/gitlab-recipes/tree/master/install/centos Sie können direkt dorthin gehen, um es zu sehen

Grundlegende Umgebungsinstallation (git\redis\ruby\mysql...)

yum -y groupinstall 'Entwicklungstools'
yum -y installiere readline readline-devel ncurses-devel gdbm-devel glibc-devel tcl-devel openssl-devel curl-devel expat-devel db4-devel byacc sqlite-devel libyaml libyaml-devel libffi libffi-devel libxml2 libxml2-devel libxslt libxslt-devel libicu libicu-devel system-config-firewall-tui redis sudo wget crontabs logwatch logrotate perl-Time-HiRes git cmake libcom_err-devel.i686 libcom_err-devel.x86_64 nodejs

yum -y installiere Python-Docutils
yum -y installiere Postfix
git --version #Installieren Sie eine Git-Version höher als 2.7.4 yum -y remove git
yum installieren zlib-devel Perl-CPAN gettext curl-devel expat-devel gettext-devel openssl-devel
mkdir /tmp/git und cd /tmp/git
curl --progress https://www.kernel.org/pub/software/scm/git/git-2.9.0.tar.gz | tar xz
cd git-2.9.0
./konfigurieren
machen
make prefix=/usr/local installieren

yum remove ruby ​​​​#Installieren Sie eine Ruby-Version höher als 2.1, löschen Sie die alte mkdir /tmp/ruby && cd /tmp/ruby
curl --progress https://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.9.tar.gz | tar xz
cd ruby-2.1.9
./configure --disable-install-rdoc
machen
make prefix=/usr/local installieren
Gem-Installationspaket --no-doc
yum installieren redis mysql
/Data/apps/mysql/bin/mysqld_safe &
/Data/apps/mysql/bin/mysql -uroot
mysql> Datenbank erstellen, wenn „gitlabhq_production“ nicht vorhanden ist. Standardzeichensatz „utf8“. „utf8_unicode_ci“ sortieren;
mysql> gewähre alles auf gitlabhq_production.* an „git“@„localhost“, identifiziert durch „git“;

Redis konfigurieren

vim /etc/redis.conf

unixsocket /var/run/redis/redis.sock
unixsocketperm 0770
mkdir -p /var/run/redis
chown redis:redis /var/run/redis
chmod 755 /var/run/redis
/etc/init.d/redis starten
Benutzermod -aG redis git

Konfigurieren Sie Gitlab bezogen

# Laden Sie Git herunter und verwenden Sie inländische Quellen. Fremd ist zu langsam cd /home/git
sudo -u git -H git-Klon http://git.oschina.net/qiai365/gitlab-ce gitlab
cd /home/git/gitlab
sudo -u git -H cp config/gitlab.yml.beispiel config/gitlab.yml
sudo -u git -H editor config/gitlab.yml
# Wechseln Sie zu Ihrem eigenen Host Host: iaasgit1.prod.bj1
sudo -u git -H cp config/secrets.yml.beispiel config/secrets.yml
sudo -u git -H chmod 0600 config/secrets.yml
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 chmod -R u+rwX tmp/pids/
sudo chmod -R u+rwX tmp/sockets/
sudo -u git -H mkdir public/uploads/
sudo chmod 0700 öffentlich/Uploads
sudo chmod ug+rwX,o-rwx /home/git/repositories/
sudo chmod -R u+rwX baut/
sudo chmod -R u+rwX geteilt/Artefakte/
sudo -u git -H cp config/unicorn.rb.beispiel config/unicorn.rb
nproc
sudo -u git -H editor config/unicorn.rb
sudo -u git -H cp config/initializers/rack_attack.rb.beispiel config/initializers/rack_attack.rb
sudo -u git -H git config --global core.autocrlf input
sudo -u git -H git config --global gc.auto 0
sudo -u git -H cp config/resque.yml.beispiel config/resque.yml
sudo -u git -H editor config/resque.yml

Konfigurieren Sie den DB-Teil nur für MySQL

sudo -u git cp config/database.yml.mysql config/database.yml
sudo -u git -H editor config/database.yml #Konfigurieren Sie das Passwort für den Produktionsteil: „password“
sudo -u git -H chmod o-rwx config/database.yml

Installieren Sie gitlab und starten Sie

# Edelsteine ​​installieren
cd /home/git/gitlab
sudo -u git -H Bundle installieren --Bereitstellung --ohne Entwicklungstest Postgres AWS Kerberos

# Gitlab-Shell installieren
sudo -u git -H bundle exec rake gitlab:shell:install[v3.3.3] REDIS_URL=unix:/var/run/redis/redis.sock RAILS_ENV=Produktion
sudo -u git -H editor /home/git/gitlab-shell/config.yml

# installiere gitlab-workhorse
cd /home/git
sudo -u git -H git-Klon https://gitlab.com/gitlab-org/gitlab-workhorse.git
CD Gitlab-Arbeitspferd
sudo -u git -H git checkout v0.7.5
sudo -u git -H machen

# Datenbank initialisieren und erweiterte Funktionen aktivieren
cd /home/git/gitlab
sudo -u git -H bundle exec rake gitlab:setup RAILS_ENV=Produktion

sudo -u git -H bundle exec rake gitlab:setup RAILS_ENV=Produktion GITLAB_ROOT_PASSWORD=IhrPasswort GITLAB_ROOT_EMAIL=IhreE-Mail
cp lib/support/init.d/gitlab /etc/init.d/gitlab
cp lib/support/init.d/gitlab.default.example /etc/default/gitlab
chkconfig gitlab ein
cp lib/support/logrotate/gitlab /etc/logrotate.d/gitlab
sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=Produktion
sudo -u git -H bundle exec rake assets:vorkompilieren RAILS_ENV=Produktion
Dienst Gitlab starten

Konfigurieren Sie nginx

yum installiere nginx
cp lib/support/nginx/gitlab /Data/apps/nginx/conf/include/gitlab.conf
usermod -a -G git nginx
chmod g+rx /home/git/
/Data/apps/nginx/conf/include/gitlab.conf #Konfigurieren Sie den Servernamen in dieser Konfiguration

Abschließend prüfen

cd /home/git/gitlab
sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=produktion
# Starten Sie Gitlab
/etc/init.d/gitlab Neustart

# Öffnen Sie die URL, die dem Servernamen entspricht, direkt und stellen Sie fest, dass die Stile verschwunden sind. Führen Sie sudo -u git -H bundle exec rake asset:clean asset:precompile aus. REDIS_URL=unix:/var/run/redis/redis.sock RAILS_ENV=production

Zum Schluss möchte ich erklären

Dies ist nur eine Aufzeichnung der täglichen Vorgänge. Es kann Probleme wie Berechtigungen geben. Stellen Sie sicher, dass nginx\git über die Berechtigungen füreinander verfügen. Verwenden Sie zur Überprüfung auch das Prüfskript. Die Eingabeaufforderungen sind sehr benutzerfreundlich und können normalerweise behoben werden. Ich wünsche Ihnen viel Erfolg.

Das in der Mitte verwendete Yum verwendet ein neu geschriebenes gepacktes RPM, sodass der Pfad vom Standard abweicht. Wenn Sie den Standard verwenden, können Sie ihn entsprechend Ihrer eigenen Situation ändern oder direkt auf die offizielle Website verweisen. Dies ist eine kastrierte Version der offiziellen Website basierend auf Ihrer eigenen Umgebung.

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Detailliertes Tutorial zur Verwendung von Docker zum Erstellen von Gitlab basierend auf dem CentOS8-System
  • Bringen Sie Ihnen den detaillierten Prozess der Verwendung von Docker zum Erstellen der chinesischen Version der Gitlab-Community bei
  • Zwei Möglichkeiten zum Erstellen eines privaten GitLab mit Docker
  • Methoden und Schritte zum Bereitstellen einer GitLab-Umgebung basierend auf Docker
  • Detailliertes Tutorial zum Erstellen eines Gitlab-Servers auf CentOS8.1
  • Centos7 verwendet Docker zum Erstellen eines Gitlab-Servers
  • So erstellen Sie Gitlab anhand des Docker-Beispiels
  • Schritte zum Erstellen Ihres eigenen privaten GitHub-Repositorys mit GitLab
  • Detaillierte Erklärung zur Verwendung von Docker zum Erstellen von Gitlab
  • Erstellen Sie einen lokalen GitLab-Server auf CentOS7

<<:  Vue implementiert die Anforderung des Ziehens und Ablegens dynamisch generierter Komponenten

>>:  Installationsschritte von MySQL unter Linux

Artikel empfehlen

Dieser Artikel hilft Ihnen, JavaScript-Variablen und -Datentypen zu verstehen

Inhaltsverzeichnis Vorwort: Freundliche Tipps: Va...

Was ist WML?

WML (Wireless Markup Language). Es handelt sich u...

Verwendung und Szenarioanalyse des npx-Befehls in Node.js

Tutorial zur Verwendung von NPX Heute Abend, als ...

Konfigurationsschritte für die MySQL-Gruppenreplikation (empfohlen)

MySQL-Group-Replication ist eine neue Funktion, d...

Detaillierte Erklärung der HTML-Formularelemente (Teil 1)

HTML-Formulare werden verwendet, um verschiedene ...

Ausführliches Installationstutorial für MySQL 8.0.12 winx64

In diesem Artikel finden Sie das Installations-Tu...

JavaScript implementiert die Kontrollkästchenauswahlfunktion

In diesem Artikelbeispiel wird der spezifische Ja...

Tabellen-Paging-Funktion implementiert durch Vue2.0+ElementUI+PageHelper

Vorwort Ich habe kürzlich an einigen Front-End-Pr...