Развертывание веб-приложения Ruby на виртуальной машине в Azure Stack HubDeploy a Ruby web app to a VM in Azure Stack Hub

Вы можете создать виртуальную машину для размещения веб-приложения Ruby в Azure Stack Hub.You can create a VM to host your Ruby web app in Azure Stack Hub. В этой статье объясняется, как настроить сервер для размещения веб-приложения Ruby, которое затем будет развернуто в Azure Stack Hub.In this article, you set up a server, configure the server to host your Ruby web app, and then deploy the app to Azure Stack Hub.

В рамках этой статьи используются Ruby и веб-платформа Ruby on Rails.This article uses Ruby and a Ruby on Rails web framework.

Создание виртуальной машиныCreate a VM

  1. Настройте виртуальную машину в Azure Stack Hub.Set up your VM in Azure Stack Hub. Выполните действия, описанные в статье Развертывание виртуальной машины Linux для размещения веб-приложения в Azure Stack Hub.For instructions, see Deploy a Linux VM to host a web app in Azure Stack Hub.

  2. В колонке сети виртуальных машин разрешите доступ к следующим портам:In the VM network pane, make sure the following ports are accessible:

    ПортPort ПротоколProtocol ОписаниеDescription
    8080 HTTPHTTP HTTP — это протокол, который используется для доставки веб-страниц с серверов.Hypertext Transfer Protocol (HTTP) is the protocol that's used to deliver webpages from servers. Клиенты подключаются по протоколу HTTP, используя DNS-имя или IP-адрес.Clients connect via HTTP with a DNS name or IP address.
    443443 HTTPSHTTPS HTTPS — это безопасная версия протокола HTTP, которая использует сертификат безопасности и обеспечивает передачу данных в зашифрованном виде.Hypertext Transfer Protocol Secure (HTTPS) is a secure version of HTTP that requires a security certificate and allows for the encrypted transmission of information.
    2222 SSHSSH Secure Shell (SSH) — это сетевой протокол с применением шифрования для безопасного обмена данными.Secure Shell (SSH) is an encrypted network protocol for secure communications. Такое соединение используется клиентом SSH для настройки виртуальной машины и развертывания приложений.You use this connection with an SSH client to configure the VM and deploy the app.
    33893389 RDPRDP Необязательный параметр.Optional. Протокол RDP позволяет подключаться к удаленному рабочему столу, чтобы использовать графический пользовательский интерфейс на вашем компьютере.The Remote Desktop Protocol (RDP) allows a remote desktop connection to use a graphic user interface on your machine.
    30003000 ДругойCustom Этот порт используется при разработке на Ruby on Rails.The port that's used by the Ruby on Rails web framework in development. Для рабочего сервера разработки вам нужно перенаправить трафик через порты 80 и 443.For a production server, you route your traffic through 80 and 443.

Установка RubyInstall Ruby

  1. Подключитесь к виртуальной машине c помощью клиента SSH.Connect to your VM by using your SSH client. Инструкции см. в разделе Подключение по протоколу SSH с помощью PuTTy.For instructions, see Connect via SSH with PuTTy.

  2. Установите репозиторий PPA.Install the PPA repository. В командной строке bash на виртуальной машине введите следующие команды:At the bash prompt on your VM, enter the following commands:

    sudo apt -y install software-properties-common
    sudo apt-add-repository ppa:brightbox/ruby-ng
    
    sudo apt update
    
  3. Установите Ruby и Ruby on Rails на виртуальную машину.Install Ruby and Ruby on Rails on your VM. Не прерывая подключение к виртуальной машине в сеансе SSH, введите следующие команды:While you're still connected to your VM in your SSH session, enter the following commands:

    sudo apt install ruby
    gem install rails -v 4.2.6
    
  4. Установите зависимости Ruby on Rails.Install Ruby on Rails dependencies. Не прерывая подключение к виртуальной машине в сеансе SSH, введите следующие команды:While you're still connected to your VM in your SSH session, enter the following commands:

    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.While you're installing Ruby on Rails dependencies, you might need to repeatedly run sudo gem install bundler. Если установка завершается сбоем, просмотрите журналы ошибок и устраните проблемы.If the installation fails, review the error logs and resolve the issues.

  5. Проверьте установку.Validate your installation. Не прерывая подключение к виртуальной машине в сеансе SSH, введите следующую команду:While you're still connected to your VM in your SSH session, enter the following command:

        ruby -v
    
  6. Установите Git — широко распространенную систему управления версиями и исходным кодом.Install Git, a widely distributed version control and source code management (SCM) system. Не прерывая подключение к виртуальной машине в сеансе SSH, введите следующую команду:While you're still connected to your VM in your SSH session, enter the following command:

       sudo apt-get -y install git
    

Создание и запуск приложенияCreate and run an app

  1. Не прерывая подключение к виртуальной машине в сеансе SSH, введите следующие команды:While you're still connected to your VM in your SSH session, enter the following commands:

        rails new myapp
        cd myapp
        rails server -b 0.0.0.0 -p 3000
    
  2. Перейдите на новый сервер.Go to your new server. Вы увидите запущенное веб-приложение.You should see your running web application.

       http://yourhostname.cloudapp.net:3000
    

Дальнейшие действияNext steps