Ruby on Rails Web aplicação em um Azure VM

Importante

Os VM clássicos serão retirados a 1 de março de 2023.

Se utilizar recursos iaaS da ASM, por favor preencha a sua migração até 1 de março de 2023. Encorajamo-lo a fazer a troca mais cedo para aproveitar as muitas melhorias de funcionalidades em Azure Resource Manager.

Para mais informações, consulte a Migração dos seus recursos iaaS para a Azure Resource Manager até 1 de março de 2023.

Este tutorial mostra como hospedar um site ruby on Rails em Azure usando uma máquina virtual Linux.

Este tutorial foi validado usando ubuntu Server 14.04 LTS. Se utilizar uma distribuição Linux diferente, poderá ter de modificar os passos para instalar trilhos.

Nota

O Azure tem dois modelos de implementação para criar e trabalhar com recursos: Resource Manager e Clássico. Este artigo cobre a utilização do modelo de implementação clássica. A Microsoft recomenda que as implementações mais novas utilizem o modelo Resource Manager.

A partir de 15 de novembro de 2017, as máquinas virtuais só estarão disponíveis no portal do Azure.

Criar um VM Azure

Comece por criar um Azure VM com uma imagem Linux.

Para criar o VM, pode utilizar o portal do Azure ou a Interface Azure Command-Line (CLI).

Portal do Azure

  1. Assine no portal do Azure

  2. Clique em Criar um recurso e, em seguida, digite "Ubuntu Server 14.04" na caixa de pesquisa. Clique na entrada devolvida pela pesquisa. Para o modelo de implementação, selecione Classic e, em seguida, clique em "Criar".

  3. Na lâmina Basics, os valores de fornecimento para os campos requeridos: Nome (para o VM), nome de utilizador, tipo de autenticação e as credenciais correspondentes, subscrição Azure, grupo de recursos e Localização.

    Criar uma nova Imagem Ubuntu

  4. Depois de for provisionado o VM, clique no nome VM e clique em Pontos de Final na categoria Definições . Encontre o ponto final SSH, listado em Standalone.

    Ponto final predefinido

CLI do Azure

Siga os passos em Criar uma máquina virtual executando linux.

Depois de o VM ser a provisionado, pode obter o ponto final SSH executando o seguinte comando:

azure vm endpoint list <vm-name>  

Instalar Ruby em Trilhos

  1. Utilize o SSH para ligar ao VM.

  2. A partir da sessão SSH, utilize os seguintes comandos para instalar a Ruby no VM:

     sudo apt-get update -y
     sudo apt-get upgrade -y
    
     sudo apt-add-repository ppa:brightbox/ruby-ng
     sudo apt-get update
     sudo apt-get install ruby2.4
    
     > [!TIP]
     > The brightbox repository contains the current Ruby distribution.
    

    A instalação pode demorar alguns minutos. Quando estiver concluído, utilize o seguinte comando para verificar se a Ruby está instalada:

     ruby -v
    
  3. Utilize o seguinte comando para instalar trilhos:

     sudo gem install rails --no-rdoc --no-ri -V
    

    Use as bandeiras sem rdoc e -- sem-ri para saltar a instalação da documentação, que é mais rápida. Este comando provavelmente demorará muito tempo a ser executado, por isso, adicionar o -V apresentará informações sobre o progresso da instalação.

Criar e executar uma aplicação

Enquanto ainda iniciações através do SSH, execute os seguintes comandos:

rails new myapp
cd myapp
rails server -b 0.0.0.0 -p 3000

O novo comando cria uma nova aplicação Rails. O comando do servidor inicia o servidor web WEBrick que vem com Rails. (Para uso de produção, provavelmente quereria usar um servidor diferente, como Unicórnio ou Passageiro.)

Deverá ver um resultado semelhante ao seguinte.

=> Booting WEBrick
=> Rails 4.2.1 application starting in development on http://0.0.0.0:3000
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server
[2015-06-09 23:34:23] INFO  WEBrick 1.3.1
[2015-06-09 23:34:23] INFO  ruby 1.9.3 (2013-11-22) [x86_64-linux]
[2015-06-09 23:34:23] INFO  WEBrick::HTTPServer#start: pid=27766 port=3000

Adicionar um ponto final

  1. Vá ao [portal do Azure][https://portal.azure.com] e selecione o seu VM.

  2. Selecione ENDPOINTS nas Definições ao longo da borda esquerda da página.

  3. Clique em ADD no topo da página.

  4. Na página de diálogo de ponto final adicionar , introduza as seguintes informações:

    • Nome: HTTP

    • Protocolo: TCP

    • Porto público: 80

    • Porto privado: 3000

    • Endereço PI flutuante: Desativado

    • Lista de controlo de acesso - Ordem: 1001, ou outro valor que define a prioridade desta regra de acesso.

    • Lista de controlo de acesso - Nome: allowHTTP

    • Lista de controlo de acesso - Ação: licença

    • Lista de controlos de acesso - Sub-rede remota: 1.0.0.0/16

      Este ponto final tem um porto público de 80 que vai encaminhar o tráfego para o porto privado de 3000, onde o servidor Rails está a ouvir. A regra da lista de controlo de acesso permite o tráfego público no porto 80.

      novo ponto final

  5. Clique em OK para guardar o ponto final.

  6. Deve aparecer uma mensagem que diz guardar o ponto final da máquina virtual. Uma vez que esta mensagem desaparece, o ponto final está ativo. Pode agora testar a sua aplicação navegando para o nome DNS da sua máquina virtual. O website deve parecer semelhante ao seguinte:

    página de trilhos padrão

Passos seguintes

Neste tutorial, fez a maior parte dos passos manualmente. Num ambiente de produção, escreveria a sua aplicação numa máquina de desenvolvimento e a implantaria no Azure VM. Além disso, a maioria dos ambientes de produção acolhe a aplicação Rails em conjunto com outro processo de servidor, como Apache ou NginX, que lida com o pedido de encaminhamento para múltiplas instâncias da aplicação Rails e servindo recursos estáticos. Para obter mais informações, consulte http://guides.rubyonrails.org/routing.html.

Para saber mais sobre Ruby on Rails, visite o Ruby on Rails Guides.

Para utilizar os serviços Azure a partir da sua aplicação Ruby, consulte: