Ontrack هو برنامج بسيط ولكنه قوي لإدارة الميزانية يتم استضافته ذاتيًا لنظام Linux. يعمل عن طريق إنشاء واجهة نظيفة وجميلة حيث يمكنك إدراج ميزانيتك ومراجعة شؤونك المالية وحتى تتبع تاريخ إنفاقك. توضح لك هذه المقالة كيفية تثبيت Ontrack على Ubuntu Linux 22.04 باستخدام Docker Compose وCaddy.
افتراض: تفترض هذه المقالة أنك تقوم بتثبيت Ontrack على VPS Ubuntu LTS بسعة ذاكرة وصول عشوائي (RAM) لا تقل عن 2 جيجابايت. كما تفترض أن جهازك يمكن الوصول إليه عبر الإنترنت وأنك تمتلك اسم نطاق.
الحصول على التبعيات لـ Ontrack
الخطوة الأولى في التثبيت على الطريق تتمثل إحدى ميزات برامج إعداد الميزانية في Linux في الحصول على Docker وCaddy. سيقوم الأول بتشغيل تطبيق الويب بالكامل في حاوية معزولة، بينما سيسمح لك الأخير ببثه إلى الإنترنت.
للبدء، قم بالحصول على مفتاح التوقيع لمستودع Docker من موقع الويب الخاص بالمطور:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpgbr>sudo chmod a+r /etc/apt/keyrings/docker.gpg
إنشاء ملف مستودع apt جديد لـ 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
تنزيل مفتاح التوقيع لمستودع مشروع Caddy:
curl -fsSL ' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
احصل على ملف مستودع مشروع Caddy عن طريق تشغيل الأمر التالي:
curl -fsSL ' | sudo tee /etc/apt/sources.list.d/caddy.list
قم بتطبيق مستودعاتك الجديدة وتأكد من أن نظامك محدث بالكامل:
sudo apt update && sudo apt upgrade
قم بتثبيت Docker وDocker Compose وCaddy باستخدام apt:
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin caddy git
جيد ان تعلم: تعرف على كيفية إصلاح الحزم المعطوبة في Linux.
الحصول على حاوية Docker Ontrack
احصل على مستودع Ontrack الحالي لنظام Linux من صفحة المطور على Github:
git clone https://github.com/inoda/ontrack.git && cd ./ontrack
قم بتشغيل الأمر التالي مرتين لإنشاء سلسلتين طويلتين من النص العشوائي:
cat /dev/urandom | tr -dc 'A-Za-z0-9' | fold -w 32 | head -n 1 >> ~/random-pass.txt
افتح ملف “docker-compose.yml” الخاص بـ Ontrack باستخدام محرر النصوص المفضل لديك:
nano ./docker-compose.yml
انتقل إلى المتغير “SECRET_KEY_BASE” وقم بتغيير القيمة من “super-secret” إلى السلسلة العشوائية الأولى.
استبدل السلسلة “secret” في المتغير “DATABASE_URL” بالسلسلة العشوائية الثانية.
قم بالتمرير لأسفل إلى المتغير “POSTGRES_PASSWORD” واستبدل القيمة “secret” بالسلسلة العشوائية الثانية.
تحديث وبناء حاوية Ontrack
افتح ملف Dockerfile الخاص بـ Ontrack باستخدام محرر النصوص المفضل لديك:
استبدال قيمة FROM
متغير بما يلي:
احفظ ملف Dockerfile المعدّل، ثم افتح الملف “package.json”:
ابحث عن السطر الذي يبدأ بـ @babel/preset-env
، ثم أدخل الكود التالي أسفله:
"babel-plugin-macros": "^3.0.1",
قم بالتمرير لأسفل إلى فئة “devDependencies”، ثم أضف ما يلي أسفل @babel/eslint-parser
خط:
"@babel/plugin-proposal-object-rest-spread": "^7.15.4",
افتح ملف تكوين مثيلك باستخدام محرر النصوص المفضل لديك:
nano ~/ontrack/config/environments/development.rb
أضف سطر التعليمات البرمجية التالي أسفله مباشرة Rails.application.configure do
:
config.hosts = [ "SUBDOMAIN.YOUR-ROOT.DOMAIN" ]
احفظ ملف تكوين مثيلك، ثم قم بتشغيل الأمر التالي لبناء Ontrack وقاعدة بيانات Postgres الخاصة به:
sudo docker compose up --detach
ملحوظة: قد تستغرق عملية بناء حاوية Ontrack Docker ما بين 5 إلى 10 دقائق حسب موارد الخادم لديك. إذا كان جهازك يحتوي على أقل من 2 جيجابايت من ذاكرة الوصول العشوائي ولا يحتوي على ملف مبادلة، فسوف يفشل Docker دون الإبلاغ عن أي أخطاء على المحطة الطرفية.
تأكد من تشغيل حاويات Ontrack بشكل صحيح عن طريق إدراج جميع عمليات Docker النشطة:
إنشاء وكيل عكسي SSL باستخدام Caddy
في هذه المرحلة، لديك برنامج Ontrack للميزانية قيد التشغيل على المنفذ 3000 بجهازك. للوصول إلى هذا المنفذ بأمان، تحتاج إلى إنشاء وكيل عكسي SSL يقوم بتشفير الاتصال بينك وبين الخادم.
انتقل إلى مدير DNS الخاص بنطاقك، ثم أضف سجل “A” جديدًا لمثيل Ontrack الخاص بك.
قم بعمل نسخة احتياطية لملف Caddyfile الأصلي، ثم قم بإنشاء ملف Caddyfile جديد ضمن “/etc/caddy/”:
sudo mv /etc/caddy/Caddyfile ~/Caddyfile.backup sudo nano /etc/caddy/Caddyfile
قم بلصق كتلة التعليمات البرمجية التالية داخل ملف Caddyfile الجديد الخاص بك:
SUBDOMAIN.YOUR-ROOT.DOMAIN { reverse_proxy :3000 }
احفظ ملف Caddy الجديد، ثم ابدأ تشغيل برنامج Caddy daemon لتشغيل الوكيل العكسي الجديد:
sudo systemctl enable --now caddy.service
اختبر ما إذا كان وكيل SSL العكسي الخاص بك يعمل عن طريق الانتقال إلى عنوان URL الخاص بك.
جيد ان تعلم: تعرف على المزيد حول SSL وكيفية حمايته للويب من الجهات الضارة عن طريق إصدار شهادة موقعة ذاتيًا في OpenSSL.
استخدام Ontrack وإنشاء حساب مستخدم
مع تشغيل Ontrack، يمكنك الآن إنشاء حساب مستخدم. للقيام بذلك، ارجع إلى نافذة المحطة الطرفية الخاصة بخادمك ثم افتح غلاف حاوية Ontrack:
sudo docker exec -it ontrack sh
افتح معالج قاعدة البيانات داخل حاوية Ontrack الخاصة بك:
قم بإنشاء حساب المستخدم الجديد الخاص بك عن طريق تشغيل الأمر التالي:
User.create!(username: "YOUR-USERNAME", password: "YOUR-SECURE-PASSWORD")
اكتب “خروج”، ثم اضغط على يدخل لمغادرة معالج قاعدة البيانات.
يضعط كنترول + د لمغادرة غلاف الجذر الخاص بحاوية Docker الخاصة بك.
قم باختبار حسابك الجديد عن طريق فتح Ontrack على متصفح الويب الخاص بك وتسجيل الدخول إلى حسابك.
إنشاء معاملتك الأولى على Ontrack
لاستخدام Ontrack لتسجيل المعاملات، تحتاج إلى إنشاء فئة نفقات. يتيح هذا لتطبيق الويب تجميع نفقاتك في مجموعات، مما يسهل استنتاج رؤى حول عادات الإنفاق الخاصة بك.
قم بالتمرير لأسفل لوحة معلومات Ontrack، ثم انقر فوق أضف فئة.
قم بتوفير اسم الفئة ولون العلامة وما إذا كانت لها حد إنفاق أم لا. على سبيل المثال، قمت بتسمية فئتي بـ “الترفيه” بعلامة حمراء وحد إنفاق 200 دولار.
انقر أضف مصروفًا على لوحة معلومات Ontrack.
قم بإدخال تفاصيل نفقاتك، ثم انقر فوق يحفظ لتثبيته في مثيل Ontrack الخاص بك.
أخيرًا، تأكد من أن Ontrack نجح في حفظ معاملتك من خلال التحقق من سجل نفقاتك. للقيام بذلك، انتقل لأعلى الصفحة، ثم انقر فوق تاريخ الرابط في الزاوية اليمنى العليا للصفحة.
إن تثبيت برنامج تعقب النفقات الخاص بك ونشره هو مجرد الخطوة الأولى لاستعادة السيطرة على حياتك الإلكترونية والرقمية. تعرف على كيفية ضمان خصوصيتك عند إرسال رسائل البريد الإلكتروني من خلال تثبيت خادم بديل مثل SimpleLogin.