วิธีการติดตั้ง Phoenix Framework บน CentOS 7

ฟีนิกซ์เป็นกรอบการพัฒนาเว็บที่ใช้ Elixir มันถูกออกแบบมาเพื่อมอบประสิทธิภาพการพัฒนาที่สูงคุณสมบัติที่หลากหลายและประสิทธิภาพรันไทม์ที่ทรงพลัง

บทช่วยสอนนี้จะแสดงวิธีการติดตั้ง Phoenix บนอินสแตนซ์เซิร์ฟเวอร์ Vultr CentOS 7 เพื่อการพัฒนา

ข้อกำหนดเบื้องต้น

ก่อนที่จะดำเนินการต่อฉันคิดว่าคุณมี:

  • ปรับใช้อินสแตนซ์เซิร์ฟเวอร์ Vultr CentOS 7 ใหม่
  • ลงชื่อเข้าใช้ระบบ CentOS 7 นี้ในฐานะผู้ใช้ที่ไม่ใช่ผู้ใช้ sudo

ขั้นตอนที่ 1: อัปเดตระบบ

sudo yum install epel-release
sudo yum update
sudo reboot

ขั้นตอนที่ 2: ติดตั้ง Erlang

ก่อนอื่นคุณต้องติดตั้ง Erlang บนระบบของคุณ Phoenix เป็นเฟรมเวิร์กที่เขียนด้วยภาษาการเขียนโปรแกรม Elixir และแอพพลิเคชั่นใดก็ตามที่ใช้ Elixir จะต้องรวบรวมเป็นรหัสไบต์ของ Erlang ก่อนจึงจะสามารถดำเนินการได้

cd ~
wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm
sudo rpm -Uvh erlang-solutions-1.0-1.noarch.rpm
sudo yum install erlang

คุณสามารถยืนยันการติดตั้ง Erlang ได้ด้วย:

erl

คำสั่งนี้จะนำคุณเข้าสู่เชลล์ Erlang เมื่อเริ่มต้นเชลล์ Erlang คุณจะเห็นผลลัพธ์ต่อไปนี้

Erlang/OTP 18 [erts-7.3] [source-d2a6d81] [64-bit] [async-threads:10] [hipe] [kernel-poll:false]

Eshell V7.3  (abort with ^G)
1>

กดCtrl+Cสองครั้งเพื่อออกจากเปลือก Erlang

ขั้นตอนที่ 3: ติดตั้งยาอายุวัฒนะ

เนื่องจากเวอร์ชั่นของ Elixir ในที่เก็บข้อมูลระบบ YOS CentOS 7 ค่อนข้างล้าสมัยคุณควรใช้ไฟล์เก็บถาวร Elixir ที่รวบรวมไว้อย่างเป็นทางการเพื่อติดตั้ง Elixir เวอร์ชันล่าสุด

ดาวน์โหลดและเปิดเครื่องรูดไฟล์เก็บถาวรที่รวบรวมไว้ล่วงหน้าของ Elixir ล่าสุด:

cd /usr/bin
sudo mkdir elixir
cd /usr/bin/elixir
sudo wget https://github.com/elixir-lang/elixir/releases/download/v1.2.5/Precompiled.zip
sudo yum install unzip
sudo unzip Precompiled.zip

Elixir ได้รับการติดตั้งบนระบบของคุณแล้ว คุณสามารถเรียกใช้คำสั่ง Elixir ได้โดยระบุเส้นทางของแต่ละคำสั่งที่เกี่ยวข้องกับ Elixir เช่น:

/usr/bin/elixir/bin/elixir -v

คำสั่งนี้จะบอกเวอร์ชั่นของ Elixir บนระบบของคุณ

ตามความสะดวกคุณสามารถเพิ่มพา ธ bin ของ Elixir (พร้อมกับพา ธ bin.js bin bin ที่ต้องติดตั้ง) ให้กับPATHตัวแปรสภาพแวดล้อมของคุณ:

sudo vi /etc/profile

ต่อท้ายบรรทัดต่อไปนี้ที่ท้ายไฟล์:

export PATH="$PATH:/usr/bin/elixir/bin:/usr/bin/node-v6.1.0-linux-x64/bin"

บันทึกและออก:

:wq

โหลดโปรไฟล์ซ้ำ:

source /etc/profile

จากนี้ไปคุณสามารถเรียกใช้คำสั่งที่เกี่ยวข้องกับ Elixir โดยไม่ต้องระบุพา ธ ที่สมบูรณ์เช่น:

elixir -v

ตอนนี้ให้ติดตั้งตัวจัดการแพคเกจ Hex โดยเรียกใช้mixคำสั่งในลักษณะเดียวกัน:

cd ~
mix local.hex

ตอบYในระหว่างกระบวนการติดตั้ง

ขั้นตอนที่ 4: ติดตั้ง Phoenix

ใช้คำสั่งต่อไปนี้เพื่อติดตั้ง Phoenix:

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

ตอบYในระหว่างกระบวนการติดตั้ง

ขั้นตอนที่ 5: ติดตั้ง Node.js (ไม่บังคับ)

หากคุณต้องการใช้ brunch.io เครื่องมือสร้างเริ่มต้นของฟีนิกซ์เพื่อรวบรวมสินทรัพย์คงที่ (javascript, css ฯลฯ ) คุณต้องติดตั้ง Node.js (> = 5.0.0):

cd ~
wget https://nodejs.org/dist/v6.1.0/node-v6.1.0-linux-x64.tar.xz
sudo yum install xz
xz -d node-v6.1.0-linux-x64.tar.xz
tar -xvf node-v6.1.0-linux-x64.tar
sudo mv ~/node-v6.1.0-linux-x64 /usr/bin/

จำไว้ว่าพา ธ Node.js ถูกเพิ่มเข้าไปในตัวแปรสภาพแวดล้อม PATH ในขั้นตอนที่ 3 คุณสามารถทดสอบการติดตั้ง Node.js ด้วยคำสั่งนี้:

node -v

ขั้นตอนที่ 6: ติดตั้ง PostgreSQL

โดยค่าเริ่มต้น Phoenix ใช้ PostgreSQL เพื่อกำหนดค่าแอปพลิเคชัน บน CentOS 7 คุณสามารถติดตั้ง PostgreSQL โดยใช้ YUM:

sudo yum install -y postgresql-server
sudo postgresql-setup initdb

เริ่มpostgresqlบริการ:

sudo systemctl start postgresql.service
sudo systemctl enable postgresql.service

ตั้งรหัสผ่านสำหรับผู้ใช้ PostgreSQL เริ่มต้น "postgres":

sudo -u postgres psql

ในเชลล์ PostgreSQL (หลังจากพรอมต์เปลี่ยนเป็นpostgres=#) ให้ตั้งรหัสผ่านสำหรับ "postgres":

\password postgres

ป้อนรหัสผ่านpostgresสองครั้งซึ่งเป็นรหัสที่ต้องการของ Phoenix

สุดท้ายให้ใช้คำสั่งต่อไปนี้เพื่อออกจากเชลล์ PostgreSQL

\q

ตั้งค่าวิธีการพิสูจน์ตัวตนผู้ใช้ฐานข้อมูล:

sudo vi /var/lib/pgsql/data/pg_hba.conf

ค้นหาส่วนต่อไปนี้:

# IPv4 local connections:
host    all             all             127.0.0.1/32            ident
# IPv6 local connections:
host    all             all             ::1/128                ident

ปรับเปลี่ยนวิธีการตรวจสอบความถูกต้องของการเชื่อมต่อท้องถิ่นของ IPv4 เป็น md5:

# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

บันทึกและออก:

:wq

เริ่มpostgresqlบริการใหม่:

sudo systemctl restart postgresql.service

ขั้นตอนที่ 7: ติดตั้ง inotify-tools

ใช้คำสั่งต่อไปนี้เพื่อติดตั้งคอมโพเนนต์ที่จำเป็น "inotify-tools":

sudo yum install inotify-tools

ขั้นตอนที่ 8: สร้างแอปพลิเคชันฟีนิกซ์

สมมติว่าคุณต้องการสร้างแอปพลิเคชันฟีนิกซ์ในไดเรกทอรี~/phoenix_project_1:

mix phoenix.new ~/phoenix_project_1

ตอบYในระหว่างกระบวนการดึงและติดตั้งการอ้างอิง

คำสั่งนี้จะสร้างไดเรกทอรีแอปพลิเคชัน~/phoenix_project_1สำหรับคุณ เข้าสู่ไดเรกทอรีและสร้างฐานข้อมูล:

cd ~/phoenix_project_1
mix ecto.create

คำตอบYสำหรับการติดตั้ง "เหล็กเส้น" ระหว่างการสร้างฐานข้อมูลครั้งแรก

เปิดใช้งานแอปพลิเคชันของคุณด้วยคำสั่งต่อไปนี้:

mix phoenix.server

ในขณะที่รักษาการเชื่อมต่อ SSH ปัจจุบันยังคงอยู่ให้เริ่มการเชื่อมต่อ SSH อื่นและแก้ไขกฎไฟร์วอลล์เพื่อให้สิทธิ์การเข้าถึงแอปพลิเคชันของคุณ:

sudo firewall-cmd --zone=public --permanent --add-port=4000/tcp
sudo firewall-cmd --reload

สุดท้ายใช้เว็บเบราว์เซอร์เพื่อเข้าสู่แอปพลิเคชันของคุณจาก:

http://[your-server-IP]:4000

สรุปบทเรียนของเรา ยินดีต้อนรับสู่ฟีนิกซ์!



Leave a Comment

การติดตั้ง Pagekit CMS บน CentOS 7

การติดตั้ง Pagekit CMS บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Pagekit เป็น CMS โอเพนซอร์สที่เขียนด้วย PHP ซอร์สโค้ดของ Pagekit นั้นโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า

วิธีการติดตั้ง TestLink บน CentOS 7

วิธีการติดตั้ง TestLink บน CentOS 7

TestLink เป็นระบบดำเนินการจัดการทดสอบบนเว็บโอเพ่นซอร์ส ช่วยให้ทีมงานประกันคุณภาพสามารถสร้างและจัดการกรณีทดสอบได้เช่นกัน

วิธีการที่ปลอดภัย vsFTPd ด้วย SSL / TLS

วิธีการที่ปลอดภัย vsFTPd ด้วย SSL / TLS

FTP ที่ปลอดภัยมากหรือเพียงแค่ vsFTPd เป็นซอฟต์แวร์น้ำหนักเบาที่มีความสามารถในการปรับแต่ง ในบทช่วยสอนนี้เราจะรักษาความปลอดภัยของข้อความ

วิธีการติดตั้ง GCC บน CentOS 6

วิธีการติดตั้ง GCC บน CentOS 6

CentOS ติดตามการพัฒนา Red Hat Enterprise Linux (RHEL) RHEL พยายามที่จะเป็นแพลตฟอร์มเซิร์ฟเวอร์ที่มั่นคงซึ่งหมายความว่าจะไม่รีบเร่งในการรวม

ตั้งค่าบัญชีผู้ใช้ SFTP เท่านั้นบน CentOS 7

ตั้งค่าบัญชีผู้ใช้ SFTP เท่านั้นบน CentOS 7

ในบางโอกาสผู้ดูแลระบบอาจต้องสร้างบัญชีผู้ใช้และ จำกัด การเข้าถึงเพื่อจัดการไฟล์ของตัวเองผ่าน sFTP เท่านั้น

วิธีการติดตั้ง Moodle บน CentOS 7

วิธีการติดตั้ง Moodle บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Moodle เป็นแพลตฟอร์มการเรียนรู้โอเพนซอร์ซหรือระบบจัดการหลักสูตร (CMS) - ชุดซอฟต์แวร์โอเพ่นซอร์สฟรีที่ออกแบบมาเพื่อช่วย

ติดตั้ง NGINX พร้อม ModSecurity บน CentOS 6

ติดตั้ง NGINX พร้อม ModSecurity บน CentOS 6

ในบทความนี้ฉันจะอธิบายวิธีสร้าง LEMP สแต็คที่ได้รับการป้องกันโดย ModSecurity ModSecurity เป็นไฟร์วอลล์เว็บแอพพลิเคชันแบบโอเพนซอร์สที่มีประโยชน์

วิธีการติดตั้ง Apache, MySQL และ PHP บน CentOS 6

วิธีการติดตั้ง Apache, MySQL และ PHP บน CentOS 6

Introduction LAMP เป็นคำย่อที่ย่อมาจาก Linux, Apache, MySQL และ PHP ซอฟต์แวร์นี้เป็นโซลูชันโอเพ่นซอร์สที่ได้รับความนิยมสูงสุดสำหรับการติดตั้ง o

การปรับเปลี่ยน Icinga2 ให้ใช้โมเดลต้นแบบ / ไคลเอ็นต์บน CentOS 6 หรือ CentOS 7

การปรับเปลี่ยน Icinga2 ให้ใช้โมเดลต้นแบบ / ไคลเอ็นต์บน CentOS 6 หรือ CentOS 7

Icinga2 เป็นระบบการตรวจสอบที่มีประสิทธิภาพและเมื่อใช้ในโมเดลลูกค้าหลักจะสามารถแทนที่ความต้องการการตรวจสอบที่อิง NRPE ปรมาจารย์

การติดตั้ง Netdata บน CentOS 7

การติดตั้ง Netdata บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Netdata เป็นดาวรุ่งพุ่งแรงในด้านการติดตามการวัดในระบบแบบเรียลไทม์ เมื่อเปรียบเทียบกับเครื่องมือชนิดเดียวกัน Netdata:

วิธีการติดตั้งและกำหนดค่า Buildbot บน CentOS 7

วิธีการติดตั้งและกำหนดค่า Buildbot บน CentOS 7

Buildbot เป็นโอเพ่นซอร์สเครื่องมือที่ใช้การรวมอย่างต่อเนื่องของ Python สำหรับการสร้างซอฟต์แวร์การทดสอบและการปรับใช้โดยอัตโนมัติ Buildbot ประกอบด้วยหนึ่งหรือหมอ

ติดตั้งเซิร์ฟเวอร์มัลติเพลเยอร์ SA-MP San Andreas บน CentOS 6

ติดตั้งเซิร์ฟเวอร์มัลติเพลเยอร์ SA-MP San Andreas บน CentOS 6

ยินดีต้อนรับสู่การกวดวิชา Vultr อื่น ที่นี่คุณจะได้เรียนรู้วิธีการติดตั้งและเรียกใช้เซิร์ฟเวอร์ SAMP คู่มือนี้เขียนขึ้นสำหรับ CentOS 6 ข้อกำหนดเบื้องต้นคุณจะต้อง

ติดตั้ง dotProject บน CentOS 7

ติดตั้ง dotProject บน CentOS 7

แอปพลิเคชั่น dotProject เป็นเครื่องมือการจัดการโครงการแบบโอเพ่นซอร์สบนเว็บ สำหรับตอนนี้มันวางจำหน่ายภายใต้ GPL ดังนั้นคุณสามารถปรับใช้และใช้งานได้บนบริการของคุณ

ติดตั้ง TaskServer (taskd) บน CentOS 7

ติดตั้ง TaskServer (taskd) บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร TaskWarrior เป็นเครื่องมือจัดการเวลาแบบโอเพ่นซอร์สที่เป็นการปรับปรุงแอพพลิเคชั่น Todo.txt และโคลนของมัน เนื่องมาจาก

วิธีการติดตั้ง Selfoss RSS Reader บน CentOS 7 LAMP VPS

วิธีการติดตั้ง Selfoss RSS Reader บน CentOS 7 LAMP VPS

ใช้ระบบที่แตกต่างกันอย่างไร Selfoss RSS Reader เป็นฟรีและเปิดตัวเองบนเว็บโฮสต์อเนกประสงค์, สตรีมสด, ตอบโต้กับผู้ใช้ได้, ฟีดข่าว (RSS / Atom) reade

วิธีการติดตั้ง Kanboard บน CentOS 7

วิธีการติดตั้ง Kanboard บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Kanboard เป็นซอฟต์แวร์ซอฟต์แวร์การจัดการโครงการโอเพ่นซอร์สฟรีที่ออกแบบมาเพื่ออำนวยความสะดวกและมองเห็นภาพการทำงานเป็นทีม

การตั้งค่าเซิร์ฟเวอร์ Half Life 2 บน CentOS 6

การตั้งค่าเซิร์ฟเวอร์ Half Life 2 บน CentOS 6

บทช่วยสอนนี้จะกล่าวถึงกระบวนการติดตั้งเซิร์ฟเวอร์เกม Half Life 2 บนระบบ CentOS 6 ขั้นตอนที่ 1: การติดตั้งข้อกำหนดเบื้องต้นเพื่อตั้งค่า ou

ไดรฟ์ที่แชร์ความพร้อมใช้งานสูงใช้ Vultr Block Storage และ GlusterFS

ไดรฟ์ที่แชร์ความพร้อมใช้งานสูงใช้ Vultr Block Storage และ GlusterFS

GlusterFS เป็นระบบไฟล์ที่เชื่อมต่อกับเครือข่ายซึ่งช่วยให้คุณแบ่งปันไดรฟ์สองตัวในอุปกรณ์หลายตัวบนเครือข่ายได้อย่างมีประสิทธิภาพ ระบบไฟล์นี้คือ

วิธีโยกย้ายกล่องจดหมายอย่างง่ายดายด้วย Imapsync บน CentOS 7

วิธีโยกย้ายกล่องจดหมายอย่างง่ายดายด้วย Imapsync บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร ในขณะที่การโยกย้ายเว็บไซต์มักจะไม่มีปัญหาบางครั้งก็ยากที่จะโยกย้ายกล่องอีเมล นี่คือ CAS โดยเฉพาะอย่างยิ่ง

วิธีการติดตั้ง PrestaShop บน CentOS 7

วิธีการติดตั้ง PrestaShop บน CentOS 7

PrestaShop เป็นโซลูชันอีคอมเมิร์ซแบบโอเพ่นซอร์สที่ได้รับความนิยม คุณสามารถใช้มันเพื่อสร้างร้านค้าออนไลน์ของคุณเองได้ฟรี ในบทช่วยสอนนี้ฉันจะแสดงให้คุณเห็นว่า

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true

ภาวะเอกฐานทางเทคโนโลยี: อนาคตอันห่างไกลของอารยธรรมมนุษย์?

ภาวะเอกฐานทางเทคโนโลยี: อนาคตอันห่างไกลของอารยธรรมมนุษย์?

ในขณะที่วิทยาศาสตร์มีวิวัฒนาการไปอย่างรวดเร็ว โดยรับช่วงต่อความพยายามของเราอย่างมาก ความเสี่ยงในการทำให้ตัวเองตกอยู่ในภาวะภาวะเอกฐานที่อธิบายไม่ได้ก็เพิ่มขึ้นเช่นกัน อ่านว่าภาวะเอกฐานอาจมีความหมายสำหรับเราอย่างไร

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ผลกระทบของปัญญาประดิษฐ์ในการดูแลสุขภาพ 2021

ผลกระทบของปัญญาประดิษฐ์ในการดูแลสุขภาพ 2021

AI ในการดูแลสุขภาพได้ก้าวกระโดดอย่างมากจากทศวรรษที่ผ่านมา ดังนั้นอนาคตของ AI ในการดูแลสุขภาพจึงยังคงเติบโตทุกวัน