Skip to content
  • عنصر القائمة
  • عنصر القائمة
  • عنصر القائمة
  • عنصر القائمة

Bccline.com

.It's better to learn than go guns

  • الرئيسية
  • المتجر
    • لابتوب
    • شبكات
    • وسائط تخزين
      • هارد خارجي
      • هارد داخلي
      • فلاشة
      • كرت ذاكرة
    • اكسسوارات
      • ماوس وكيبورد
      • بور بانك
      • صوتيات
    • إتمام الطلب
    • سلة المشتريات
    • لوحة حسابي
  • أخبار تقنية
    • تقنيات المستقبل
  • شروحات
    • برمجه
  • دليل استخدام
    • أمن سيبراني
    • انظمة تشغيل
  • منوعات
  • Toggle search form
  • تثبيت وإعداد خادم ويب Lighttpd على Ubuntu 22.04 شروحات
  • كيفية تثبيت Nginx على Ubuntu 22.04 LTS شروحات
  • أفضل 7 خوادم ويب مفتوحة المصدر شروحات
  • إعداد وتفعيل وضع المراقبة لكرت شبكة TP-Link wn725n 150Mbps أمن سيبراني
  • إعداد وتنصيب Webmin في ابونتو Ubuntu 22.04 LTS برمجه
  • دليل تثبيت متصفح تور على أوبونتو 24.04 أخبار تقنية
  • تثبيت Caddy Web Server على Ubuntu 22.04 LTS دليل استخدام
  • VPN Gate Client
    إعداد وتنصيب VPNGate مفتوح المصدر ومجاني على لينكس و ويندوز. دليل استخدام

كيفية تثبيت مثيل Mastodon على خادم Ubuntu 22.04 / 20.04

Posted on فبراير 24, 2023فبراير 24, 2023 By Ahmad Bakdash تعليق واحد على كيفية تثبيت مثيل Mastodon على خادم Ubuntu 22.04 / 20.04

Loading

Mastodon هي شبكة اجتماعية لامركزية مفتوحة المصدر. توفر ميزات التدوين المصغر تشبه إلى حد ما شبكة Twitter تتيح لك متابعة المستخدمين الآخرين ونشر الرسائل والصور. تمت كتابة Mastodon بلغة Ruby و JavaScript ، وتضمن طبيعته مفتوحة المصدر أنه يظل مفتوحًا لأي شخص لاستخدامه بشكل خاص وآمن. كما يمكن لأي شخص إنشاء خادم/مثيل Mastodon وبناء مجتمعاته الخاصة مع الأصدقاء. بالإضافة إلى ذلك ، فإن Mastodon مدعوم ومتاح من خلال تطبيقات متعددة لأنظمة iOS و Android ومنصات أخرى.

يكمن الاختلاف الجوهري بين Mastodon و Twitter بكونها برنامج حُر ومفتوح المصدر لتشغيل خدمات الشبكات الاجتماعية ذاتية الاستضافة. وعكس Twitter تتميز Mastodon بكونها شبكة لامركزية, تشكل وتدار كمجتمع اتحاد فدرالي Fediverse ,تم إنشاء هذا البرنامج بدوره حول معيار ActivityPub، وهو بروتوكول مفتوح غير مركزي يمكن للعديد من التطبيقات الأخرى والشبكات الاجتماعية التفاعل معه ,يوفر واجهة برمجة تطبيقات عميل/خادم لإنشاء وتحديث وحذف المحتوى ، بالإضافة إلى واجهة برمجة تطبيقات من خادم إلى خادم لتقديم الإشعارات والمحتوى. يمكن تكوين مجتمعات بشكل حر تسمي مثيل أو خادم ,يمكنك إعداد مثيل Mastodon على الخادم الخاص بك والاتصال بمثيلات Mastodon الأخرى.

ميزات Mastodon

  • التحكم الكامل في البيانات. يمكنك تنزيل جميع مشاركاتك والترحيل إلى مثيل وخادم آخر.
  • لا يتم التحكم بصلاحياتك بشكل مركزي, Mastodon غير مركزية يديرها مجتمع وليس جهة واحدة تتحكم وتفرض شروطها.
  • يمكن لكل مثيل Mastodon وضع قواعده الخاصة.
  • حرف كحد أقصى لكل منشور مقارنة ب 280 في Twitter.
  • تصميم ويب سريع الاستجابة ومتوافق مع الجوّال. يمكن للمستخدمين القراءة أو النشر من الكمبيوتر المحمول والجهاز اللوحي والهاتف.
  • 100٪ مصدر مفتوح مجاني. لا توجد نسخة تجارية مدفوعة مع ميزات أفضل أو أكثر اكتمالا.
  • تتوفر تطبيقات الأجهزة المحمولة الرسمية لـ Mastodon لنظامي التشغيل iOS و Android

سنشرح هذا المقال كيفية تثبيت Mastodon على خادم Ubuntu 22.04 / 20.04

تمت كتابة Mastodon باستخدام React.js و Ruby on Rails ، باستخدام PostgreSQL كنظام إدارة قاعدة البيانات .

المتطلبات

  • خادم يعمل بأحد أنظمة التشغيل التالية: Ubuntu 22.04 و 20.04 وأي توزيعة أخرى تعتمد على Debian مثل Linux Mint. يوصى باستخدام تثبيت جديد لنظام التشغيل لمنع أي مشكلات محتملة.
  • وصول SSH إلى الخادم (أو استخدام Terminal إذا كنت تستخدم توزيعة سطح المكتب).
  • مستخدم sudo الجذر أو الوصول إلى المستخدم الجذر.
  • اسم نطاق Domain بشير إلى عنوان IP الخاص بالخادم.

ثبيت Mastodon على Ubuntu 22.04 LTS Jammy Jellyfish

الخطوة 1: تكوين خادم قاعدة بيانات PostgreSQL

لنقم بتسجيل الدخول إلى الخادم عبر SSH أو من Terminal , يتوفر PostgreSQL عادة في مستودع أوبونتو الافتراضي ,مع هذا يفضل تثبيت أحدث إصدار من PostgreSQL عبر سطر الأوامر التالي:

echo "deb [signed-by=/etc/apt/keyrings/postgresql.asc] http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list

نحتاج لاستيراد المفتاح العام PostgreSQL.

sudo mkdir -p /etc/apt/keyrings/

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo tee /etc/apt/keyrings/postgresql.asc

من ثم سنقوم بتحديث فهرس المستودع وتثبيت PostgreSQL:

sudo apt update

sudo mkdir -p /etc/apt/keyrings/

سيبدأ خادم قاعدة بيانات PostgreSQL تلقائيًا ويستمع إلى 127.0.0.1:5432 ، كما يتضح من الأمر التالي:

sudo ss -lnpt | grep postgres

إذا لم تحصل على خرج مشابه ، فمن المحتمل أن يكون ذلك بسبب عدم تشغيل خادم PostgreSQL. يمكنك تأكيد بدء خادم PostgreSQL عن طريق إصدار الأمر التالي:

sudo systemctl start postgresql

يتم إنشاء مستخدم postgres في نظام التشغيل أثناء التثبيت كمستخدم افتراضي لخادم قاعدة بيانات PostgreSQL. يمكننا استخدام sudo للتبديل إلى مستخدم postgres وتسجيل الدخول إلى وحدة تحكم ومحرر تعليمات PostgreSQL:

sudo -u postgres -i psql

لنبدأ بإنشاء قاعدة بيانات لـ Mastodon:

CREATE DATABASE mastodon;

ومن ثم بإنشاء مستخدم قاعدة بيانات:

CREATE USER mastodon;

لنقم بتعيين كلمة مرور لهذا المستخدم:

ALTER USER mastodon WITH ENCRYPTED PASSWORD 'your_preferred_password';

لنمنح هذا المستخدم الإذن لإنشاء قاعدة بيانات:

ALTER USER mastodon createdb;

قم بتعيين هذا المستخدم كمالك لقاعدة بيانات Mastodon:

ALTER DATABASE mastodon OWNER TO mastodon;

تم اعداد قاعدة البيانات يمكننا تسجيل الخروج من مجرر أوامر PostgreSQL:

\q

الخطوة الثانية: تثبيت Ruby على Ubuntu 22.04 / 20.04

يتطلب Mastodon روبي 2.5+. يتضمن مستودع Ubuntu 22.04 / 20.04 حزمة روبي ، لذا قم بتشغيل الأمر التالي لتثبيته:

sudo apt install ruby ruby-dev

للتحقق من رقم إصدار Ruby الخاص بك ، قم بتشغيل:

ruby -v

الخطوة 3: تنزيل وتكوين Mastodon

لنبدأ إنشاء مستخدم Mastodon:

sudo adduser mastodon --system --group --disabled-login

من ثم تثبيت أداة git في حال عدم تثبيتها سابقا:

sudo apt install git

قم بتشغيل الأمر التالي لاستنساخ مستودع كود Mastodon من Github.

git clone https://github.com/tootsuite/mastodon.git

أنشئ الدليل / var / www / ، إذا لم يكن موجود وانقل دليل mastodon إلى / var / www /:

sudo mkdir -p /var/www/
sudo mv mastodon/ /var/www/

نحتاج تغيير المالك إلى mastodon:

sudo chown mastodon:mastodon /var/www/mastodon/ -R

قم بتغيير الدليل وتحقق من أحدث إصدار مستقر من Mastodon. يمكنك الانتقال إلى صفحة إصدارات Github لمشاهدة أحدث إصدار ثابت. أنا أستخدم الآن الإصدار 4.0.2.

cd /var/www/mastodon/

sudo -u mastodon git checkout v4.0.2
تثبيت bundler مدير ملحقات روبي.
sudo gem install bundler
تثبيت Node.js
curl -sL https://deb.nodesource.com/setup_16.x | sudo bash -

sudo apt-get install -y nodejs

     sudo apt-get install gcc g++ make

     curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | sudo tee /usr/share/keyrings/yarnkey.gpg >/dev/null

     echo "deb [signed-by=/usr/share/keyrings/yarnkey.gpg] https://dl.yarnpkg.com/debian stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
     sudo apt-get update && sudo apt-get install yarn

لنقم بتثبيت Yarn ، وهو مدير حزم Node.js.

echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list

curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -

sudo apt update

sudo apt -y install yarn

تثبيت الحزم المطلوبة لتجميع التعليمات البرمجية المصدر.

sudo apt install redis-server optipng pngquant jhead jpegoptim gifsicle nodejs imagemagick ffmpeg libpq-dev libxml2-dev libxslt1-dev file g++ libprotobuf-dev protobuf-compiler pkg-config gcc autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm-dev libidn11-dev libicu-dev libjemalloc-dev

ثم قم بتثبيت حزم ملحقات لـ Mastodon.

sudo -u mastodon bundle config deployment 'true'

sudo -u mastodon bundle config without 'development test'

sudo -u mastodon bundle install -j$(getconf _NPROCESSORS_ONLN)

الخطوة التالية هي تشغيل معالج الإعداد وبدء تثبيت mastodon:

sudo -u mastodon RAILS_ENV=production bundle exec rake mastodon:setup

أولاً ، سوف يطرح عليك سلسلة من الأسئلة:

  • سم المجال Domain name: اختر اسم المجال لاستخدامه لمثيل Mastodon الخاص بك.ان كنت تمتلك نطاق حقيقي وعنوان ipيشير له . في مثالنا سنختار سيرفر محلي localhost .
  • تمكين وضع المستخدم الفردي Enable single user mode: إذا كنت تريد أن يتمكن الزوار من التسجيل في مثيل Mastodon الخاص بك ، فلا تقم بتمكين وضع المستخدم الفردي.
  • هل تستخدم حاوية Are you using Docker to run Mastodon في مثالنا الحالي الاجابة لا
  • PostgreSQL host: 127.0.0.1
  • PostgreSQL port: 5432
  • PostgreSQL database: mastodon
  • PostgreSQL user password ادخل كلمة المرور التي استخدمتها في الخطوة الاولي اعلاه.
  • Redis host: 127.0.0.1
  • Redis port: 6379
  • Redis password:فقط اضغط على Enter ، لأنه لا توجد كلمة مرور لـ Redis.
  • Do you want to store uploaded files on the cloud? إذا كنت ترغب في تخزين الملفات التي تم تحميلها بواسطة المستخدم في سحابة S3 ، فيمكنك اختيار نعم. سنختار حاليا تخزين الملفات على الخادم مباشرة ، سنختار لا.
  • E-mail address to send e-mails “from : يمكنك الضغط على Enter لاستخدام عنوان البريد الإلكتروني الافتراضي للمرسل.
  • Send a test e-mail with this configuration right now? اختر نعم لإرسال بريد إلكتروني تجريبي في حال اعدادك لخادم .SMTP
  • Send test e-mail to: أدخل عنوان البريد الإلكتروني للاختبار.
  • Save configuration? اختر “نعم” بالطبع.

إذا واجهت مشكلة بالاتصال وخطا أثناء إكمال الأمر السابق يمكن البدء بالأمر التالي :

yarn install --network-timeout 10000000
All done! You can now power on the Mastodon server 🐘

Do you want to create an admin user straight away? Yes
Username: admin
E-mail: abakdash@gmail.com
You can login with the password: f8dcf98b3530e28815516ad5e7a64f07
You can change your password once you login.
bakdash@bakdash-Satellite-C850-B908:/var/www/mastodon$ 

بعد الانتهاء يمكنك الآن تشغيل خادم Mastodon لأول مرة.

الخطوة 4: ابدأ تشغيل Mastodon

يوفر Mastodon قوالب خدمة systemd مريحة. يمكننا نسخها إلى الدليل / etc / sysetmd / system /.

sudo cp /var/www/mastodon/dist/mastodon*.service /etc/systemd/system/

نحتاج إلى إجراء بعض التغييرات على ملفات الخدمة. لنقم بتغيير دليل العمل من / home / mastodon / live / إلى / var / www / mastodon / :

sudo sed -i 's/home\/mastodon\/live/var\/www\/mastodon/g' /etc/systemd/system/mastodon-*.service

قم بتغيير /home/mastodon/.rbenv/shims/bundle إلى / usr / local / bin / bundle.

sudo sed -i 's/home\/mastodon\/.rbenv\/shims/usr\/local\/bin/g' /etc/systemd/system/mastodon-*.service

أعد تحميل systemd لتصبح التغييرات سارية المفعول :

sudo systemctl daemon-reload

ابدأ خدمات النظام الثلاثة:

sudo systemctl enable --now mastodon-web mastodon-sidekiq mastodon-streaming

تأكد من أنهم جميعًا في حالة نشطة (قيد التشغيل):

sudo systemctl status mastodon-web mastodon-sidekiq mastodon-streaming

انتظر بضع ثوانٍ ، ثم قم بتشغيل الأمر التالي للتحقق مما إذا كان Mastodon يُدرج في المنفذ 3000.

إذا كان Mastodon يعمل بشكل صحيح ، فيجب أن يبدو كالتالي:

في حال كان المنفذ 3000 محجوز لخدمة اخرى، فأنت بحاجة إلى تحرير الملف /etc/systemd/system/mastodon-web.service.

sudo gedit etc/systemd/system/mastodon-web.service

ابحث عن السطر التالي Environment=”PORT=3000″ قم بتغيير رقم المنفذ مثل 3001 ، لذلك سوف يستمع Mastodon على المنفذ 3001. أعد تحميل systemd وأعد تشغيل Mastodon.

sudo systemctl daemon-reload 
sudo systemctl restart mastodon-web
الخطوة 5: تكوين Nginx Reverse Proxy

لتثبيت خادم الويب Nginx من مستودع برامج Ubuntu 22.04 / 20.04 الافتراضي.عبر الامر التالي:

sudo apt install nginx

انسخ ملف تكوين قالب Nginx:

sudo cp /var/www/mastodon/dist/nginx.conf /etc/nginx/conf.d/mastodon.conf

قم بتحرير الملف الجديد:

sudo gedit /etc/nginx/conf.d/mastodon.conf

ابحث عن السطر التالي المنفذ 80 و المنفذ 443:

server_name example.com; عدل الى اسم النطاق

ابحث عن السطر التالي المنفذ 80 و المنفذ 443:

root /home/mastodon/live/public;

غيره الى :

root /var/www/mastodon/public;

ابحث عن السطرين التاليين:

# ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

قم بتغييرها إلى ما يلي ، بحيث يستخدم Nginx بشكل مؤقت شهادة TLS موقعة ذاتيًا. سنحصل على شهادة Let’s Encrypt الصالحة لاحقًا:

ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem; ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
sudo mkdir -p /var/nginx/cache/ 
// لفحص اعدادات Nginx. 
sudo nginx -t
sudo systemctl reload nginx

الآن يجب أن تكون قادرًا على رؤية صفحة مثيل Mastodon على السيرفر المحلي او اسم النطاق الذي اعتمدته .

الخطوة 7: تفعيل HTTPS

لتشفير حركة مرور HTTP ، يمكننا تمكين HTTPS عن طريق تثبيت شهادة TLS مجانية صادرة من Let’s Encrypt. قم بتشغيل الأمر التالي لتثبيت عميل Let’s Encrypt (certbot) على خادم Ubuntu 22.04 / 20.04.

sudo apt install certbot python3-certbot-nginx

بعد ذلك ، قم بتشغيل الأمر التالي للحصول على شهادة TLS وتثبيتها باستخدام اسم النطاق خاصتك والبريد الالكتروني:

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email you@example.com -d social.example.com

الصورة التالية لمثال افتراضي للنتيجة :

ويمكنك الوصول إلى صفحة Mastodon عبر HTTPS (https://social.example.com). او https://localhost حسب خيارات التثبيت

ويمكنك تسجيل الدخول باستخدام حساب المسؤول الذي تم إنشاؤه في الخطوة 3. بعد تسجيل الدخول ، يجب عليك تغيير كلمة المرور واجراء الاعدادات الخاصة بمثيل Mastodon كما ترغب.

بمكنك الانتقال إلى صفحة إدارة المثيل بالانتقال إلى example.com/admin/settings/edit. تتيح لك صفحة الإدارة تغيير شكل ومظهر وسلوك المثيل الخاص بك.

إذا كان المثيل الخاص بك قيد التشغيل ولكن به مشكلات ، فيمكنك تحري الخلل وإصلاحه من لوحة معلومات Sidekiq. إما أن تحدد Sidekiq من قائمة الإدارة أو انتقل إلى example.com/sidekiq لرؤية لوحة القيادة.

عندما تكون مستعدًا لجعل المثيل متاحا للعامه، يمكنك إضافته إلى القائمة في Instances.social عن طريق ملء نموذج المسؤول.

ﻻ

مرتبط

انظمة تشغيل, دليل استخدام Tags:ActivityPub, Fediverse, linux, Mastodon, open source, ubuntu, مصدر مفتوح

تصفّح المقالات

Previous Post: دليل تثبيت التطبيقات في لينكس باستخدام مدير الحزم والملفات المصدرية
Next Post: 5 أدوات مميزة لـ Ubuntu Linux يفضل أن تستخدمها

مقالات متعلقة

  • تنصيب توزيعة “كالي لينكس” كنظام أساسي مع ويندوز انظمة تشغيل
  • دليل تنصيب Ubuntu 22.04 LTS Jammy Jellyfish خطوة بخطوة انظمة تشغيل
  • دليل تثبيت التطبيقات في لينكس باستخدام مدير الحزم والملفات المصدرية
    دليل تثبيت التطبيقات في لينكس باستخدام مدير الحزم والملفات المصدرية انظمة تشغيل
  • لمحة عن الحاويات, إعداد وتنصيب Docker في لينكس انظمة تشغيل
  • أهم 8 توزيعات لينكس الخفيفة القابلة للعمل على الحواسب القديمة انظمة تشغيل
  • كيف تحصل على اسم نطاق"دومين" مجاني واستضافه سحابية كطالب؟
    كيف تحصل على اسم نطاق مجاني واستضافه سحابية كطالب؟ أخبار تقنية

Comment (1) on “كيفية تثبيت مثيل Mastodon على خادم Ubuntu 22.04 / 20.04”

  1. تنبيه: تثبيت خادم/ مثيل Mastodon على استضافه سحابية مقدمة من linode - Bccline.com

اترك تعليقاً إلغاء الرد

Only people in my network can comment.

ActivityPub cloud DigitalOcean docker Fediverse GitHub Im-Soo-Jung kali kdrama LAMP Lee Da-Hee linux Mastodon Matter Monitor Mode Mozilla Mozilla.Social multibootusb Nanoleaf open source Penetration Test PenTest Rufus SEO smart home Social Social Networks Tweaks Twitter ubuntu Ventoy Webmin web server wordpress www:search اختبار الاختراق القاموس الذهبي امن سيبراني انترنت الاشياء حاويات دوكر دراما كوريا سحابة لينكس مصدر مفتوح منزل ذكي

  • دليل تثبيت متصفح تور على أوبونتو 24.04
  • إعداد وتفعيل وضع المراقبة لكرت شبكة TP-Link wn725n 150Mbps
  • WordPress: تحويل مدونتك إلى خادم/مثيل في Fediverse.
  • مدخل إلى شبكات التواصل الاجتماعي اللامركزية, ما هو معيار ActivityPub , وما هو الكون الفيدرالي Fediverse ؟
  • كيفية التحقق أن المحول اللاسلكي يدعم وضع المراقبة والحقن PenTest
  1. Ahmad Bakdash على لوجيتيك سلكي أسودM100 Corded Mouseفبراير 6, 2025

    سهلة ومريحة لليد

  2. Ahmad Bakdash على مدخل إلى شبكات التواصل الاجتماعي اللامركزية, ما هو معيار ActivityPub , وما هو الكون الفيدرالي Fediverse ؟مارس 21, 2023

    https://framatube.org/w/9dRFC6Ya11NCVeYKn8ZhiD

  3. Ahmad Bakdash على 5 أدوات مميزة لـ Ubuntu Linux يفضل أن تستخدمهافبراير 25, 2023

    @ubuntu تم اضافة دعم #ActivityPub الى موقعي المبني على #wordpress اصبح موقعي- تجريبي حاليا- منتميا الى #fediverse

  4. Ahmad Bakdash على www:search دبليو دبليو دبليو:”البحث” دراما كورية مختلفه.يناير 31, 2023

    -تشا هيون تدخل المكتب :اسم شخص غير مشهور هو أكثر الكلمات المفتاحية بحثا اليوم !!هل يعرف أحدكم لماذا؟ -موظفه :هل…

  5. Ahmad Bakdash على www:search دبليو دبليو دبليو:”البحث” دراما كورية مختلفه.يناير 31, 2023

    #دراماكورية_WWW بعد ارتفاع اسهم محرك بحث بارو بتطبيق فكرة من باي تامي , تتحدث مع عضوة فريقها(التي عارضت الفكرة بشده),تشاهيون…

  • كيفية تثبيت Nginx على Ubuntu 22.04 LTS شروحات
  • إعداد وتنصيب Webmin في ابونتو Ubuntu 22.04 LTS برمجه
  • كيفية إعداد وتنصيب مُخدّم ويب محلي على أبونتو لينكس LAMP انظمة تشغيل
  • تنصيب وتشغيل 7-zip في Windows 11 و Ubuntu شروحات
  • كيفية إعداد قرص صلب خارجي أو فلاشةUSB متعدّدة الإقلاع باستخدام VENTOY انظمة تشغيل
  • Mozilla تعلن العمل على إطلاق شبكة تواصل اجتماعي لامركزية تدعم Fediverse أخبار تقنية
  • تثبيت وإعداد خادم ويب Lighttpd على Ubuntu 22.04 شروحات
  • بروتوكول المنزل الذكي Matter: ما هو – ولماذا يعتبر نقلة نوعية؟
    بروتوكول المنزل الذكي Matter: ما هو – ولماذا يعتبر نقلة نوعية؟ شروحات

Copyleft 2023 Bccline.com.

Powered by PressBook News WordPress theme