Ubuntu 18.04 पर Gitea कैसे स्थापित करें

Gitea एक वैकल्पिक ओपन सोर्स है, जो git द्वारा संचालित सेल्फ-होस्टेड वर्जन कंट्रोल सिस्टम है। गिटिया को गोलंग में लिखा गया है और यह किसी भी मंच पर होस्ट किए जाने वाला एक हल्का समाधान है।

आवश्यक शर्तें

  • कम से कम 2 सीपीयू कोर और 1 जीबी रैम के साथ नया वल्चर उबंटू 18.04 उदाहरण
  • सूडो विशेषाधिकार के साथ गैर-रूट उपयोगकर्ता।
  • nginx
  • Git
  • MariaDB

चरण 1: Nginx स्थापित करें

अद्यतन अपनी Vultr Ubuntu 18.04 सर्वर उदाहरण।

sudo apt update

Nginx स्थापित करें।

sudo apt -y install nginx

एक बार Nginx इंस्टॉल हो जाने के बाद, परीक्षण करें कि यह ब्राउज़र में nginx परीक्षण पृष्ठ ब्राउज़ करके काम कर रहा है या नहीं। अपना वेब ब्राउज़र खोलें और उसे इंगित करेंhttp://example.com

निम्नांक को रोकने, पुनः लोड करने, पुनः आरंभ करने, स्थिति की जाँच करने और सक्षम करने के लिए निम्न आदेशों का उपयोग किया जा सकता है।

sudo systemctl stop nginx.service
sudo systemctl start nginx.service
sudo systemctl restart nginx.service
sudo systemctl reload nginx.service
sudo systemctl enable nginx.service

चरण 2: Git स्थापित करें

गिट स्थापित करें।

sudo apt -y install git

एक बार स्थापित होने के बाद, संस्करण की जाँच करें:

git --version
git version 2.17.1

चरण 3: MariaDB डेटाबेस सर्वर स्थापित करें

Gitea निम्नलिखित डेटाबेस का समर्थन करता है

  • MariaDB / MySQL
  • PostgreSQL
  • SQLite
  • TiDB

इस ट्यूटोरियल के लिए हम MariaDB सर्वर और क्लाइंट इंस्टॉल करेंगे।

sudo apt -y install mariadb-server mariadb-client

MariaDB स्थापित करने के बाद, नीचे दिए गए आदेशों को रोकने, शुरू करने, फिर से शुरू करने, स्थिति की जांच करने और इसे सक्षम करने के लिए इस्तेमाल किया जा सकता है।

sudo systemctl stop mariadb.service
sudo systemctl start mariadb.service
sudo systemctl restart mariadb.service
sudo systemctl status mariadb.service
sudo systemctl enable mariadb.service

उसके बाद, रूट पासवर्ड बनाकर और रिमोट रूट एक्सेस को अस्वीकार कर मारियाडीबी सर्वर को सुरक्षित करने के लिए नीचे कमांड चलाएं।

sudo mysql_secure_installation

जब पूछा जाए, तो गाइड का पालन करके नीचे दिए गए सवालों के जवाब दें।

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

मारियाडीबी को पुनः आरंभ करें।

sudo systemctl restart mariadb.service

यह जांचने के लिए कि क्या MariaDB स्थापित है, लॉगऑन के नीचे दिए गए कमांड को MariaDB सर्वर पर टाइप करें

sudo mysql -u root -p

फिर लॉगिन करने के लिए ऊपर दिया गया पासवर्ड टाइप करें। आपको MariaDB स्वागत संदेश दिखाई देगा।

नामक एक डेटाबेस बनाएँ gitea

CREATE DATABASE gitea;

giteauserएक नया पासवर्ड के साथ एक डेटाबेस उपयोगकर्ता बनाएँ ।

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

फिर उपयोगकर्ता को डेटाबेस तक पूर्ण पहुंच प्रदान करें।

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

अंत में, अपने परिवर्तनों को सहेजें और बाहर निकलें।

FLUSH PRIVILEGES;
EXIT;

चरण 4: गीता पर्यावरण तैयार करें

Gitea चलाने के लिए एक उपयोगकर्ता बनाएँ।

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

आवश्यक निर्देशिका संरचना बनाएँ।

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

चरण 5: Gitea स्थापित करें

Gitea बाइनरी को निम्न कमांड चलाकर डाउनलोड किया जा सकता है।

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

बाइनरी को एक वैश्विक स्थान पर कॉपी करें।

sudo cp gitea /usr/local/bin/gitea

चरण 6: स्वचालित रूप से गिटिया शुरू करने के लिए एक सेवा फ़ाइल बनाएं

एक Linux सेवा फ़ाइल बनाएँ।

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

फ़ाइल को निम्न के साथ आबाद करें।

[Unit]
Description=Gitea (Git with a cup of tea)
After=syslog.target
After=network.target
#After=mysqld.service
#After=postgresql.service
#After=memcached.service
#After=redis.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

सक्षम करें और बूट पर Gitea शुरू करें।

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

स्थिति कमांड चलाएँ।

sudo systemctl status gitea

● gitea.service - Gitea (Git with a cup of tea)
  Loaded: loaded (/etc/systemd/system/gitea.service; enabled; vendor preset: en
  Active: active (running) since Wed 2018-10-10 14:15:28 CDT; 19ms ago
 Main PID: 17769 (gitea)
   Tasks: 4 (limit: 2321)
  CGroup: /system.slice/gitea.service
       ├─17769 /usr/local/bin/gitea web -c /etc/gitea/app.ini
       └─17774 /usr/local/bin/gitea web -c /etc/gitea/app.ini

चरण 7: नंगेक्स को रिवर्स प्रॉक्सी के रूप में कॉन्फ़िगर करें

डिफ़ॉल्ट nginx कॉन्फ़िगरेशन फ़ाइल को हटाएँ।

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

Gitea के लिए एक रिवर्स प्रॉक्सी कॉन्फ़िगरेशन बनाएं।

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

फ़ाइल को निम्न कॉन्फ़िगरेशन से आबाद करें।

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;
    }
}

Gitea Nginx रिवर्स प्रॉक्सी कॉन्फ़िगरेशन सक्षम करें।

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

फिर Nginx सेवा को फिर से लोड करें।

sudo systemctl reload nginx.service

इसके बाद, अपना ब्राउज़र खोलें और सर्वर होस्टनाम या आईपी पते पर ब्राउज़ करें।

http://example.com/install

Gitea सेटअप को पूरा करने के लिए ऑनस्क्रीन निर्देशों का पालन करें।



Leave a Comment

Ubuntu 16.04 पर लाइटकार्ट शॉपिंग कार्ट प्लेटफ़ॉर्म कैसे स्थापित करें

Ubuntu 16.04 पर लाइटकार्ट शॉपिंग कार्ट प्लेटफ़ॉर्म कैसे स्थापित करें

LiteCart PHP, jQuery और HTML में लिखा गया एक स्वतंत्र और ओपन सोर्स शॉपिंग कार्ट प्लेटफॉर्म है। यह ई-कॉमर्स सॉफ्टवेअर का उपयोग करने के लिए एक सरल, हल���का और आसान है

डेबियन पर सेटअप NFS शेयर

डेबियन पर सेटअप NFS शेयर

एनएफएस एक नेटवर्क-आधारित फाइल सिस्टम है जो कंप्यूटरों को कंप्यूटर नेटवर्क पर फाइलों तक पहुंचने की अनुमति देता है। यह मार्गदर्शिका बताती है कि आप एनएफ पर फ़ोल्डर्स को कैसे उजागर कर सकते हैं

मोटोमो एनालिटिक्स को फेडोरा 28 पर कैसे स्थापित करें

मोटोमो एनालिटिक्स को फेडोरा 28 पर कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? माटोमो (पूर्व में पिविक) एक ओपन सोर्स एनालिटिक्स प्लेटफॉर्म है, जो गूगल एनालिटिक्स का एक खुला विकल्प है। Matomo स्रोत को होस्ट किया गया है

Linux पर एक TeamTalk Server सेटअप करें

Linux पर एक TeamTalk Server सेटअप करें

टीमटॉक एक कॉन्फ्रेंसिंग प्रणाली है जो उपयोगकर्ताओं को उच्च-गुणवत्ता वाले ऑडियो / वीडियो वार्तालाप, टेक्स्ट चैट, स्थानांतरण फ़ाइलें और स्क्रीन साझा करने की अनुमति देती है। यह मैं

विंडोज सर्वर पर Garrys मॉड कैसे स्थापित करें

विंडोज सर्वर पर Garrys मॉड कैसे स्थापित करें

परिचय यह आलेख बताएगा कि विंडोज सर्वर 2012 पर गारस मोड सर्वर को कैसे डाउनलोड और इंस्टॉल किया जाए। यह गाइड गहराई में होने के लिए बनाया गया है।

कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें

कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें

एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed ​​का उपयोग करता है। क्या थी?

CentOS पर FFmpeg कैसे स्थापित करें

CentOS पर FFmpeg कैसे स्थापित करें

FFmpeg ऑडियो और वीडियो रिकॉर्ड करने, कन्वर्ट करने और स्ट्रीम करने के लिए एक लोकप्रिय ओपन सोर्स समाधान है, जो सभी प्रकार की ऑनलाइन स्ट्रीमिंग सेवाओं में व्यापक रूप से उपयोग किया जाता है। मैं

SSH का उपयोग करके LUKS डिस्क एन्क्रिप्शन पर LVM को दूरस्थ रूप से अनलॉक करने के लिए CentOS 7 स्थापित और सेटअप करें

SSH का उपयोग करके LUKS डिस्क एन्क्रिप्शन पर LVM को दूरस्थ रूप से अनलॉक करने के लिए CentOS 7 स्थापित और सेटअप करें

एलयूकेएस (लिनक्स यूनिफाइड की सेटअप) लिनक्स के लिए उपलब्ध विभिन्न डिस्क एन्क्रिप्शन प्रारूपों में से एक है जो प्लेटफॉर्म एग्नॉस्टिक है। यह ट्यूटोरियल आपको बुद्धि प्रदान करेगा

अपने Vultr VPS को कैसे एक्सेस करें

अपने Vultr VPS को कैसे एक्सेस करें

Vultr अपने VPS को कॉन्फ़िगर करने, स्थापित करने और उपयोग करने के लिए कई अलग-अलग तरीके प्रदान करता है। क्रेडेंशियल एक्सेस करें आपके VPS के लिए डिफ़ॉल्ट एक्सेस क्रेडेंशियल ar

CentOS 7 पर अक्टूबर CMS को कैसे स्थापित करें

CentOS 7 पर अक्टूबर CMS को कैसे स्थापित करें

अक्टूबर एक खुला स्रोत सामग्री प्रबंधन प्रणाली है जो लारवेल PHP फ्रेमवर्क पर आधारित है। एक सुरुचिपूर्ण इंटरफ़ेस और एक संक्षिप्त मॉड्यूलर वास्तुकला के साथ