إعداد Gogs على Debian 9 أو Ubuntu 16.04

Gogs هي خدمة Git ذاتية الاستضافة غير مؤلمة.

يستخدم هذا الدليل PostgreSQL لقاعدة البيانات و Nginx كوكيل عكسي. بعد اتباع هذا الدليل ، ستتمكن من الوصول إلى واجهة ويب Gogs من خلال HTTPمستودعات git المستضافة من خلال HTTPو SSH. HTTPSيمكن إضافة الوصول عن طريق توسيع تكوين Nginx.

يجب أن يكون لديك نظام حديث ومستخدم sudo غير جذري .

قم بإعداد قاعدة البيانات

يستخدم هذا الدليل PostgreSQL. يمكنك بدلاً من ذلك استخدام MySQL / MariaDB أو SQLite3 أو MSSQL أو TiDB.

قم بتثبيت PostgreSQL.

sudo apt-get install -y postgresql

أنشئ المستخدم الذي سيتصل فيه Gogs بقاعدة البيانات. سيطالبك هذا بإنشاء كلمة مرور لهذا المستخدم. سيتم إدخال كلمة المرور هذه في تكوين Gog لاحقًا.

sudo -u postgres createuser gogs -P

إنشاء قاعدة بيانات Gogs.

sudo -u postgres createdb gogs -O gogs -E UTF8

إعداد وكيل عكسي

يستخدم هذا الدليل Nginx كوكيل عكسي. يمكنك بدلاً من ذلك استخدام HTTPخادم آخر يمكنه العمل كوكيل عكسي مثل Apache أو Caddy.

قم بتثبيت Nginx.

sudo apt-get install -y nginx

تحرير /etc/nginx/sites-enabled/default.

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

ابحث عن الخطوط التالية.

location / {
        # First attempt to serve request as file, then
        # as directory, then fall back to displaying a 404.
        try_files $uri $uri/ =404;
}

قم بتغييرها إلى هذا.

location / {
        proxy_pass http://127.0.0.1:3000;
}

أعد تحميل Nginx لاستخدام التكوين الجديد.

sudo systemctl reload nginx

تثبيت Gogs

أولاً ، تأكد gitمن تثبيت.

sudo apt-get install -y git

ثم قم بإنشاء المستخدم Gogs سيتم تشغيله والذي سيتم استخدامه للوصول إلى SSH git.

sudo useradd -m git

بعد ذلك ، قم بتنزيل وفك إصدار Gogs لبنيتك.

لأنظمة 64 بت.

sudo -u git sh -c "curl https://dl.gogs.io/0.11.29/linux_amd64.tar.gz | tar -xz -C /home/git/"

لأنظمة 32 بت.

sudo -u git sh -c "curl https://dl.gogs.io/0.11.29/linux_386.tar.gz | tar -xz -C /home/git/"

إعداد Gogs للتشغيل على التمهيد.

sudo cp /home/git/gogs/scripts/systemd/gogs.service /etc/systemd/system
sudo systemctl enable gogs

بدء Gogs.

sudo systemctl start gogs

هذه هي المرة الوحيدة التي ستحتاج فيها لبدء Gogs بهذه الطريقة.

الترتيب الأولي

انتقل إلى http://example.comمتصفح الويب الخاص بك. سوف ترى:Install Steps For First-time Run

قم بتغيير الإعدادات التالية.

Database Type: PostgreSQL
User: gogs
Password: (password you created earlier)
Domain: example.com
Application URL: http://example.com/

قد ترغب في تعيين Application Nameو Email Service Settings، و Server and Other Services Settings. يمكن تغيير جميع الإعدادات لاحقًا عن طريق التحرير /home/git/gogs/custom/conf/app.ini.

انقر Install Gogs.

ستتم إعادة توجيهك إلى صفحة تسجيل الدخول. Sign upمستخدم جديد الآن.

السماح فقط بوصول HTTP (S) عبر Nginx

هذا مفيد في الغالب عند استخدام Nginx لإنهاء HTTPS.

أضف HTTP_ADDR = 127.0.0.1إلى [server]قسم /home/git/gogs/custom/conf/app.ini.

sudo -u git nano /home/git/gogs/custom/conf/app.ini

بعد هذا التغيير ، [server]سيبدو القسم على النحو التالي.

[server]
DOMAIN           = example.com
HTTP_ADDR        = 127.0.0.1
HTTP_PORT        = 3000
ROOT_URL         = http://example.com/
DISABLE_SSH      = false
SSH_PORT         = 22
START_SSH_SERVER = false
OFFLINE_MODE     = false

أعد تشغيل Gogs لاستخدام التكوين المحدث.

sudo systemctl restart gogs

اترك تعليقاً

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

وظائف طبقات معمارية مرجعية للبيانات الضخمة

وظائف طبقات معمارية مرجعية للبيانات الضخمة

اقرأ المدونة لمعرفة الطبقات المختلفة في بنية البيانات الضخمة ووظائفها بأبسط طريقة.

6 أشياء شديدة الجنون حول نينتندو سويتش

6 أشياء شديدة الجنون حول نينتندو سويتش

يعرف الكثير منكم أن Switch سيصدر في مارس 2017 وميزاته الجديدة. بالنسبة لأولئك الذين لا يعرفون ، قمنا بإعداد قائمة بالميزات التي تجعل "التبديل" "أداة لا غنى عنها".

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

هل تنتظر عمالقة التكنولوجيا للوفاء بوعودهم؟ تحقق من ما تبقى دون تسليم.

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

اقرأ هذا لمعرفة مدى انتشار الذكاء الاصطناعي بين الشركات الصغيرة وكيف أنه يزيد من احتمالات نموها ومنح منافسيها القدرة على التفوق.

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

مع تطور العلم بمعدل سريع ، واستلام الكثير من جهودنا ، تزداد أيضًا مخاطر تعريض أنفسنا إلى تفرد غير قابل للتفسير. اقرأ ، ماذا يمكن أن يعني التفرد بالنسبة لنا.

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

لقد أصبح حل CAPTCHA صعبًا جدًا على المستخدمين في السنوات القليلة الماضية. هل ستكون قادرة على أن تظل فعالة في اكتشاف البريد العشوائي والروبوتات في المستقبل القريب؟

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

ما هو التطبيب عن بعد والرعاية الصحية عن بعد وأثره على الأجيال القادمة؟ هل هو مكان جيد أم لا في حالة الوباء؟ اقرأ المدونة لتجد طريقة عرض!

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

ربما سمعت أن المتسللين يكسبون الكثير من المال ، لكن هل تساءلت يومًا كيف يجنون هذا النوع من المال؟ دعنا نناقش.

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

أصدرت Apple مؤخرًا macOS Catalina 10.15.4 تحديثًا تكميليًا لإصلاح المشكلات ولكن يبدو أن التحديث يتسبب في المزيد من المشكلات التي تؤدي إلى إنشاء أجهزة macOS. قراءة هذه المادة لمعرفة المزيد