نحوه نصب Gitea در Debian 9

Gitea یک منبع کنترل جایگزین متن باز و خود میزبان است که توسط Git ساخته شده است. Gitea در Golang نوشته شده است و یک راه حل سبک است که باید روی هر سیستم عامل میزبانی شود.

پیش نیازها

  • نمونه جدید Vultr Debian 9.
  • کاربر غیر ریشه با sudoامتیازات.
  • نگینکس
  • گیت
  • MariaDB

مرحله 1: Nginx را نصب کنید

لیست بسته های خود را به روز کنید.

sudo apt update

Nginx را نصب کنید.

sudo apt -y install nginx

پس از اتمام نصب ، دستورات زیر را برای شروع و فعال کردن سرویس Nginx اجرا کنید.

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

مرحله 2: نصب Git

این کار با دستور زیر قابل انجام است.

sudo apt -y install git

مرحله 3: سرور بانک اطلاعاتی MariaDB را نصب کنید

Gitea از سرورهای پایگاه داده زیر پشتیبانی می کند.

  • MariaDB / MySQL
  • PostgreSQL
  • SQLite
  • TiDB

برای این آموزش از سرور و مشتری MariaDB استفاده خواهیم کرد.

sudo apt -y install mariadb-server mariadb-client

پس از اتمام ، مطمئن شوید که MariaDB فعال و در حال اجرا است.

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

پس از آن ، دستور زیر را اجرا کنید تا سرور MariaDB با ایجاد رمزعبور root و غیرفعال کردن دسترسی از راه دور ریشه ایمن شود.

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

راه اندازی مجدد MariaDB.

sudo systemctl restart mariadb.service

برای ورود به کنسول MariaDB ، دستور زیر را تایپ کنید.

sudo mysql -u root -p

سپس برای ورود به سیستم ، رمز عبوری را که در بالا ایجاد کردید تایپ کنید. پیام خوش آمدید MariaDB را مشاهده خواهید کرد.

ایجاد یک پایگاه داده به نام gitea.

CREATE DATABASE gitea;

یک کاربر پایگاه داده giteauserبا نام رمز جدید ایجاد کنید.

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

اطمینان حاصل کنید new_password_hereکه یک رمزعبور قوی و پیچیده جایگزین کنید .

سپس دسترسی کامل به دیتابیس را به کاربر اعطا کنید.

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

در آخر ، تغییرات خود را ذخیره کرده و از آن خارج شوید.

FLUSH PRIVILEGES;
EXIT;

مرحله 4: محیط Gitea را آماده کنید

برای اجرای 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: نصب گیتا

با اجرای فرامین زیر ، باینری گیتا قابل بارگیری است.

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

مرحله ششم: یک فایل سرویس ایجاد کنید تا به طور خودکار Gitea شروع شود

یک فایل سرویس linux ایجاد کنید.

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

با استفاده از ویرایشگر متن مورد نظر خود ، این پرونده تازه ایجاد شده را باز کرده و در صورت وجود موارد زیر را پر کنید.

[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

Gitea را فعال کنید و شروع کنید.

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

اطمینان حاصل کنید که Gitea در حال اجرا است.

sudo systemctl status gitea

مرحله 7: Nginx را به عنوان یک پروکسی معکوس پیکربندی کنید

پرونده پیش فرض پیکربندی nginx را حذف کنید.

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

یک پیکربندی پروکسی معکوس برای Gitea ایجاد کنید.

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

پرونده را با پیکربندی زیر جمع کنید ، حتماً example.comنام دامنه یا آدرس IP خود را جایگزین کنید.

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/git

سپس سرویس Nginx را بارگیری مجدد کنید.

sudo systemctl reload nginx.service

در مرحله بعد مرورگر خود را باز کرده و روی نام میزبان سرور یا آدرس IP مرور کنید.

http://YOUR_SERVER_IP/install

برای تکمیل تنظیم Gitea ، دستورالعمل های روی صفحه را دنبال کنید.

یک نظر بگذارید

نحوه نصب Anchor CMS بر روی یک VPS Fedora 26 LAMP

نحوه نصب Anchor CMS بر روی یک VPS Fedora 26 LAMP

با استفاده از یک سیستم متفاوت؟ Anchor CMS یک سیستم مدیریت محتوا (CMS) بسیار ساده و بسیار سبک ، بسیار آزاد و آزاد است.

اشتراک NFS را در Debian تنظیم کنید

اشتراک NFS را در Debian تنظیم کنید

NFS یک سیستم فایل مبتنی بر شبکه است که به رایانه ها اجازه می دهد تا از طریق شبکه رایانه ای به فایلها دسترسی پیدا کنند. این راهنما توضیح می دهد که چگونه می توانید پوشه ها را روی NF قرار دهید

نحوه بروزرسانی CentOS 7 ، Ubuntu 16.04 و Debian 8

نحوه بروزرسانی CentOS 7 ، Ubuntu 16.04 و Debian 8

هنگام راه اندازی سرور جدید لینوکس ، به روزرسانی سیستم های هسته و سایر بسته ها تا آخرین نسخه پایدار یک روش توصیه شده است. در این مقاله

نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04

نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04

LiteCart یک بستر سبد خرید آزاد و منبع باز است که به زبان های PHP ، jQuery و HTML 5 نوشته شده است. این نرم افزار ساده ، سبک و با کاربرد آسان است.

نحوه نصب Matomo Analytics در Fedora 28

نحوه نصب Matomo Analytics در Fedora 28

با استفاده از یک سیستم متفاوت؟ Matomo (سابقا پیویک) یک بستر تحلیلی منبع باز است ، یک جایگزین باز برای Google Analytics. منبع Matomo میزبان o

یک سرور TeamTalk را در لینوکس تنظیم کنید

یک سرور TeamTalk را در لینوکس تنظیم کنید

TeamTalk یک سیستم کنفرانس است که به کاربران امکان می دهد مکالمات صوتی / تصویری با کیفیت بالا ، چت متنی ، انتقال فایل ها و صفحه های به اشتراک بگذارند. من

با استفاده از کلید SSH خود برای ورود به کاربران غیر ریشه استفاده کنید

با استفاده از کلید SSH خود برای ورود به کاربران غیر ریشه استفاده کنید

Vultr یک ویژگی را فراهم می کند که به شما امکان می دهد با ایجاد یک نمونه جدید ، کلیدهای SSH را از قبل نصب کنید. این اجازه می دهد تا به کاربر root دسترسی داشته باشید ، با این حال ، th

نحوه نصب انجمن NodeBB در FreeBSD 12

نحوه نصب انجمن NodeBB در FreeBSD 12

با استفاده از یک سیستم متفاوت؟ NodeBB یک نرم افزار انجمن مبتنی بر Node.js است. از سوکت های وب برای تعامل فوری و اعلامیه های زمان واقعی استفاده می کند. NodeB

نحوه نصب Ranger Terminal File Manager در لینوکس

نحوه نصب Ranger Terminal File Manager در لینوکس

رنجر یک مدیر فایل مبتنی بر خط فرمان است که دارای کلیدهای اتصال VI است. این برنامه یک رابط لعنتی مینیمالیستی و زیبا با نمای سلسله مراتب فهرست ارائه می دهد

نصب و راه اندازی ZNC در اوبونتو

نصب و راه اندازی ZNC در اوبونتو

ZNC یک پیشرانه پیشرفته شبکه IRC است که تمام وقت بهم متصل می شود تا مشتری IRC بتواند بدون از دست دادن جلسه گپ قطع یا وصل شود.