GNU/Linux >> Belajar Linux >  >> Panels >> Panels

Cara menjalankan server Git Anda sendiri dengan GitlabHQ di Ubuntu 14.04

Cara menjalankan server Git Anda sendiri dengan GitlabHQ di Ubuntu 14.04

Dokumen ini menjelaskan cara menginstal dan mengkonfigurasi Git dan GitHub. Ini adalah alat yang hebat untuk mengelola dan mengelola seluruh host repositori Git dan izin terkait. Jadi, ini tetap merupakan berkah sejati bagi pengguna yang menulis perangkat lunak sumber terbuka, namun, saat menulis perangkat lunak sumber tertutup mungkin tidak nyaman dalam mempercayai kode ke server pihak ketiga. Untuk mendapatkan fleksibilitas dan kontrol yang sangat dibutuhkan pada hal-hal seperti Github/BitBucket tanpa menghosting repositori git di server yang berada di luar kendali pengguna, GitLab tetap merupakan anugerah!

GitLab adalah alat yang luar biasa yang menawarkan antarmuka berbasis web yang sederhana dan ramah pengguna namun kuat ke repositori Git di server Anda, yaitu GitHub. Pengguna bebas untuk menghostingnya di server cloud mereka sendiri, mengontrol akses dengan cara yang dibuat khusus, dan satu-satunya faktor yang membatasi ukuran repo adalah ruang penyimpanan internal server.

Saya tidak memberikan jaminan apa pun bahwa ini akan berhasil untuk Anda!

1 Catatan Awal

Tutorial ini didasarkan pada server Ubuntu 14.04, jadi Anda harus menyiapkan instalasi server dasar Ubuntu 14.04 sebelum melanjutkan dengan tutorial ini. Sistem harus memiliki alamat IP statis. Saya menggunakan 192.168.0.100 sebagai alamat IP saya dalam tutorial ini dan server1.example.com sebagai nama host. Semua perangkat lunak yang diperlukan harus diinstal agar GitLab berfungsi. Oleh karena itu, mereka yang menggunakan VPS (droplet)/distro Linux yang sama sekali berbeda mungkin menghadapi gangguan, terutama dengan versi Python dan Ruby yang tidak kompatibel. Oleh karena itu, sangat penting untuk memiliki Ruby 2.0 dan Python 2.7 dipasang di awal.

2 Instalasi Ruby 2.0 atau lebih tinggi, Python 2.7 dan Bundler Gem

Kami akan menginstal pra-konfigurasi terlebih dahulu sebelum konfigurasi Git Hub. Proses instalasi paket yang diperlukan telah dijelaskan di bawah ini.

apt-get update
apt-get install -y build-essential zlib1g-dev libyaml-dev libssl-dev libgdbm-dev libreadline-dev libncurses5-dev libffi-dev curl git-core openssh-server redis-server checkinstall libxml2 -dev libxslt-dev libcurl4-openssl-dev libicu-dev

Catatan:Pengguna harus memastikan bahwa Ruby 1.8 tidak diinstal pada sistem mereka, meskipun kemungkinannya kecil bahwa itu akan terjadi pada Ubuntu 14.04

default

Anda dapat memeriksa versi Python Anda sebagai berikut (dalam kasus saya ini adalah Python 2.7.6):

python --versi

[email protected]:~# python --version
Python 2.7.6
[email protected]:~#

Ini dapat dilakukan seperti yang ditunjukkan di bawah ini, menginstal Ruby 2.1.2, Ruby dapat diinstal sebagai berikut:

mkdir /tmp/ruby &&cd /tmp/ruby
wget http://ftp.ruby-lang.org/pub/ruby/2.1/ruby-2.1.2.tar.gz
tar zxvf ruby -2.1.2.tar.gz
cd ruby-2.1.2
./configure
make
make install

Selanjutnya kami akan memeriksa versi ruby ​​sebagai:

rubi -v

[email protected]:/tmp/ruby/ruby-2.1.2# ruby ​​-v
ruby 2.1.2p95 (2014-05-08 revisi 45877) [x86_64-linux]
example@unixlinux. online:/tmp/ruby/ruby-2.1.2#

Selanjutnya kita akan menginstal Bundler Gem sebagai berikut:

gem install bundler --no-ri --no-rdoc

[email protected]:/tmp/ruby/ruby-2.1.2# gem install bundler --no-ri --no-rdoc
Mengambil:bundler-1.6.5.gem (100%)
Berhasil menginstal bundler-1.6.5
1 permata terpasang
[email protected]:/tmp/ruby/ruby-2.1.2#

Sekarang kita akan membuat pengguna user=git untuk Gitlab yang akan digunakan dalam konfigurasi lebih lanjut, sebagai berikut:

adduser --disabled-login --gecos 'GitLab' git

3 Pemasangan GitLab Shell

Kami akan mengunduh shell GitLab menggunakan perintah berikut:

cd /home/git
sudo -u git -H git clone https://github.com/gitlabhq/gitlab-shell.git
cd gitlab-shell
sudo -u git -H git checkout v1.7.0
sudo -u git -H cp config.yml.example config.yml

Selanjutnya kita akan membuat cadangan file asli config.yml.example dan menyalinnya ke config.yml. Edit file sebagai berikut:

vi config.yml

Sekarang kita perlu mengubah nilai dari gitlab_url:"http://localhost/" menjadi nilai git seperti yang ditunjukkan:

# GitLab user. git by default
user: git

# Url to gitlab instance. Used for api calls. Should end with a slash.
#gitlab_url: "http://localhost/"
gitlab_url:     "http://server1.example.com"

[....]

Sekarang kita akan menjalankan shell GitLab yang terinstal sebagai berikut:

sudo -u git -H ./bin/install

Ini akan memiliki output seperti ini:

[email protected]:/home/git/gitlab-shell# sudo -u git -H ./bin/install
mkdir -p /home/git/repositories:true
mkdir -p /home /git/.ssh:true
chmod 700 /home/git/.ssh:true
touch /home/git/.ssh/authorized_keys:true
chmod 600 /home/git/. ssh/authorized_keys:true
chmod -R ug+rwX,o-rwx /home/git/repositories:true
temukan /home/git/repositories -type d -print0 | xargs -0 chmod g+s:true
[email protected]:/home/git/gitlab-shell#

4 Instalasi Mariadb untuk GitLab

Sekarang, kita akan menyiapkan GitLab untuk menggunakan Mariadb untuk digunakan di backend. Langkah pertama adalah menginstal Mariadb dengan perintah yang diberikan di bawah ini. Selama proses instalasi, Anda akan diminta untuk menyiapkan kata sandi root MySQL, yang dapat Anda atur sesuai preferensi pribadi, namun Anda harus membuat catatan yang sama untuk digunakan pada langkah selanjutnya.

apt-get install mariadb-server mariadb-client libmariadbclient-dev

Kata sandi baru untuk pengguna "root" MariaDB:<--mariadbpassword
Ulangi kata sandi untuk pengguna "root" MariaDB:<--mariadbpassword

Pembuatan basis data Gitlab:

mysql -u root -p

Di Mariadb Prompt gunakan database=gitlabdb user=gitlabuser dan password=gitlabuserpassword:

BUAT DATABASE gitlabdb SET KARAKTER DEFAULT utf8 COLLATE utf8_unicode_ci;
GRANT SELECT, LOCK TABLES, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON gitlabdb.* TO 'gitlabuser' ENTI' gitlabuser'@' gitlabuser'ID;
hak flush;
keluar

Sekarang kita akan melanjutkan untuk instalasi sebagai berikut:

cd /home/git
sudo -u git -H git clone https://github.com/gitlabhq/gitlabhq.git gitlab
cd /home/git/gitlab
sudo -u git -H git checkout 6-0-stabil
sudo -u git -H cp config/gitlab.yml.example config/gitlab.yml

Sama seperti pengaturan shell GitLab, jika Anda memiliki domain yang dikonfigurasi untuk VPS, Anda harus mengedit config.yml untuk menggunakan domain tersebut (seperti yang ditunjukkan pada perintah di bawah):

sudo -u git -H vi config/gitlab.yml

[...] 
## GitLab settings # gitlab: # ## Web server settings # host: localhost # port: 80 # https: false gitlab: ## Web server settings host: server1.example.com port: 80 https: false
[...]

Di sini, Anda juga diminta untuk mengatur beberapa izin file Linux, mengkonfigurasi Gitconfig pengguna git, dan menyiapkan beberapa GitLabconfig dan direktori untuk pengguna git (seperti yang ditunjukkan di bawah):

cd /home/git/gitlab
chown -R git log/
chown -R git tmp/
chmod -R u+rwX  log/
chmod -R u+rwX tmp /
sudo -u git -H mkdir /home/git/gitlab-satellite
sudo -u git -H mkdir tmp/pids/
sudo -u git -H mkdir tmp/socket/
chmod -R u+rwX tmp/pids/
chmod -R u+rwX tmp/sockets/
sudo -u git -H mkdir publik/upload
chmod -R u +rwX  publik/upload
sudo -u git -H cp config/unicorn.rb.example config/unicorn.rb
sudo -u git -H git config --nama pengguna global "GitLab"
sudo -u git -H git config --global user.email "[email protected]"
sudo -u git -H git config --global core.autocrlf input
sudo -u git cp config/database.yml.mysql config/database.yml

Selanjutnya, kita perlu memberi tahu GitLab untuk menggunakan pengguna gitlab Mariadb yang telah Anda siapkan sebelumnya. Untuk ini, kita akan mengedit file config/database.ymlfile (seperti gambar di bawah):

sudo -u git -H vi config/database.yml

[...]
#production: # adapter: mysql2 # encoding: utf8 # reconnect: false # database: gitlabhq_production # pool: 10 # username: root # password: "secure password" production: adapter: mysql2 encoding: utf8 reconnect: false database: gitlabdb pool: 10 username: gitlabuser password: "gitlabuserpassword"
[...]

Harap cantumkan nilai yang Anda berikan pada saat pembuatan basis data, nilai di atas dapat berbeda jika Anda telah menggunakan nilai lain pada saat pembuatan basis data. Ubah izin file sebagai:

sudo -u git -H chmod o-rwx config/database.yml

Sekarang, kita dapat menginstal beberapa permata lagi yang diperlukan, dan ini mungkin merupakan langkah yang cukup panjang (seperti yang ditunjukkan di bawah):

cd /home/git/gitlab
gem install charlock_holmes --version '0.6.9.4'

Unduh paket dan instal:

wget https://downloads-packages.s3.amazonaws.com/ubuntu-14.04/gitlab_7.1.1-omnibus-1_amd64.deb
apt-get install openssh-server
apt-get install postfix # Pilih 'Situs Internet', menggunakan sendmail juga berfungsi, exim bermasalah

Di sini ia akan meminta beberapa input pengguna, silakan pilih Situs Internet, gunakan email sistem sebagai server1.example.com Anda juga dapat menggunakan sendmail sebagai ganti menginstal postfix. Dalam hal ini exim tidak berfungsi. Selanjutnya instal git lab:

dpkg -i gitlab_7.1.1-omnibus-1_amd64.deb

Edit file konfigurasi untuk menambahkan nama host kami yaitu hostname=server1.example.com:

vi /etc/gitlab/gitlab.rb


[....]
#external_url 'http://gitlab.example.com' external_url 'http://server1.example.com'

Kemudian kita akan mengkonfigurasi ulang start GitLab sebagai berikut:

konfigurasi ulang gitlab-ctl

Anda dapat menelusuri halaman login di http://192.168.0.100/users/sign_on menggunakan kredensial sebagai username=root dan password=5iveL!fe


Ubah kata sandi asli:


Ini akan menjadi halaman selamat datang default Anda.


  • gitlab :https://about.gitlab.com/
  • ubuntu :http://www.ubuntu.com/

Panels
  1. Cara Menginstal HTTP Git Server Dengan Nginx di Ubuntu 16.04

  2. Cara Menginstal HTTP Git Server dengan Nginx di Ubuntu 20.04

  3. Cara Mengatur Server Email dengan Mail-in-a-Box di Ubuntu

  1. Cara Menginstal Elgg dengan Nginx di Ubuntu 18.04

  2. Cara Menginstal WordPress dengan OpenLiteSpeed ​​di Ubuntu 18.04

  3. Cara Menginstal Server Mail dengan PostfixAdmin di Ubuntu 20.04

  1. Cara Menginstal WordPress dengan LAMP Stack di Ubuntu 16.04

  2. Cara Menginstal WordPress dengan LAMP Stack di Ubuntu 20.04

  3. Cara Memasang Forum Vanilla dengan OpenLiteSpeed ​​di Ubuntu 20.04