سعيد يوسف نشر 8 أكتوبر 2021 أرسل تقرير مشاركة نشر 8 أكتوبر 2021 لدي مشروع عبارة عن موقع الكتروني مبني بلغة روبي وإطار عمل ريلز، أريد شرح خطوات رفعه على الاستضافة وتشغيله 1 اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
1 Wael Aljamal نشر 8 أكتوبر 2021 أرسل تقرير مشاركة نشر 8 أكتوبر 2021 الآن علينا تجهيز قواعد البيانات والجدار الناري للمساح بتشغيل التطبيق مع تثبيت مخدم الويب nginx #نحدث المكتبات في النظام apt update && apt upgrade #تعديل الجدار الناري apt install ufw && ufw allow 22 && ufw logging off && ufw enable && ufw status #تثبيت مخدم ويب و قواعد بيانات apt install curl git nginx postgresql libpq-dev ^^^^^ ^^^^^^^^^^ Installing NGINX & Passenger حيث أن passenger هي الحزمة التي تشغل تطبيق ريلز للاستجابة، لأنه لايتعامل مباشرة مع طلبيات HTTP #(a) تثبيت مفتاح PGP key sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 561F9B9CAC40B2F7 #(b) تثبيت passenger من APT repository sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger bionic main > /etc/apt/sources.list.d/passenger.list' sudo apt-get update #(c) Install Passenger and Nginx module sudo apt-get install -y libnginx-mod-http-passenger #(d) تحقق من ملف التكوين configuration files exist if [ ! -f /etc/nginx/modules-enabled/50-mod-http-passenger.conf ]; then sudo ln -s /usr/share/nginx/modules-available/mod-http-passenger.load /etc/nginx/modules-enabled/50-mod-http-passenger.conf ; fi sudo ls /etc/nginx/conf.d/mod-http-passenger.conf ثم تخصيص ملف التكوين نضيف ملف الإعداد passenger.conf ننشيئ sudo nano /etc/nginx/conf.d/mod-http-passenger.conf نضيف له passenger_ruby /home/deploy/.rbenv/shims/ruby; نحذف الإعداد الافتراضي sudo rm /etc/nginx/sites-enabled/default نضيف إعدادات مخصصة sudo nano /etc/nginx/sites-enabled/my_rails_app بعد تهيئة ملف الإعدادات نضع به القالب التالي مع التخصيص المناسب مثل المنفذ الذي سيعمل عليه التطبيق والمجلد الجذر للمشروع مع تفعيل passenger server { listen 80; listen [::]:80; server_name _; root /home/deploy/sample_rails_app/current/public; passenger_enabled on; passenger_app_env staging; } ونشغل nginx sudo service nginx start نثبت أداة Ruby Version Manager (RVM) مدير إصدارات لغة روبي، نحمل المفتاح: gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB ثم نثبت روبي وريلز install ruby and rails: \curl -sSL https://get.rvm.io | bash -s stable --rails ثم للتحقق من إصدار روبي: $ ruby --version ruby 2.7.2p137 // ريلز gem $ gem list rails rails (6.0.3.4) يمكن تثبيت نسخة مخصصة عن طريق rvm بتحديدها كما في الأمر: rvm install ruby-2.7.2 rvm use 2.7.2 // تثبيت ريلز بطريقة مختلفة gem update --system && gem install bundler rails ثم نرفع الملفات على الاستضافة إما كملف مضغوط أو من خلال رفعهم على github ثم نثبت المكتبات الخاصة بمشروعنا بتنفيذ الأمر التالي في مجلد المشروع الرئيسي: bundle install ثم نعمل على تهجير قواعد البيانات وتشغيل المخدم تجهيز قواعد البيانات (تثبيت قاعدة بيانات و إنشاء مستخدم خاص بالمشروع) أحد الخيارين: postgres sudo apt-get install postgresql postgresql-contrib libpq-dev sudo su - postgres createuser --pwprompt deploy createdb -O deploy myapp exit mysql sudo apt-get install mysql-server mysql-client libmysqlclient-dev sudo mysql_secure_installation # Open the MySQL CLI to create the user and database mysql -u root -p CREATE DATABASE IF NOT EXISTS myapp; CREATE USER IF NOT EXISTS 'deploy'@'localhost' IDENTIFIED BY '$omeFancyPassword123'; CREATE USER IF NOT EXISTS 'deploy'@'%' IDENTIFIED BY '$omeFancyPassword123'; GRANT ALL PRIVILEGES ON myapp.* TO 'deploy'@'localhost'; GRANT ALL PRIVILEGES ON myapp.* TO 'deploy'@'%'; FLUSH PRIVILEGES; \q ننشئ ملف إعدادات البيئة ونضع فيه بيانات قاعدة البيانات # For Postgres DATABASE_URL=postgresql://deploy:PASSWORD@127.0.0.1/myapp # For MySQL DATABASE_URL=mysql2://deploy:$omeFancyPassword123@localhost/myapp RAILS_MASTER_KEY=ohai SECRET_KEY_BASE=1234567890 STRIPE_PUBLIC_KEY=x STRIPE_PRIVATE_KEY=y # etc... بقي تهجير قواعد البيانات وبدء المخدم بالأمرين: bin/rake db:migrate bin/rails s 1 اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
السؤال
سعيد يوسف
لدي مشروع عبارة عن موقع الكتروني مبني بلغة روبي وإطار عمل ريلز، أريد شرح خطوات رفعه على الاستضافة وتشغيله
رابط هذا التعليق
شارك على الشبكات الإجتماعية
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.