將 Ruby Web 應用程式部署至 Azure Stack Hub 中的 VM

您可以在 Azure Stack Hub 中建立用來裝載 Ruby Web 應用程式的 VM。 在本文中,您可建立伺服器、並將該伺服器設定來裝載 Ruby Web 應用程式,然後再將應用程式部署至 Azure Stack Hub。

本文使用 Ruby 和 Ruby on Rails Web 架構。

建立 VM

  1. 在 Azure Stack Hub 中設定 VM。 如需相關指示,請參閱在 Azure Stack Hub 中部署用來裝載 Web 應用程式的 Linux VM

  2. 在 VM 網路窗格中,確定可存取下列連接埠:

    連接埠 通訊協定 描述
    80 HTTP 超文字傳輸通訊協定 (HTTP) 是用於從伺服器提供網頁的通訊協定。 用戶端會使用 DNS 名稱或 IP 位址透過 HTTP 連線。
    443 HTTPS 超文字傳輸通訊協定安全 (HTTPS) 是安全的 HTTP 版本,其需要安全性憑證並允許加密的資訊傳輸。
    22 SSH 安全殼層 (SSH) 是安全通訊的加密網路通訊協定。 您會使用此連線與 SSH 用戶端來設定 VM 及部署應用程式。
    3389 RDP 選擇性。 遠端桌面通訊協定 (RDP) 可讓遠端桌面連線在您的機器上使用圖形化使用者介面。
    3000 Custom Ruby on Rails Web 架構在開發過程中使用的連接埠。 針對生產伺服器,您可透過 80 和 443 來傳送流量。

安裝 Ruby

  1. 使用 SSH 用戶端連線到 VM。 如需指示,請參閱透過 SSH 與 PuTTy 進行連線

  2. 安裝 PPA 存放庫。 在您 VM 的 Bash 提示字元中,輸入下列命令:

    sudo apt -y install software-properties-common
    sudo apt-add-repository ppa:brightbox/ruby-ng
    
    sudo apt update
    
  3. 在您的 VM 上安裝 Ruby 和 Ruby on Rails。 在您仍處於自己的 SSH 工作階段中,且仍與 VM 保持連線的情況下,輸入下列命令:

    sudo apt install ruby
    gem install rails -v 4.2.6
    
  4. 安裝 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。 如果安裝失敗,請檢閱錯誤記錄並解決問題。

  5. 驗證您的安裝。 在您的 SSH 工作階段中仍連線至 VM 的情況下,輸入下列命令:

        ruby -v
    
  6. 安裝 Git,這是一種廣為人知的版本控制暨原始程式碼管理 (SCM) 系統。 在您的 SSH 工作階段中仍連線至 VM 的情況下,輸入下列命令:

       sudo apt-get -y install git
    

建立及執行應用程式

  1. 在您仍處於自己的 SSH 工作階段中,且仍與 VM 保持連線的情況下,輸入下列命令:

        rails new myapp
        cd myapp
        rails server -b 0.0.0.0 -p 3000
    
  2. 前往您的新伺服器。 您應該會看到執行中的 Web 應用程式。

       http://yourhostname.cloudapp.net:3000
    

後續步驟