如何在Ubuntu 16.04上安装Elixir和Phoenix Framework

本教程将向您展示如何在Vultr Ubuntu 16.04服务器实例上安装Elixir和Phoenix框架以进行开发。

先决条件

  • 一个新的Vultr Ubuntu 16.04服务器实例
  • 以非root用户sudo用户身份登录。

更新系统:

sudo apt-get update

安装Erlang

使用以下命令安装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 Shell,显示以下输出:

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 Shell。

安装Elixir

使用以下命令安装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应用程序所必需的,并安装了在此过程中可能需要的任何其他依赖项。

输入以下命令以安装十六进制:

mix local.hex

现在我们可以继续安装Phoenix了:

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

安装Node.js

Phoenix使用brunch.io编译静态资产(javascript,css等),因此您需要安装Node.js。

推荐的安装Node.js的方法是通过nvm(节点版本管理器)。

要安装,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

您可���使用apt打包系统轻松安装PostgreSQL。

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

打开PostgreSQL shell:

sudo -u postgres psql

postgres密码更改为安全密码:

\password postgres    

成功更改密码后,您可以退出PostgreSQL shell:

\q

重新启动PostgreSQL服务:

sudo systemctl restart postgresql.service

安装 inotify-tools

这是Phoenix用于实时代码重新加载的仅Linux文件系统观察程序:

sudo apt-get install inotify-tools

创建一个Phoenix应用程序

创建一个新的应用程序:

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应用程序:

mix phoenix.new ~/phoenix_project_test

使用在上一步中设置的密码更改配置文件中的PostgreSQL密码:

nano config/dev.exs    

现在将成功创建该应用程序。移至应用程序文件夹并启动它:

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

现在Phoenix应用程序已启动并在port上运行4000

留下評論

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。

如何在Ubuntu 16.04上安装OpenSIPS控制面板

如何在Ubuntu 16.04上安装OpenSIPS控制面板

快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。

诊断Minecraft服务器延迟和低TPS

诊断Minecraft服务器延迟和低TPS

了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息