Cara Memasang Gitea pada Debian 9

Gitea adalah sumber terbuka alternatif, sistem kawalan versi kendiri yang dikendalikan oleh Git. Gitea ditulis dalam Golang dan merupakan penyelesaian yang ringan untuk dihoskan di mana-mana platform.

Prasyarat

  • Contoh baru Vultr Debian 9.
  • Pengguna bukan akar dengan sudokeistimewaan.
  • Nginx
  • Git
  • MariaDB

Langkah 1: Pasang Nginx

Kemas kini senarai pakej anda.

sudo apt update

Pasang Nginx.

sudo apt -y install nginx

Setelah pemasangan selesai, jalankan arahan berikut untuk memulakan dan mengaktifkan perkhidmatan Nginx.

sudo systemctl enable nginx.service
sudo systemctl start nginx.service

Langkah 2: Pasang Git

Ini boleh dilakukan dengan arahan berikut.

sudo apt -y install git

Langkah 3: Pasang Pelayan Pangkalan Data MariaDB

Gitea menyokong pelayan pangkalan data berikut.

  • MariaDB / MySQL
  • PostgreSQL
  • SQLite
  • TiDB

Untuk tutorial ini, kami akan menggunakan pelayan dan klien MariaDB.

sudo apt -y install mariadb-server mariadb-client

Setelah selesai, pastikan MariaDB diaktifkan dan berjalan.

sudo systemctl enable mariadb.service
sudo systemctl start mariadb.service

Selepas itu, jalankan arahan di bawah untuk mengamankan pelayan MariaDB dengan membuat kata laluan root dan tidak membenarkan akses akar jauh.

sudo mysql_secure_installation

Apabila digesa, jawab soalan di bawah dengan mengikuti panduan.

Enter current password for root (enter for none): Just press the Enter
Set root password? [Y/n]: Y
New password: Enter password
Re-enter new password: Repeat password
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]:  Y
Reload privilege tables now? [Y/n]:  Y

Mulakan semula MariaDB.

sudo systemctl restart mariadb.service

Taipkan arahan di bawah untuk masuk ke konsol MariaDB.

sudo mysql -u root -p

Kemudian ketik kata laluan yang anda buat di atas untuk log masuk. Anda akan melihat mesej sambutan MariaDB.

Buat pangkalan data yang dipanggil gitea.

CREATE DATABASE gitea;

Buat pengguna pangkalan data dipanggil giteauserdengan kata laluan baru.

CREATE USER 'giteauser'@'localhost' IDENTIFIED BY 'new_password_here';

Pastikan anda menggantikan new_password_herekata laluan yang kuat dan kompleks.

Kemudian memberikan pengguna akses penuh ke pangkalan data.

GRANT ALL ON gitea.* TO 'giteauser'@'localhost' IDENTIFIED BY 'user_password_here' WITH GRANT OPTION;

Akhirnya, simpan perubahan anda dan keluar.

FLUSH PRIVILEGES;
EXIT;

Langkah 4: Sediakan Alam Sekitar Gitea

Buat pengguna untuk menjalankan Gitea.

sudo adduser --system --shell /bin/bash --gecos 'Git Version Control' --group --disabled-password --home /home/git git

Buat struktur direktori yang diperlukan.

sudo mkdir -p /var/lib/gitea/{custom,data,indexers,public,log}
sudo chown git:git /var/lib/gitea/{data,indexers,log}
sudo chmod 750 /var/lib/gitea/{data,indexers,log}
sudo mkdir /etc/gitea
sudo chown root:git /etc/gitea
sudo chmod 770 /etc/gitea

Langkah 5: Pasang Gitea

Perduaan Gitea boleh dimuat turun dengan menjalankan perintah berikut.

sudo wget -O gitea https://dl.gitea.io/gitea/1.5.0/gitea-1.5.0-linux-amd64 
sudo chmod +x gitea

Salin perduaan ke lokasi global.

sudo cp gitea /usr/local/bin/gitea

Langkah 6: Buat fail perkhidmatan untuk memulakan Gitea secara automatik

Buat fail perkhidmatan linux.

sudo touch /etc/systemd/system/gitea.service

Menggunakan editor teks pilihan anda, buka fail baru yang baru dan masukkan jika dengan yang berikut.

[Unit]
Description=Gitea (Git with a cup of tea)
After=syslog.target
After=network.target
After=mariadb.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
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/bin/gitea web -c /etc/gitea/app.ini
Restart=always
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea
# If you want to bind Gitea to a port below 1024 uncomment
# the two values below
###
#CapabilityBoundingSet=CAP_NET_BIND_SERVICE
#AmbientCapabilities=CAP_NET_BIND_SERVICE

[Install]
WantedBy=multi-user.target

Aktifkan dan mulakan Gitea pada boot.

sudo systemctl daemon-reload
sudo systemctl enable gitea
sudo systemctl start gitea

Pastikan Gitea berjalan.

sudo systemctl status gitea

Langkah 7: Konfigurasikan Nginx sebagai proksi terbalik

Padamkan fail konfigurasi nginx lalai.

sudo rm /etc/nginx/sites-enabled/default

Buat konfigurasi proksi terbalik untuk Gitea.

sudo touch /etc/nginx/sites-available/git

Tandakan fail dengan konfigurasi berikut, pastikan anda menggantikan example.comdengan nama domain atau alamat IP anda.

upstream gitea {
    server 127.0.0.1:3000;
}

server {
    listen 80 default_server;
    listen [::]:80 default_server;
    server_name example.com;
    root /var/lib/gitea/public;
    access_log off;
    error_log off;

    location / {
      try_files maintain.html $uri $uri/index.html @node;
    }

    location @node {
      client_max_body_size 0;
      proxy_pass http://localhost:3000;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header Host $http_host;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_max_temp_file_size 0;
      proxy_redirect off;
      proxy_read_timeout 120;
    }
}

Dayakan konfigurasi proksi terbalik Gitea Nginx.

sudo ln -s /etc/nginx/sites-available/git /etc/nginx/sites-enabled/git

Kemudian tambah semula Perkhidmatan Nginx.

sudo systemctl reload nginx.service

Seterusnya, buka penyemak imbas anda dan semak imbas ke nama hos pelayan atau alamat IP.

http://YOUR_SERVER_IP/install

Ikuti arahan pada skrin untuk menyelesaikan persediaan Gitea.



Leave a Comment

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.

Janji Teknologi Yang Masih Tidak Ditepati

Janji Teknologi Yang Masih Tidak Ditepati

Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.

Fungsi Lapisan Seni Bina Rujukan Data Besar

Fungsi Lapisan Seni Bina Rujukan Data Besar

Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut