كيفية تثبيت نظام التحكم في الإصدار الأحفوري في لينكس
Fossil هو نظام قوي للتحكم في الإصدار (VCS) لنظام التشغيل Linux. إنه بديل لـ Github، ولكنه على عكس Git، يعمل من خلال توفير مجموعة كاملة من الأدوات لإنشاء مستودعك وتعديله وحتى مشاركته عبر الإنترنت. ستوضح لك هذه المقالة كيفية تثبيت Fossil ونشره على Ubuntu Linux.
لماذا استخدام الأحفوري على بوابة
واحدة من أكبر نقاط البيع في Fossil هي أنها مجموعة متكاملة لإدارة كود المصدر الخاص بك عبر الإنترنت. وهذا يجعله مفيدًا بشكل لا يصدق للمستخدمين الذين يريدون فقط مشاركة مستودع واحد مع أشخاص آخرين دون إنشاء حساب Github أو Gitlab.
وبصرف النظر عن ذلك، فإن Fossil أيضًا مرن للغاية وسهل الاستضافة بشكل لا يصدق. يمكن تشغيله إما كثنائي ثابت واحد في نظامك أو في حاوية Docker قائمة بذاتها. ونتيجة لذلك، من السهل جدًا الدخول إلى Fossil وتكييفه ليناسب احتياجاتك الخاصة.
في حين أن Fossil وGit يشتركان في نفس بنية التشغيل، فإن Fossil يوفر ميزات إضافية يصعب تنفيذها في Git. على سبيل المثال، يتجنب Fossil مشكلة “الرأس المنفصل” من خلال توفير قاعدة بيانات داخلية تتعقب المراجع بين الالتزامات السابقة والمستقبلية. ونتيجة لذلك، فإن اتفاقيات إعادة الشراء Fossil أكثر سلاسة وخالية من المشاكل مقارنةً بـ Git.
هناك ميزة أخرى لـ Fossil مقارنة بـ Git وهي أنها تتطلب عددًا أقل من التبعيات والذاكرة للتشغيل مع توفير الميزات فور إخراجها من الصندوق. يحتوي مثيل Fossil على لوحة المناقشة الخاصة به، وموقع wiki، ومتعقب المشكلات. وهذا يجعل Fossil حلاً متكاملاً لأي شخص يريد بيئة “خالية من الضجة” لتطوير ونشر التعليمات البرمجية.
جيد ان تعلم: تعلم بعضًا من أفضل خطافات Git لإدارة مستودعك.
الحصول على المتطلبات الأساسية لـ Fossil وDocker
الخطوة الأولى في نشر Fossil هي الحصول على ملفات المستودع الخاصة بـ Docker. للقيام بذلك، قم بإحضار مفتاح التوقيع لمشروع Docker:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg<br>sudo chmod a+r /etc/apt/keyrings/docker.gpg
قم بإنشاء ملف جديد ضمن “/etc/apt/sources.list.d.” سيحتوي هذا على رابط المستودع حيث سيقوم Ubuntu بجلب حزم Docker:
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 jammy stable
احفظ ملف مستودع Docker الخاص بك، ثم قم بتثبيت الحزمة الأساسية:
قم بتنزيل حزمة Certbot snap من Electronic Frontier Foundation:
sudo snap install certbot --classic
قم بتشغيل الأمر التالي لتحديث قوائم حزم نظامك:
sudo apt update && sudo apt upgrade
قم بتثبيت Docker وNginx مع حزم التبعية الخاصة بهما:
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx
بناء وتثبيت الأحفوري في لينكس
انتقل إلى صفحة تنزيل Fossil، ثم حدد مصدر القطران للحصول على أحدث إصدار ثابت. في حالتي، سأقوم بتنزيل الإصدار 2.23 من Fossil.
انقل كرة القطران المصدر إلى دليلك الرئيسي، ثم استخرجها:
mv ~/Downloads/fossil-src-2.23.tar.gz<br>tar xvzf ~/fossil-src-2.23.tar.gz
انتقل إلى مجلد tarball، ثم افتح Fossil’s Dockerfile باستخدام محرر النصوص المفضل لديك:
cd ~/fossil-src-2.23<br>nano ./Dockerfile
قم بالتمرير لأسفل إلى أسفل الملف، ثم أضف ما يلي قبل ملف "--user", "admin" ]
خط:
احفظ ملف Dockerfile المعدل، ثم أنشئ صورة الحاوية الخاصة بك:
sudo docker build -t fossil .
تشغيل Fossil وإنشاء وكيل عكسي SSL
لديك الآن مثيل جديد لـ Fossil VCS يعمل كحاوية Docker على خادمك. للوصول إليه، تحتاج إلى تشفير أي اتصالات خارجية بـ Fossil.
للبدء، قم بإنشاء سجل DNS “A” جديد يشير إلى عنوان IP الخاص بخادم Fossil الخاص بك.
استخدم محرر النصوص المفضل لديك لإنشاء ملف تكوين موقع جديد لمثيل Fossil الخاص بك:
sudo nano /etc/nginx/sites-available/fossil-scm
الصق كتلة التعليمات البرمجية التالية داخل ملف تكوين موقعك الجديد:
server {<br><br> server_name SUBDOMAIN.YOUR-ROOT.DOMAIN;<br><br> location / {<br> proxy_pass http://127.0.0.1:7777;<br> proxy_http_version 1.1;<br> proxy_set_header Upgrade $http_upgrade;<br> proxy_set_header Connection "upgrade";<br> proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;<br> proxy_set_header Host $host;<br> }<br>}
استبدل server_name
متغير مع المجال الفرعي الخاص بك لـ Fossil.
أنشئ رابطًا رمزيًا لملف تكوين موقعك إلى “/etc/nginx/sites-enabled/”:
sudo ln -s /etc/nginx/sites-available/fossil-scm /etc/nginx/sites-enabled/
ابدأ تشغيل البرنامج الخفي Nginx لنظامك باستخدام systemctl:
sudo systemctl enable --now nginx.service<br>sudo systemctl reload nginx.service
ابدأ تشغيل صورة Fossil Docker الجديدة عن طريق تشغيل الأمر التالي:
sudo docker run \<br> --publish 7777:8080 \<br> --name fossil \<br> --cap-drop AUDIT_WRITE \<br> --cap-drop CHOWN \<br> --cap-drop FSETID \<br> --cap-drop KILL \<br> --cap-drop MKNOD \<br> --cap-drop NET_BIND_SERVICE \<br> --cap-drop NET_RAW \<br> --cap-drop SETFCAP \<br> --cap-drop SETPCAP \<br> fossil
افتح لوحة Tmux جديدة بالضغط كنترول + ب، ثم ج. في الداخل، قم بتشغيل الأمر التالي لطلب شهادة SSL من Certbot:
sudo certbot --nginx -d fossil-scm.myvpsserver.top
اختبر ما إذا كان يمكن الوصول إلى مثيل Fossil الخاص بك عبر الإنترنت من خلال الانتقال إلى المجال الفرعي الخاص بك.
جيد ان تعلم: تعرف على كيفية إنشاء صفحات ويب بسيطة باستخدام HTTPS التلقائي باستخدام Caddy.
إنشاء أول مستودع أحفوري خاص بك
مع تشغيل Fossil على خادم Linux الخاص بك، يمكنك الآن تكوين مثيلك الجديد. انقر على الإعداد/التكوين الرابط تحت بيت قسم.
قم بتوفير تفاصيل حساب المسؤول، ثم انقر فوق تسجيل الدخول. يمكنك العثور على كلمة المرور لحساب المسؤول في سجل الإخراج لحاوية Docker الخاصة بك.
املأ كلا من اسم المشروع و وصف المشروع مربعات النص التي تحتوي على تفاصيل المستودع الخاص بك، ثم انقر فوق تطبيق التغييرات لحفظه.
الاستنساخ واستخدام مستودع الأحافير الخاص بك
لاستخدام مستودع التعليمات البرمجية الجديد الخاص بك، يتعين عليك أولاً إنشاء نسخة منه على جهازك. للقيام بذلك، قم بتثبيت إصدار محلي من Fossil على سطح مكتب Linux الخاص بك:
اسحب المستودع بالكامل إلى جهازك وانتقل إلى مجلد المستودع الخاص به:
fossil clone https://SUBDOMAIN.YOUR-ROOT.DOMAIN<br>cd ./YOUR-REPO-NAME
أضف ملفاتك الأولية، ثم قم بتنفيذ التغييرات على مستودع Fossil الخاص بك:
nano ./sample.file<br>fossil add ./sample.file<br>fossil commit
قم بتوفير تفاصيل التزامك الأولي، ثم احفظه عن طريق إنشاء سطر جديد يبدأ بنقطة (.).
لعِلمِكَ: تعلم أساسيات إدارة التعليمات البرمجية عن طريق إنشاء مستودع Git الخاص بك.
دفع التغييرات المحلية إلى مستودع الأحافير البعيد الخاص بك
افتراضيًا، لا يوفر Fossil أي أذونات كتابة لمستودعاته البعيدة. أي تغييرات تجريها على مستودعك المحلي ستبقى هناك ولن تنعكس في مثيل Fossil الخاص بك.
لإصلاح ذلك، انتقل إلى واجهة الويب الخاصة بمثيل Fossil ثم قم بتسجيل الدخول كحساب المسؤول.
انقر على مسؤل الفئة في القائمة العلوية للوحة المعلومات.
يختار المستخدمين في لوحة تحكم المسؤول .
انقر يضيف لإنشاء مستخدم جديد لمستودعك.
قم بتوفير اسم مستخدم وكلمة مرور للمستخدم الجديد.
ضع علامة على مطور خانة الاختيار على قدرات الفئة، ثم انقر فوق تطبيق التغييرات لحفظ المستخدم الجديد الخاص بك.
ارجع إلى المحطة المحلية لديك، ثم قم بتشغيل الأمر التالي:
fossil push https://YOUR-USERNAME@SUBDOMAIN.YOUR-ROOT.DOMAIN
ملحوظة: يمكنك أيضًا جلب تغييرات جديدة من مستودع Fossil البعيد عن طريق التشغيل fossil pull
.
اكتب كلمة المرور لمستخدم Fossil الخاص بك، ثم اضغط يدخل لدفع التغييرات المحلية إلى مستودعك البعيد.
تأكد من أن مستودع Fossil البعيد الخاص بك قد تلقى التزامك المحلي من خلال الانتقال إلى واجهة الويب الخاصة به.
يعد تثبيت ونشر نظام التحكم في إصدار Fossil الخاص بك مجرد خطوة أولى لاستعادة التحكم في بياناتك عبر الإنترنت. تعرف على كيفية تأمين اتصالاتك عبر الإنترنت من خلال استضافة خادم الأسماء المستعارة للبريد الإلكتروني الخاص بك باستخدام SimpleLogin.
حقوق الصورة: بانجاك باتيل عبر Unsplash. جميع التعديلات ولقطات الشاشة بواسطة Ramces Red.
اشترك في نشرتنا الإخبارية!
يتم تسليم أحدث البرامج التعليمية لدينا مباشرة إلى صندوق البريد الوارد الخاص بك
اكتشاف المزيد من تكتك تكنولوجيا
اشترك للحصول على أحدث التدوينات المرسلة إلى بريدك الإلكتروني.