كيفية تثبيت Elixir و Phoenix Framework على Ubuntu 16.04

سيوضح لك هذا البرنامج التعليمي كيفية تثبيت أطر عمل Elixir و Phoenix على مثيل خادم Vultr Ubuntu 16.04 لأغراض التطوير.

المتطلبات الأساسية

  • نسخة خادم Vultr Ubuntu 16.04 جديدة
  • تم تسجيل الدخول كمستخدم sudo غير جذري.

تحديث النظام:

sudo apt-get update

تثبيت إرلانج

قم بتثبيت Erlang بالأوامر التالية:

cd ~
wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb 
sudo dpkg -i erlang-solutions_1.0_all.deb
sudo apt-get update
sudo apt-get install esl-erlang

يمكنك التحقق من التثبيت:

erl

سينقلك هذا إلى غلاف Erlang مع الإخراج التالي:

Erlang/OTP 21 [erts-10.1] [source] [64-bit] [smp:1:1] [ds:1:1:10] [async-threads:1] [hipe]

Eshell V10.1  (abort with ^G)
1>    

اضغط CTRL+ Cمرتين للخروج من قذيفة Erlang.

قم بتثبيت إكسير

قم بتثبيت Elixir مع apt-get:

sudo apt-get install elixir

الآن يمكنك التحقق من تثبيت Elixir:

elixir -v

سيظهر هذا الناتج التالي:

Erlang/OTP 21 [erts-10.1] [source] [64-bit] [smp:1:1] [ds:1:1:10] [async-threads:1] [hipe]

Elixir 1.7.3 (compiled with Erlang/OTP 20)

الآن لديك Elixir 1.7.3 مثبتًا على نظامك.

قم بتثبيت Phoenix

إذا قمنا بتثبيت Elixir لأول مرة ، فسنحتاج إلى تثبيت مدير حزم Hex أيضًا. Hex ضروري لتشغيل تطبيق Phoenix ولتثبيت أي تبعيات إضافية قد نحتاجها على طول الطريق.

اكتب هذا الأمر لتثبيت Hex:

mix local.hex

الآن يمكننا المتابعة لتثبيت Phoenix:

mix archive.install https://github.com/phoenixframework/archives/raw/master/phx_new.ez

قم بتثبيت Node.js

يستخدم Phoenix brunch.io لتجميع الأصول الثابتة ، (جافا سكريبت و css والمزيد) ، لذلك ستحتاج إلى تثبيت Node.js.

الطريقة الموصى بها لتثبيت Node.js هي عبر nvm(node ​​version manager).

لتثبيت nvmنقوم بتشغيل هذا الأمر:

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash

لمعرفة إصدارات Node.js المتوفرة للتثبيت ، يمكنك كتابة ما يلي:

nvm ls-remote

سيؤدي هذا إلى إخراج:

Output
...
     v8.8.1
     v8.9.0   (LTS: Carbon)
     v8.9.1   (LTS: Carbon)
     v8.9.2   (LTS: Carbon)
     v8.9.3   (LTS: Carbon)
     v8.9.4   (LTS: Carbon)
    v8.10.0   (LTS: Carbon)
    v8.11.0   (LTS: Carbon)
    v8.11.1   (LTS: Carbon)
    v8.11.2   (LTS: Carbon)
    v8.11.3   (LTS: Carbon)
    v8.11.4   (LTS: Carbon)
->  v8.12.0   (Latest LTS: Carbon)      
...

قم بتثبيت الإصدار الذي تريده باستخدام الأمر التالي:

nvm install 8.12.0

ملاحظة: إذا كنت ترغب في استخدام إصدار مختلف ، فاستبدل 8.12.0الإصدار الذي تريده.

اطلب nvmاستخدام الإصدار الذي قمنا بتنزيله للتو:

nvm use 8.12.0

تم تثبيت العقدة بنجاح:

node -v

قم بتثبيت PostgreSQL

يمكنك تثبيت PostgreSQL بسهولة باستخدام نظام التغليف apt.

sudo apt-get update
sudo apt-get install postgresql postgresql-contrib

افتح غلاف PostgreSQL:

sudo -u postgres psql

قم بتغيير postgresكلمة المرور إلى كلمة مرور آمنة:

\password postgres    

بعد تغيير كلمة المرور بنجاح ، يمكنك الخروج من غلاف PostgreSQL:

\q

أعد تشغيل خدمة PostgreSQL:

sudo systemctl restart postgresql.service

تثبيت inotify-tools

هذا هو مراقب نظام ملفات Linux فقط يستخدمه Phoenix لإعادة تحميل التعليمات البرمجية الحية:

sudo apt-get install inotify-tools

إنشاء تطبيق فينيكس

إنشاء تطبيق جديد:

mix phoenix.new ~/phoenix_project_test

إذا أرجع الأمر الخطأ التالي:

** (Mix) The task "phx.new" could not be found

يمكنك إصلاحه باستخدام الأمر التالي:

mix archive.install https://raw.githubusercontent.com/phoenixframework/archives/master/phx_new.ez

أعد تشغيل الأمر الآن لإنشاء تطبيق Phoenix Phoenix التجريبي:

mix phoenix.new ~/phoenix_project_test

قم بتغيير كلمة مرور PostgreSQL في ملف التكوين باستخدام كلمة المرور التي قمت بتعيينها في الخطوة السابقة:

nano config/dev.exs    

سيتم الآن إنشاء التطبيق بنجاح. انتقل إلى مجلد التطبيق وابدأ تشغيله:

cd ~/phoenix_project_test
mix ecto.create
mix phx.server

الآن أصبح تطبيق Phoenix قيد التشغيل في الميناء 4000.

اترك تعليقاً

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

وظائف طبقات معمارية مرجعية للبيانات الضخمة

وظائف طبقات معمارية مرجعية للبيانات الضخمة

اقرأ المدونة لمعرفة الطبقات المختلفة في بنية البيانات الضخمة ووظائفها بأبسط طريقة.

6 أشياء شديدة الجنون حول نينتندو سويتش

6 أشياء شديدة الجنون حول نينتندو سويتش

يعرف الكثير منكم أن Switch سيصدر في مارس 2017 وميزاته الجديدة. بالنسبة لأولئك الذين لا يعرفون ، قمنا بإعداد قائمة بالميزات التي تجعل "التبديل" "أداة لا غنى عنها".

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

هل تنتظر عمالقة التكنولوجيا للوفاء بوعودهم؟ تحقق من ما تبقى دون تسليم.

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

اقرأ هذا لمعرفة مدى انتشار الذكاء الاصطناعي بين الشركات الصغيرة وكيف أنه يزيد من احتمالات نموها ومنح منافسيها القدرة على التفوق.

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

مع تطور العلم بمعدل سريع ، واستلام الكثير من جهودنا ، تزداد أيضًا مخاطر تعريض أنفسنا إلى تفرد غير قابل للتفسير. اقرأ ، ماذا يمكن أن يعني التفرد بالنسبة لنا.

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

لقد أصبح حل CAPTCHA صعبًا جدًا على المستخدمين في السنوات القليلة الماضية. هل ستكون قادرة على أن تظل فعالة في اكتشاف البريد العشوائي والروبوتات في المستقبل القريب؟

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

ما هو التطبيب عن بعد والرعاية الصحية عن بعد وأثره على الأجيال القادمة؟ هل هو مكان جيد أم لا في حالة الوباء؟ اقرأ المدونة لتجد طريقة عرض!

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

ربما سمعت أن المتسللين يكسبون الكثير من المال ، لكن هل تساءلت يومًا كيف يجنون هذا النوع من المال؟ دعنا نناقش.

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

أصدرت Apple مؤخرًا macOS Catalina 10.15.4 تحديثًا تكميليًا لإصلاح المشكلات ولكن يبدو أن التحديث يتسبب في المزيد من المشكلات التي تؤدي إلى إنشاء أجهزة macOS. قراءة هذه المادة لمعرفة المزيد