كيفية تثبيت وتكوين CyberPanel على خادم CentOS 7 الخاص بك
استخدام نظام مختلف؟ مقدمة تعد CyberPanel واحدة من أولى لوحات التحكم في السوق مفتوحة المصدر وتستخدم OpenLiteSpeed. ما هذا
Mastodon هو خادم مفتوح المصدر مدعوم ذاتيًا وخادم للتواصل الاجتماعي. يوفر ميزات مثل تويتر ؛ ولكن بدلاً من السيطرة عليها من قبل شركة واحدة ، فهي عبارة عن اتحاد من الخوادم اللامركزية التي تعمل معًا لإنشاء نظام كامل من الشبكات الاجتماعية. يمكن لفريق صغير بدء مثيل خادم Mastodon للتواصل فيما بينهم وكذلك مع المستخدمين الآخرين للمجتمع المتحد. كما يتيح لك اختيار سياسات الخصوصية والمراقبة الخاصة بك وتحديد كيفية التواصل مع المستخدمين الآخرين للخوادم المختلفة. يتم استضافة المحتوى الذي ينشئه المستخدم ويشترك فيه على الخادم حيث يتم إنشاء حسابه. يمكن للمستخدمين متابعة بعضهم البعض حتى لو لم يتم استضافتهم على نفس الخادم. لكل مستخدم في شبكة Mastodon اسمه أو معرفه الفريد الموجود في@[email protected]
شكل. تتوفر تطبيقات العملاء لـ Mastodon لجميع الأنظمة الأساسية تقريبًا.
ملاحظة: سنستخدم social.example.com
كاسم المجال المستخدم لمثيل Mastodon. استبدل كل تكرارات social.example.com
اسم المجال الفعلي الذي تريد استخدامه لتطبيق Mastodon الخاص بك .
قم بتحديث النظام الأساسي الخاص بك باستخدام الدليل كيفية تحديث CentOS 7 ، إذا لزم الأمر. بمجرد تحديث النظام الخاص بك ، انتقل إلى تثبيت التبعيات المطلوبة.
يتطلب Mastodon عدة تبعيات للعمل. قم بتثبيت أحدث إصدار من Node.js
، والذي سيتم استخدامه لتجميع ملفات JavaScript.
curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
sudo yum -y install nodejs
تثبيت Yarn
، وهو تطبيق إدارة تبعية سريع وموثوق وآمن. سنستخدم الغزل لتثبيت تبعيات Node.js.
sudo wget https://dl.yarnpkg.com/rpm/yarn.repo -O /etc/yum.repos.d/yarn.repo
sudo yum -y install yarn
التثبيت Redis
. Redis هو مخزن بنية بيانات داخل الذاكرة وتطبيق ذاكرة التخزين المؤقت.
sudo yum -y install redis
قم بتشغيل Redis وتمكينه من بدء التشغيل تلقائيًا.
sudo systemctl start redis
sudo systemctl enable redis
قم بتثبيت عدد قليل من التبعيات المطلوبة لبناء Ruby
التثبيت والتبعيات الأخرى.
sudo yum -y install ImageMagick git libxml2-devel libxslt-devel gcc bzip2 openssl-devel zlib-devel gdbm-devel ncurses-devel autoconf automake bison gcc-c++ libffi-devel libtool patch readline-devel sqlite-devel glibc-headers glibc-devel libyaml-devel libicu-devel libidn-devel
ستحتاج أيضًا إلى تثبيت أدوات التطوير.
sudo yum -y groupinstall 'Development Tools'
PostgreSQL هو نظام قاعدة بيانات علائقية للكائنات. ستحتاج إلى إضافة مستودع PostgreSQL إلى نظامك حيث yum
يحتوي المستودع الافتراضي على إصدار أقدم من التطبيق.
sudo rpm -Uvh https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
قم بتثبيت خادم قاعدة بيانات PostgreSQL.
sudo yum -y install postgresql96-server postgresql96-contrib postgresql96-devel
تهيئة قاعدة البيانات.
sudo /usr/pgsql-9.6/bin/postgresql96-setup initdb
قم بتحرير pg_hba.conf
الملف لتمكين MD5
المصادقة المستندة إلى.
sudo nano /var/lib/pgsql/9.6/data/pg_hba.conf
العثور على الأسطر التالية وتغيير peer
ل trust
و ident
ل md5
.
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 ident
# IPv6 local connections:
host all all ::1/128 ident
بمجرد التحديث ، يجب أن يبدو التكوين على هذا النحو.
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
قم بتشغيل خادم PostgreSQL وتمكينه من بدء التشغيل تلقائيًا.
sudo systemctl start postgresql-9.6
sudo systemctl enable postgresql-9.6
قم بتغيير كلمة المرور لمستخدم PostgreSQL الافتراضي.
sudo passwd postgres
تسجيل الدخول إلى shell PostgreSQL
كمستخدم.
sudo su - postgres
إنشاء PostgreSQL
مستخدم جديد ل Mastodon.
createuser mastodon
يوفر PostgreSQL psql
الصدفة لتشغيل الاستعلامات في قاعدة البيانات. قم بالتبديل إلى غلاف PostgreSQL عن طريق التشغيل.
psql
تعيين كلمة مرور للمستخدم الذي تم إنشاؤه حديثًا لقاعدة بيانات Mastodon وتقديم الإذن بإضافة قواعد بيانات جديدة.
ALTER USER mastodon WITH ENCRYPTED password 'DBPassword' CREATEDB;
استبدلها DBPassword
بكلمة مرور قوية. الخروج من psql
القشرة:
\q
قم بالتبديل إلى sudo
المستخدم.
exit
قم بتثبيت عدد قليل من تبعيات PostgreSQL المطلوبة.
sudo yum -y install libpqxx-devel protobuf-devel
قم بإنشاء مستخدم جديد لـ Mastodon وقم بالتبديل إلى المستخدم الذي تم إنشاؤه حديثًا.
sudo adduser mastodon -d /opt/mastodon
sudo su - mastodon
سنقوم بتثبيت أحدث إصدار من Ruby باستخدام Ruby Version Manager أو RVM. يتم استخدامه لتثبيت وإدارة إصدارات متعددة من روبي.
أضف GPG
مفتاح RVM إلى الخادم الخاص بك.
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
قم بتثبيت RVM.
curl -sSL https://get.rvm.io | bash -s stable
source /opt/mastodon/.rvm/scripts/rvm
الآن إحضار قائمة الإصدارات المتوفرة من Ruby.
rvm list known
سترى الناتج التالي.
[mastodon@vultr ~]$ rvm list known
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.7]
[ruby-]2.3[.4]
[ruby-]2.4[.1]
ruby-head
...
الآن قم بتثبيت أحدث إصدار من Ruby من القائمة.
rvm install 2.4
استخدم الإصدار المثبت من روبي.
rvm use 2.4
يجب أن تكون قادرًا على التحقق من إصداره.
ruby -v
يجب أن تشاهد نتيجة مماثلة.
[mastodon@vultr ~]$ ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]
التثبيت bundler
، وهو مدير التبعية لتطبيق روبي.
gem install bundler
انتقل الآن إلى الدليل الرئيسي لمستخدم Mastodon واستنساخ ملفات مستودع التطبيق من Github.
cd ~
git clone https://github.com/tootsuite/mastodon.git app
انقل دليل التطبيق وقم بالخروج من أحدث إصدارات التطبيق.
cd ~/app
git checkout $(git describe --tags `git rev-list --tags --max-count=1`)
هيئ bundle
لاستخدام مسار مخصص لتهيئة PostgreSQL. أيضا ، قم بتثبيت تبعيات روبي.
bundle config build.pg --with-pg-config=/usr/pgsql-9.6/bin/pg_config
bundle install --deployment --without development test
تثبيت تبعيات Node.js باستخدام الغزل.
yarn install --pure-lockfile
ستحتاج إلى إنشاء ملف تكوين لتطبيق Mastodon. انسخ ملف تكوين العينة.
cd ~/app
cp .env.production.sample .env.production
قبل تحرير الملف ، قم بإنشاء ثلاثة مختلفة secrets
عن طريق تشغيل الأمر التالي ثلاث مرات. ستحتاج إلى تعيين هذه الأسرار في ملف التكوين.
RAILS_ENV=production bundle exec rake secret
يجب أن تحصل على ناتج مماثل.
[mastodon@vultr app]$ RAILS_ENV=production bundle exec rake secret
0f17dab1cf4a07f6fac671ecd5815adcb59d012b338dae9350c66402250c6c729dccd6182b1a8f75c4fde55453ce283ea66e07ed4466cdc6d4d6974c98512967
قم بتحرير ملف التكوين باستخدام nano
المحرر.
nano .env.production
ابحث عن الأسطر التالية وقم بتغيير القيم وفقًا لذلك.
REDIS_HOST=127.0.0.1
REDIS_PORT=6379
قم بتوفير بيانات اعتماد قاعدة البيانات ، وفقًا لمستخدم قاعدة البيانات الذي قمت بإنشائه أثناء تثبيت PostgreSQL. قم بتوفير أي اسم لاسم قاعدة البيانات حيث سيقوم Mastodon تلقائيًا بإنشاء قاعدة البيانات بالاسم الذي تقدمه.
DB_HOST=127.0.0.1
DB_USER=mastodon
DB_NAME=mastodon
DB_PASS=DBPassword
DB_PORT=5432
قم بتعيين اسم المجال للتطبيق.
LOCAL_DOMAIN=social.example.com
ابحث عن السطور التالية واضبط قيمتها على الأسرار التي أنشأتها.
PAPERCLIP_SECRET=
SECRET_KEY_BASE=
OTP_SECRET=
احفظ الملف واخرج من المحرر.
الآن ، قم بتشغيل الأمر التالي لتوليد Web Push VAPID
المفاتيح. ستحصل على خطأ أثناء إنشاء مفاتيح Web Push VAPID إذا لم تقم بتعيين الأسرار في ملف التكوين المذكور أعلاه.
RAILS_ENV=production bundle exec rake mastodon:webpush:generate_vapid_key
يجب أن تشاهد الإخراج التالي.
[mastodon@vultr app]$ RAILS_ENV=production bundle exec rake mastodon:webpush:generate_vapid_key
VAPID_PRIVATE_KEY=DCMQdSPkdm-mepsNh4F3suc-UIvsABCvwFd03jSVemM=
VAPID_PUBLIC_KEY=BMMVcVXmqnV0C8S_ybZ7eQH-MXBEX2exqfdPSYQiMMUF2rRxfhoEtVF931i26ebMgmslHB_nvVadOdcBPhaFEjw=
افتح ملف التهيئة مرة أخرى وقم بتعيين المفاتيح التي تم إنشاؤها في الأسطر الخاصة بها.
VAPID_PRIVATE_KEY=
VAPID_PUBLIC_KEY=
أخيرًا ، قم بتوفير معلومات خادم بريد SMTP الخاص بك حتى يتمكن التطبيق من إرسال رسائل بريد إلكتروني إلى المستخدمين. من المهم أن تستخدم خادم SMTP يعمل ، لأنه عند التسجيل الجديد ، سيتم إرسال بريد إلكتروني إلى المستخدمين مع رابط تنشيط. سيتعين على المستخدمين الجدد النقر على رابط التفعيل لتفعيل حساباتهم.
SMTP_SERVER=mail.example.com
SMTP_PORT=456
[email protected]
SMTP_PASSWORD=MailPassword
[email protected]
SMTP_TLS=true
بمجرد الانتهاء ، احفظ الملف واخرج من المحرر. لقد فعلت التكوين الأساسي لمثيل Mastodon.
قم بإعداد قاعدة بيانات PostgreSQL لأول مرة.
RAILS_ENV=production bundle exec rails db:setup
أولاً ، سيقوم الأمر أعلاه بإنشاء قاعدة بيانات جديدة بالاسم المذكور في التكوين. بعد ذلك ، ستكتب قاعدة البيانات وفقًا للتكوين.
Precompile كل CSS
و JavaScript
ملفات لخلق ذاكرة التخزين المؤقت.
RAILS_ENV=production bundle exec rails assets:precompile
تم تثبيت Mastodon الآن على الخادم الخاص بك. ستحتاج الآن إلى إعداد Nginx
خادم ويب لخدمة التطبيق وإعداد Systemd
الخدمات لتشغيل خدمات Mastodon.
من الآن فصاعدًا ، سنحتاج إلى تنفيذ الأوامر باستخدام sudo
المستخدم.
سنستخدم خادم الويب Nginx كوكيل عكسي لخدمة التطبيق للمستخدمين. سنحصل أيضًا على شهادات SSL ونثبتها من Let's Encrypt.
قم بتثبيت Nginx و Certbot. Certbot هو العميل الرسمي لإصدار الشهادات لـ Let's Encrypt CA.
sudo yum -y install nginx certbot
ضبط إعدادات جدار الحماية للسماح معيار HTTP
و HTTPS
الموانئ من خلال جدار الحماية من الاحتياجات Certbot لإجراء اتصال HTTP للتحقق من المرجع المجال.
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
ملاحظة: للحصول على شهادات من Let's Encrypt CA ، يجب عليك التأكد من أن النطاق الذي ترغب في ��نشاء الشهادات له موجه نحو الخادم. إذا لم يكن الأمر كذلك ، فقم بإجراء التغييرات اللازمة على سجلات DNS الخاصة بنطاقك وانتظر حتى يتم نشر DNS قبل إجراء طلب الشهادة مرة أخرى. يتحقق Certbot من سلطة المجال قبل تقديم الشهادات .
استخدم الآن خادم الويب المدمج في Certbot لإنشاء الشهادات لنطاقك.
sudo certbot certonly --standalone -d social.example.com
من المرجح أن يتم تخزين الشهادات التي تم إنشاؤها في /etc/letsencrypt/live/social.example.com/
الدليل. سيتم الاحتفاظ بشهادة SSL كـ fullchain.pem
وسيتم حفظ المفتاح الخاص باسم privkey.pem
.
تنتهي صلاحية شهادات التشفير خلال 90 يومًا ، لذا يوصى بإعداد التجديد التلقائي للشهادات باستخدام وظائف Cron. Cron هي خدمة نظام تُستخدم لتشغيل المهام الدورية.
افتح ملف مهمة كرون.
sudo crontab -e
أضف السطر التالي.
0 0 * * * /usr/bin/certbot renew --quiet
سيتم تشغيل وظيفة cron المذكورة أعلاه يوميًا في منتصف الليل. إذا كانت الشهادة مستحقة الصلاحية ، فسوف تقوم بتجديدها تلقائيًا.
الآن قم بإنشاء كتلة خادم Nginx جديدة لموقع Mastodon.
sudo nano /etc/nginx/conf.d/mastodon.conf
تعبئة الملف بهذا.
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
listen 80;
listen [::]:80;
server_name social.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name social.example.com;
ssl_protocols TLSv1.2;
ssl_ciphers HIGH:!MEDIUM:!LOW:!aNULL:!NULL:!SHA;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_certificate /etc/letsencrypt/live/social.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/social.example.com/privkey.pem;
keepalive_timeout 70;
sendfile on;
client_max_body_size 0;
root /opt/mastodon/app/public;
gzip on;
gzip_disable "msie6";
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
add_header Strict-Transport-Security "max-age=31536000";
location / {
try_files $uri @proxy;
}
location ~ ^/(emoji|packs|system/accounts/avatars|system/media_attachments/files) {
add_header Cache-Control "public, max-age=31536000, immutable";
try_files $uri @proxy;
}
location @proxy {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header Proxy "";
proxy_pass_header Server;
proxy_pass http://127.0.0.1:3000;
proxy_buffering off;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
tcp_nodelay on;
}
location /api/v1/streaming {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header Proxy "";
proxy_pass http://127.0.0.1:4000;
proxy_buffering off;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
tcp_nodelay on;
}
error_page 500 501 502 503 504 /500.html;
}
تأكد من تغيير اسم المجال والمسار لشهادات SSL.
يمكنك الآن بدء تشغيل خادم الويب Nginx وتمكينه من بدء التشغيل تلقائيًا.
sudo systemctl start nginx
sudo systemctl enable nginx
سيُطلب منك أيضًا السماح بالمنفذ من 4000
خلال جدار الحماية حيث سيوفر المنفذ خدمة واجهة برمجة التطبيقات المتدفقة.
sudo firewall-cmd --permanent --zone=public --add-port=4000/tcp
sudo firewall-cmd --reload
توفير أذونات التنفيذ لدليل Mastodon.
sudo chmod +x /opt/mastodon
ستحتاج إلى بدء ثلاث عمليات مختلفة لبدء تشغيل خادم Mastodon بنجاح. سيضمن استخدام خدمة Systemd بدء تشغيل خادم Mastodon تلقائيًا عند التمهيد ومعالجة الفشل.
إنشاء خدمة systemd جديدة لتشغيل خدمة الويب Mastodon. ستقوم هذه الخدمة بتشغيل خادم الويب المدمج على المنفذ 3000
.
sudo nano /etc/systemd/system/mastodon-web.service
تعبئة الملف بالمحتوى التالي.
[Unit]
Description=Mastodon Web Service
After=network.target
[Service]
Type=simple
User=mastodon
Group=mastodon
WorkingDirectory=/opt/mastodon/app
Environment="RAILS_ENV=production"
Environment="PORT=3000"
ExecStart=/bin/bash -lc 'bundle exec puma -C config/puma.rb'
TimeoutSec=15
Restart=always
[Install]
WantedBy=multi-user.target
إنشاء خدمة Systemd الثانية لتشغيل خدمة قائمة انتظار الخلفية Mastodon. تتولى خدمة قائمة انتظار Mastodon جميع مهام الخلفية.
sudo nano /etc/systemd/system/mastodon-queue.service
تعبئة الملف بالمحتوى التالي.
[Unit]
Description=Mastodon Queue Service
After=network.target
[Service]
Type=simple
User=mastodon
WorkingDirectory=/opt/mastodon/app
Environment="RAILS_ENV=production"
Environment="DB_POOL=5"
ExecStart=/bin/bash -lc 'bundle exec sidekiq -c 5 -q default -q mailers -q pull -q push'
TimeoutSec=15
Restart=always
[Install]
WantedBy=multi-user.target
أخيرًا ، أنشئ ملف الخدمة الأخير لخدمة واجهة برمجة تطبيقات تدفق Mastodon.
sudo nano /etc/systemd/system/mastodon-api.service
تعبئة الملف بالمحتوى التالي.
[Unit]
Description=Mastodon Streaming
After=network.target
[Service]
Type=simple
User=mastodon
WorkingDirectory=/opt/mastodon/app
Environment="NODE_ENV=production"
Environment="PORT=4000"
ExecStart=/bin/npm run start
TimeoutSec=15
Restart=always
[Install]
WantedBy=multi-user.target
قم بتمكين خدمات Mastodon للبدء في وقت التمهيد تلقائيًا.
sudo systemctl enable mastodon-web mastodon-queue mastodon-api
لبدء تشغيل خدمات Mastodon ، يمكنك تشغيل هذا.
sudo systemctl start mastodon-web mastodon-queue mastodon-api
للتحقق من حالة الخدمات ، يمكنك تشغيل هذا.
sudo systemctl status mastodon-web mastodon-queue mastodon-api
يمكنك الآن الوصول إلى تطبيق Mastodon من خلال الانتقال إلى https://social.example.com
. قم بإنشاء حساب مستخدم جديد على الخادم الخاص بك وتحقق من حساب المستخدم من خلال فتح الرابط المرسل في البريد الإلكتروني. لتوفير امتيازات المسؤول للحساب الذي أنشأته للتو ، قم بتشغيل هذا.
sudo su - mastodon && cd ~/app
RAILS_ENV=production bundle exec rails mastodon:make_admin USERNAME=<user_name>
استبدل <user_name>
باسم المستخدم الفعلي الذي استخدمته لإنشاء الحساب في واجهة Mastodon.
تم تثبيت مثيل Mastodon الخاص بك وتهيئته للتشغيل. ابدأ بدعوة أصدقائك للانضمام إلى مثلك واستكشف الميزات التي يوفرها Mastodon. يمكنك استخدام موقع الشبكات الاجتماعية الخاص بك في الهاتف المحمول عن طريق تنزيل أي من التطبيقات المتاحة لمختلف المنصات.
استخدام نظام مختلف؟ مقدمة تعد CyberPanel واحدة من أولى لوحات التحكم في السوق مفتوحة المصدر وتستخدم OpenLiteSpeed. ما هذا
أكتوبر هو نظام إدارة محتوى مفتوح المصدر يعتمد على Laravel PHP Framework. مع واجهة أنيقة وبنية وحدات موجزة
RockMongo هي أداة إدارة MongoDB على الويب تشبه أداة إدارة MySQL: phpMyAdmin. سيغطي هذا البرنامج التعليمي عملية التثبيت
Lets Chat هو تطبيق دردشة مفتوح المصدر مصمم لتوفير خدمة الرسائل ذاتية الاستضافة للفرق الصغيرة. يعتمد Lets Chat على NodeJS و MongoDB
استخدام نظام مختلف؟ Taiga هو تطبيق مجاني ومفتوح المصدر لإدارة المشاريع. على عكس أدوات إدارة المشاريع الأخرى ، يستخدم Taiga زيادة
استخدام نظام مختلف؟ المتطلبات الأساسية مثيل خادم Vultr CentOS 7. مستخدم sudo. الخطوة 1: تحديث النظام أولاً ، قم بتحديث خادم النظام الخاص بك إلى th
استخدام نظام مختلف؟ Netdata هي نجمة صاعدة في مجال مراقبة مقاييس النظام في الوقت الفعلي. مقارنة بالأدوات الأخرى من نفس النوع ، Netdata:
DreamFactory هو برنامج مفتوح المصدر يمكنه تحويل أي قاعدة بيانات إلى منصة RESTful API. يمكن نشر DreamFactory على منصات مختلفة. في ثي
استخدام نظام مختلف؟ في هذا البرنامج التعليمي ، سأشرح لك كيفية إعداد خادم Starbound على CentOS 7. المتطلبات الأساسية يجب أن تمتلك هذه اللعبة عليك
Go (تُعرف أيضًا باسم Golang) هي لغة برمجة مكتوبة بشكل ثابت ومجمعة على شكل حرف C تم تطويرها بواسطة Google. جعلت البساطة وتعدد الاستخدامات ب
Django هو إطار Python شائع لكتابة تطبيقات الويب. مع Django ، يمكنك بناء التطبيقات بشكل أسرع ، دون إعادة اختراع العجلة. إذا كنت تريد
مرحبًا بك في برنامج تعليمي Vultr آخر. هنا ، ستتعلم كيفية تثبيت خادم SAMP وتشغيله. تمت كتابة هذا الدليل الخاص بـ CentOS 6. المتطلبات الأساسية التي ستحتاج إليها
Revive Adserver هو نظام عرض إعلانات مجاني ومفتوح المصدر يمكن استخدامه لإدارة الإعلانات على مواقع الويب و / أو التطبيقات و / أو مشغلات الفيديو. في هذه المقالة ،
استخدام نظام مختلف؟ Elgg هو محرك تواصل اجتماعي مفتوح المصدر يسمح بإنشاء بيئات اجتماعية مثل الشبكات الاجتماعية في الحرم الجامعي
استخدام نظام مختلف؟ الشتات هو شبكة اجتماعية مفتوحة المصدر تدرك الخصوصية. في هذا البرنامج التعليمي ، ستتعلم كيفية إعداد وتكوين po Diaspora po
نظرة عامة تهدف هذه المقالة إلى مساعدتك في إنشاء مجموعة Kubernetes وتشغيلها باستخدام kubeadm في لمح البصر. سيقوم هذا الدليل بنشر خادمين في
استخدام نظام مختلف؟ مقدمة Sails.js هو إطار عمل MVC لـ Node.js ، مشابه لـ Ruby on Rails. يجعل لتطوير التطبيقات الحديثة ver
استخدام نظام مختلف؟ يمكن استخدام NGINX كخادم HTTP / HTTPS أو خادم وكيل عكسي أو خادم وكيل بريد أو موازن تحميل أو فاصل TLS أو ذاكرة تخزين مؤقت
استخدام نظام مختلف؟ dotCMS هو نظام إدارة محتوى من فئة مفتوحة المصدر مفتوح بلغة جافا. أنه يحتوي تقريبا على كل ميزة مطلوبة ر
مقدمة في هذا البرنامج التعليمي ، سيتم تثبيت PufferPanel على Vultr VPS. PufferPanel هي لوحة تحكم مفتوحة المصدر مجانية للاستخدام لإدارتك
نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول
يعرف الكثير منكم أن Switch سيصدر في مارس 2017 وميزاته الجديدة. بالنسبة لأولئك الذين لا يعرفون ، قمنا بإعداد قائمة بالميزات التي تجعل "التبديل" "أداة لا غنى عنها".
هل تنتظر عمالقة التكنولوجيا للوفاء بوعودهم؟ تحقق من ما تبقى دون تسليم.
اقرأ المدونة لمعرفة الطبقات المختلفة في بنية البيانات الضخمة ووظائفها بأبسط طريقة.
اقرأ هذا لمعرفة مدى انتشار الذكاء الاصطناعي بين الشركات الصغيرة وكيف أنه يزيد من احتمالات نموها ومنح منافسيها القدرة على التفوق.
لقد أصبح حل CAPTCHA صعبًا جدًا على المستخدمين في السنوات القليلة الماضية. هل ستكون قادرة على أن تظل فعالة في اكتشاف البريد العشوائي والروبوتات في المستقبل القريب؟
مع تطور العلم بمعدل سريع ، واستلام الكثير من جهودنا ، تزداد أيضًا مخاطر تعريض أنفسنا إلى تفرد غير قابل للتفسير. اقرأ ، ماذا يمكن أن يعني التفرد بالنسبة لنا.
ما هو التطبيب عن بعد والرعاية الصحية عن بعد وأثره على الأجيال القادمة؟ هل هو مكان جيد أم لا في حالة الوباء؟ اقرأ المدونة لتجد طريقة عرض!
ربما سمعت أن المتسللين يكسبون الكثير من المال ، لكن هل تساءلت يومًا كيف يجنون هذا النوع من المال؟ دعنا نناقش.
أصدرت Apple مؤخرًا macOS Catalina 10.15.4 تحديثًا تكميليًا لإصلاح المشكلات ولكن يبدو أن التحديث يتسبب في المزيد من المشكلات التي تؤدي إلى إنشاء أجهزة macOS. قراءة هذه المادة لمعرفة المزيد