4.7 KiB
مقطع
مقطع هو مكان لوضع مقاطع صغيرة من الكود البرمجي مستضاف ذاتيًا ومدعوم بـ Git. يتم تخزين جميع المقاطع في مستودع Git ويمكن قراءتها و/أو تعديلها باستخدام أوامر Git القياسية أو عبر واجهة الويب. وهو مشابه لـ GitHub Gist، لكنه مفتوح المصدر ويمكن استضافته ذاتيًا.
الصفحة الرئيسية • التوثيق • ديسكورد • نسخة تجريبية
الميزات
- إنشاء مقاطع عامة أو غير مدرجة أو خاصة
- Init / Clone / Pull / Push للمقاطع عبر Git باستخدام HTTP أو SSH
- تلوين الصياغة؛ دعم Markdown وCSV
- البحث في كود المقاطع؛ وتصفح مقاطع المستخدمين والإعجابات والتفريعات
- إضافة مواضيع للمقاطع
- تضمين المقاطع في مواقع أخرى
- سجل المراجعات
- الإعجاب بالمقاطع / تفريعها
- تنزيل الملفات الخام أو كأرشيف ZIP
- تسجيل الدخول عبر OAuth2 مع GitHub وGitLab وGitea وOpenID Connect
- تقييد أو إلغاء تقييد ظهور المقاطع للمستخدمين المجهولين
- دعم Docker / Helm Chart
- المزيد...
البدء السريع
باستخدام Docker
صور Docker images متاحة لكل إصدار:
docker pull ghcr.io/thomiceli/opengist:1.12
يمكن استخدامه عبر ملف docker-compose.yml:
- أنشئ ملف
docker-compose.ymlبالمحتوى التالي - شغّل
docker compose up -d - أصبح مقطع يعمل الآن على المنفذ 6157، ويمكنك التصفح عبر http://localhost:6157
services:
opengist:
image: ghcr.io/thomiceli/opengist:1.12
container_name: opengist
restart: unless-stopped
ports:
- "6157:6157" # منفذ HTTP
- "2222:2222" # منفذ SSH، ويمكن حذفه إذا لم تستخدم SSH
volumes:
- "$HOME/.opengist:/opengist"
يمكنك تحديد المستخدم/المجموعة التي يجب أن تشغّل الحاوية وتمتلك الملفات عبر ضبط متغيري البيئة UID وGID:
services:
opengist:
# ...
environment:
UID: 1001
GID: 1001
عبر الملف التنفيذي
نزّل الأرشيف المناسب لنظامك من صفحة الإصدارات من هنا، ثم فك الضغط.
# مثال لنظام linux amd64
wget https://github.com/thomiceli/opengist/releases/download/v1.12.1/opengist1.12.1-linux-amd64.tar.gz
tar xzvf opengist1.12.1-linux-amd64.tar.gz
cd opengist
chmod +x opengist
./opengist # مع أو بدون `--config config.yml`
أصبح مقطع يعمل الآن على المنفذ 6157، ويمكنك التصفح عبر http://localhost:6157
من المصدر
المتطلبات: Git (2.28+)، Go (1.23+)، Node.js (16+)، Make (اختياري لكنه أسهل)
git clone https://github.com/thomiceli/opengist
cd opengist
make
./opengist
أصبح مقطع يعمل الآن على المنفذ 6157، ويمكنك التصفح عبر http://localhost:6157
لإنشاء وتشغيل بيئة تطوير، راجع run-development.md.
التوثيق
التوثيق متاح على https://opengist.io/ أو داخل مجلد /docs.
الرخصة
مقطع مرخّص تحت AGPL-3.0 license.