كيفية إنشاء GitHub Gist الخاص بك باستخدام Opengist


Opengist هو خادم Github Gist خفيف الوزن ومستضاف ذاتيًا لنظام التشغيل Linux. على عكس الحلول الأخرى، فإنه يستفيد من الميزات الخاصة بـ Git لتحميل ملفاتك النصية وتصفحها ومراجعتها بسرعة. نعرض لك هنا كيفية تثبيت واستضافة خادم Opengist الخاص بك على Ubuntu Linux.

لماذا تستضيف خادم Gist الخاص بك مع Opengist

واحدة من أكبر نقاط البيع في Opengist هي أنها خدمة تشبه Pastebin تستخدم Git في الواجهة الخلفية لها. وهذا يجعل من السهل التقاط Opengist واستضافته على Linux لأي شخص مطلع بالفعل على الخدمات المشابهة لـ Git مع دعم Gist مثل Github وGitlab.

هناك قوة أخرى لـ Opengist وهي أنه يمكنه تتبع عمليات اللصق الخاصة بالمستخدم وتوفير عناصر تحكم لإدارة رؤية اللصق. ونتيجة لذلك، يمكن أن يكون Opengist مركزًا مستضافًا ذاتيًا لمشاركة النص بين مجموعة النظراء الصغيرة لديك.

لقطة شاشة لجميع العناصر المتوفرة من مثيل OpenGist.

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

جيد ان تعلم: تعلم أساسيات إدارة التعليمات البرمجية المصدر من خلال الاطلاع على دليل المبتدئين الشامل الخاص بنا لـ Git.

تحضير النظام لـ Opengist

افتراض: تم إجراء هذا البرنامج التعليمي على Ubuntu 24.04 VPS مع ما لا يقل عن 2 جيجابايت من ذاكرة الوصول العشوائي و25 جيجابايت من مساحة القرص. ويفترض أيضًا أنك تمتلك حاليًا اسم مجال وأنه يمكنك إضافة سجل DNS “A” إليه.

ملحوظة: يركز هذا القسم على تثبيت Docker على الأنظمة المستندة إلى Ubuntu. لتثبيته على توزيعة مختلفة، راجع دليلنا العام لتثبيت Docker على Linux.

الخطوة الأولى لنشر OpenGist على جهازك هي الحصول على Docker وNginx وCertbot وتثبيتهما. للقيام بذلك، قم أولاً بإحضار مفتاح التوقيع لمشروع Docker:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

قم بإنشاء ملف مستودع جديد ضمن “/etc/apt/sources.list.d/”:

sudo nano /etc/apt/sources.list.d/docker.list

الصق السطر التالي من التعليمات البرمجية داخل ملف المستودع الجديد الخاص بك:

deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu noble stable

احفظ ملف المستودع الخاص بك، ثم قم بتحديث وترقية جميع الحزم الموجودة في نظامك:

sudo apt update && sudo apt upgrade

قم بإحضار ملف Docker الثنائي مع مكون Compose الإضافي وتبعياته:

sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx
محطة توضح عملية تثبيت التبعيات لـ Opengist.

تأكد من وجود الحزمة المفاجئة “الأساسية” في نظامك:

قم بتثبيت حزمة Certbot snap من Electronic Frontier Foundation (EFF):

sudo snap install certbot --classic

تثبيت وتشغيل Opengist

أنشئ مجلدًا جديدًا لـ Opengist في الدليل الرئيسي للمستخدم الحالي، ثم انتقل إلى داخله:

mkdir -p ~/opengist/data && cd ~/opengist

استخدم محرر النصوص المفضل لديك لإنشاء “docker-compose.yml” جديد داخل مجلد Opengist الخاص بك:

nano ./docker-compose.yml

قم بلصق كتلة التعليمات البرمجية التالية داخل ملف الإنشاء الجديد الخاص بك:

services:
  opengist:
    image: ghcr.io/thomiceli/opengist:1.7
    container_name: opengist
    restart: unless-stopped
    ports:
      - "6157:6157"
      - "2222:2222"
    volumes:
      - ./data:/opengist"

احفظ ملف “docker-compose.yml”، ثم قم بتشغيل الأمر التالي لإنشاء OpenGist وتثبيته على نظامك:

تأكد من تشغيل Opengist من خلال إدراج جميع حاويات Docker النشطة في جهازك:

محطة تعرض حاوية Opengist Docker قيد التشغيل.

في ملحوظة جانبية: تعرف على كيفية نقل حاويات Docker الخاصة بك إلى مضيف جديد.

إنشاء وكيل عكسي SSL لـ Opengist

في هذه المرحلة، لديك الآن نسخة Opengist تعمل جزئيًا وتعمل على المنفذ 6157. لاستخدامها بشكل آمن عبر الإنترنت، تحتاج إلى تمريرها عبر وكيل عكسي SSL باستخدام Nginx.

للقيام بذلك، قم بإنشاء سجل DNS جديد “A” على اسم المجال الخاص بك مع الإشارة إلى عنوان IPv4 لجهاز Opengist الخاص بك.

لقطة شاشة توضح سجلات DNS لـ Opengist VPS.

ارجع إلى المحطة الطرفية لخادمك، ثم قم بإنشاء ملف تكوين موقع جديد لـ Opengist:

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

الصق كتلة التعليمات البرمجية التالية داخل ملف التكوين الجديد الخاص بك:

server {
 
        server_name SUBDOMAIN.YOUR-ROOT.DOMAIN;
 
        location / {
                proxy_pass http://127.0.0.1:6157;
                proxy_http_version 1.1;
                proxy_redirect off;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "upgrade";
                proxy_set_header X-Forwarded-Proto https;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header Host $host;
        }
}

احفظ ملف تكوين موقعك، ثم أنشئ رابطًا رمزيًا من “/etc/nginx/sites-available/” إلى “/etc/nginx/sites-enabled/”:

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

تأكد من أن تكوين Nginx الخاص بك يعمل بشكل صحيح، ثم ابدأ تشغيل خادم الويب باستخدام systemctl:

nginx -t
sudo systemctl enable --now nginx.service
محطة تعرض وكيل Nginx العكسي الذي يعمل على الخادم.

قم بتسجيل نظام Opengist الخاص بك باستخدام عنوان بريدك الإلكتروني في EFF:

sudo certbot register --agree-tos -m YOUR@EMAIL.ADDRESS

قم بإنشاء شهادة SSL جديدة لاسم المجال الخاص بك باستخدام Certbot:

sudo certbot --nginx -d SUBDOMAIN.YOUR-ROOT.DOMAIN

تأكد من إمكانية الوصول إلى موقع الويب الخاص بك عبر الإنترنت عن طريق فتح متصفح الويب والانتقال إلى اسم المجال الخاص بك.

لقطة شاشة توضح تشغيل OpenGist عبر HTTPS.

نصيحة: تعرف على كيفية عمل التشفير على الإنترنت من خلال إنشاء شهادات SSL الخاصة بك باستخدام OpenSSL.

إنشاء Gist الأول الخاص بك مع Opengist

افتراضيًا، لا يوفر Opengist حساب مسؤول لمثيلك الشخصي. لإنشاء واحد، تحتاج إلى تسجيله أولاً من خلال واجهة الويب الخاصة بمثيلك.

ابدأ بالانتقال إلى النطاق الفرعي لـ Opengist، ثم انقر فوق يسجل الزر الموجود في الزاوية اليمنى العليا للصفحة.

لقطة شاشة تسلط الضوء على زر التسجيل في الزاوية اليمنى العليا لـ Opengist.

أدخل اسم مستخدم وكلمة مرور لحساب المسؤول الخاص بك، ثم انقر فوق يسجل لإنشائه.

لقطة شاشة توضح عملية التسجيل لحساب Opengist الأول.

سيؤدي القيام بذلك إلى تسجيل دخولك تلقائيًا إلى واجهة Opengist ويمنحك مطالبة بصفحة Gist الأولى الخاصة بك. قم بكتابة أو لصق مقتطف من النص داخل مربع الإدخال، ثم انقر فوق إنشاء جوهر العام لإنشاء جوهرك الأول.

لقطة شاشة توضح واجهة إنشاء عناصر جديدة في Opengist.

ملحوظة: يمكنك ضبط إعدادات الخصوصية الخاصة بـ Gist الخاص بك عن طريق النقر فوق السهم للأسفل بجانب إنشاء جوهر العام زر.

يمكنك الآن مشاركة ملف Gist الجديد الخاص بك مع أي شخص عن طريق نسخ الرابط الخاص به من شريط عناوين المتصفح الخاص بك وإرساله إلى المستلم.

إنشاء وتحديث Gist باستخدام SSH

بصرف النظر عن واجهة الويب، يدعم Opengist أيضًا إرسال Gist وتحريره مباشرةً من عميل Git CLI. يعد هذا مفيدًا إذا كنت تعمل على جلسة طرفية فقط ولا يمكنك الوصول إلى الواجهة الرسومية.

قم بإنشاء مجلد جديد لصفحة Gist الخاصة بك في الدليل الرئيسي للمستخدم الخاص بك:

mkdir ~/my-gist && cd ~/my-gist

إما أن تقوم بنسخ أو إنشاء ملف نصي جديد يحتوي على بيانات Gist الخاصة بك، ثم قم بتهيئة مستودع Git جديد داخل مجلدك الجديد:

cp ~/my-text-file.txt ~/my-gist/
git init
محطة توضح عملية إنشاء مستودع Git جديد لصفحة Gist.

أضف ملفات مجلدك إلى Git repo الجديد، ثم أنشئ الالتزام الأول الخاص به:

git add .
git commit -m "My first Opengist commit."

قم بتعيين نقطة النهاية البعيدة لمستودع Git المحلي الخاص بك على خادم Opengist الخاص بك:

git remote add origin https://SUBDOMAIN.YOUR-ROOT.DOMAIN/init

أرسل مستودعك الجديد إلى خادم Opengist الخاص بك:

git push -u origin master

قم بتوفير بيانات اعتماد Opengist الخاصة بك، ثم اضغط على يدخل لتأكيد أمر الدفع.

محطة تسلط الضوء على مطالبة بيانات الاعتماد لخادم Opengist.

انسخ أمر Git الذي يعوده Opengist في جلستك الطرفية، ثم قم بتشغيله لتعيين الأصل البعيد الجديد لمستودعك.

محطة تسلط الضوء على عنوان URL البعيد الجديد لصفحة Opengist.

تأكد من أنك قمت بحفظ جوهرك بشكل صحيح من خلال النظر إلى واجهة الويب الخاصة بخادمك.

لقطة شاشة تعرض صفحة Gist الجديدة على واجهة الويب Opengist.

إن استضافة خادم Opengist الخاص بك على Linux وإنشاء صفحات Gist تشبه Github ليست سوى بعض الأشياء التي يمكنك القيام بها باستخدام البرامج ذاتية الاستضافة. اكتشف المزيد حول الاستضافة الذاتية من خلال النظر في بعض أفضل البدائل ذاتية الاستضافة لـ Github اليوم.

حقوق الصورة: جوان جاميل عبر Unsplash. جميع التعديلات ولقطات الشاشة بواسطة Ramces Red.

اشترك في نشرتنا الإخبارية!

يتم تسليم أحدث البرامج التعليمية لدينا مباشرة إلى صندوق البريد الوارد الخاص بك

رمسيس الأحمر

رمسيس كاتب في مجال التكنولوجيا عاش مع أجهزة الكمبيوتر طوال حياته. قارئ غزير الإنتاج وطالب في الأنثروبولوجيا، وهو شخصية غريبة الأطوار تكتب مقالات عن Linux وأي شيء لا شيء.


اكتشاف المزيد من تكتك تكنولوجيا

اشترك للحصول على أحدث التدوينات المرسلة إلى بريدك الإلكتروني.

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى

اكتشاف المزيد من تكتك تكنولوجيا

اشترك الآن للاستمرار في القراءة والحصول على حق الوصول إلى الأرشيف الكامل.

Continue reading