كيفية إنشاء 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 أي نفقات إضافية للتشغيل. يعتمد التكوين الافتراضي الخاص به فقط على حاوية 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
تأكد من وجود الحزمة المفاجئة “الأساسية” في نظامك:
قم بتثبيت حزمة 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 النشطة في جهازك:
في ملحوظة جانبية: تعرف على كيفية نقل حاويات Docker الخاصة بك إلى مضيف جديد.
إنشاء وكيل عكسي SSL لـ Opengist
في هذه المرحلة، لديك الآن نسخة Opengist تعمل جزئيًا وتعمل على المنفذ 6157. لاستخدامها بشكل آمن عبر الإنترنت، تحتاج إلى تمريرها عبر وكيل عكسي SSL باستخدام Nginx.
للقيام بذلك، قم بإنشاء سجل DNS جديد “A” على اسم المجال الخاص بك مع الإشارة إلى عنوان IPv4 لجهاز Opengist الخاص بك.
ارجع إلى المحطة الطرفية لخادمك، ثم قم بإنشاء ملف تكوين موقع جديد لـ 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
قم بتسجيل نظام Opengist الخاص بك باستخدام عنوان بريدك الإلكتروني في EFF:
sudo certbot register --agree-tos -m YOUR@EMAIL.ADDRESS
قم بإنشاء شهادة SSL جديدة لاسم المجال الخاص بك باستخدام Certbot:
sudo certbot --nginx -d SUBDOMAIN.YOUR-ROOT.DOMAIN
تأكد من إمكانية الوصول إلى موقع الويب الخاص بك عبر الإنترنت عن طريق فتح متصفح الويب والانتقال إلى اسم المجال الخاص بك.
نصيحة: تعرف على كيفية عمل التشفير على الإنترنت من خلال إنشاء شهادات SSL الخاصة بك باستخدام OpenSSL.
إنشاء Gist الأول الخاص بك مع Opengist
افتراضيًا، لا يوفر Opengist حساب مسؤول لمثيلك الشخصي. لإنشاء واحد، تحتاج إلى تسجيله أولاً من خلال واجهة الويب الخاصة بمثيلك.
ابدأ بالانتقال إلى النطاق الفرعي لـ Opengist، ثم انقر فوق يسجل الزر الموجود في الزاوية اليمنى العليا للصفحة.
أدخل اسم مستخدم وكلمة مرور لحساب المسؤول الخاص بك، ثم انقر فوق يسجل لإنشائه.
سيؤدي القيام بذلك إلى تسجيل دخولك تلقائيًا إلى واجهة Opengist ويمنحك مطالبة بصفحة Gist الأولى الخاصة بك. قم بكتابة أو لصق مقتطف من النص داخل مربع الإدخال، ثم انقر فوق إنشاء جوهر العام لإنشاء جوهرك الأول.
ملحوظة: يمكنك ضبط إعدادات الخصوصية الخاصة بـ 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 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 الخاصة بك، ثم اضغط على يدخل لتأكيد أمر الدفع.
انسخ أمر Git الذي يعوده Opengist في جلستك الطرفية، ثم قم بتشغيله لتعيين الأصل البعيد الجديد لمستودعك.
تأكد من أنك قمت بحفظ جوهرك بشكل صحيح من خلال النظر إلى واجهة الويب الخاصة بخادمك.
إن استضافة خادم Opengist الخاص بك على Linux وإنشاء صفحات Gist تشبه Github ليست سوى بعض الأشياء التي يمكنك القيام بها باستخدام البرامج ذاتية الاستضافة. اكتشف المزيد حول الاستضافة الذاتية من خلال النظر في بعض أفضل البدائل ذاتية الاستضافة لـ Github اليوم.
حقوق الصورة: جوان جاميل عبر Unsplash. جميع التعديلات ولقطات الشاشة بواسطة Ramces Red.
اشترك في نشرتنا الإخبارية!
يتم تسليم أحدث البرامج التعليمية لدينا مباشرة إلى صندوق البريد الوارد الخاص بك
اكتشاف المزيد من تكتك تكنولوجيا
اشترك للحصول على أحدث التدوينات المرسلة إلى بريدك الإلكتروني.