将 Ruby Web 应用部署到 Azure Stack Hub 中的 VM
可以创建一个 VM 来托管 Azure Stack Hub 中的 Ruby Web 应用。 在本文中,你将设置一个服务器,将该服务器配置为托管 Ruby Web 应用,然后将该应用部署到 Azure Stack Hub。
本文使用 Ruby 以及 Ruby on Rails Web 框架。
创建 VM
在 Azure Stack Hub 中设置 VM。 有关说明,请参阅部署 Linux VM 以在 Azure Stack Hub 中托管 Web 应用。
在“VM 网络”窗格中,确保可以访问以下端口:
端口 协议 说明 80 HTTP 超文本传输协议 (HTTP) 是用于从服务器传递网页的协议。 客户端使用 DNS 名称或 IP 地址通过 HTTP 进行连接。 443 HTTPS 安全超文本传输协议 (HTTPS) 是 HTTP 的安全版本,它需要一个安全证书,并允许对信息进行加密传输。 22 SSH 安全外壳 (SSH) 是一种用于安全通信的加密网络协议。 你在 SSH 客户端上使用此连接来配置 VM 并部署应用。 3389 RDP 可选。 远程桌面协议 (RDP) 允许远程桌面连接使用计算机的图形用户界面。 3000 自定义 开发中的 Ruby on Rails Web 框架使用的端口。 对于生产服务器,通过 80 和 443 路由流量。
安装 Ruby
使用 SSH 客户端连接到 VM。 有关说明,请参阅使用 PuTTy 通过 SSH 进行连接。
安装 PPA 存储库。 在 VM 上的 bash 提示符下,输入以下命令:
sudo apt -y install software-properties-common sudo apt-add-repository ppa:brightbox/ruby-ng sudo apt update
在 VM 上安装 Ruby 和 Ruby on Rails。 仍在 SSH 会话中连接到 VM 时,输入以下命令:
sudo apt install ruby gem install rails -v 4.2.6
安装 Ruby on Rails 依赖项。 仍在 SSH 会话中连接到 VM 时,输入以下命令:
sudo apt-get install make sudo apt-get install gcc sudo apt-get install sqlite3 sudo apt-get install nodejs sudo gem install sqlite sudo gem install bundler
注意
安装 Ruby on Rails 依赖项时,可能需要反复运行
sudo gem install bundler
。 如果安装失败,请查看错误日志并解决问题。验证安装。 仍在 SSH 会话中连接到 VM 时,输入以下命令:
ruby -v
安装 Git,一种广泛分布的版本控制和源代码管理 (SCM) 系统。 仍在 SSH 会话中连接到 VM 时,输入以下命令:
sudo apt-get -y install git
创建并运行应用
仍在 SSH 会话中连接到 VM 时,输入以下命令:
rails new myapp cd myapp rails server -b 0.0.0.0 -p 3000
转到新服务器。 应会看到你的 Web 应用程序正在运行。
http://yourhostname.cloudapp.net:3000
后续步骤
- 详细了解如何针对 Azure Stack Hub 进行开发。
- 了解用作 IaaS 的 Azure Stack Hub 的常见部署。
- 若要了解 Ruby 编程语言并找到适用于 Ruby 的其他资源,请参阅 Ruby-lang.org。