Azure Stack Hub에서 VM에 Ruby 웹앱 배포

Azure Stack Hub에서 Ruby 웹앱을 호스트하는 VM을 만들 수 있습니다. 이 문서에서는 서버를 설정하고, Ruby 웹앱을 호스트하도록 서버를 구성한 다음, Azure Stack Hub에 앱을 배포합니다.

이 문서에서는 Ruby 및 Ruby on Rails 웹 프레임워크를 사용합니다.

VM 만들기

  1. Azure Stack Hub에서 VM을 설정합니다. 자세한 내용은 Azure Stack Hub에서 웹앱을 호스트하는 Linux VM 배포를 참조하세요.

  2. VM 네트워크 창에서 다음 포트에 액세스할 수 있는지 확인합니다.

    포트 프로토콜 Description
    80 HTTP HTTP(Hypertext Transfer Protocol)는 서버에서 웹 페이지를 제공하는 데 사용되는 프로토콜입니다. 클라이언트는 DNS 이름 또는 IP 주소를 사용하여 HTTP를 통해 연결합니다.
    443 HTTPS HTTPS(Hypertext Transfer Protocol Secure)는 보안 인증서가 필요하고 암호화된 정보 전송을 허용하는 보안 버전의 HTTP입니다.
    22 SSH SSH(Secure Shell)는 보안 통신을 위한 암호화된 네트워크 프로토콜입니다. 이 연결을 SSH 클라이언트와 함께 사용하여 VM을 구성하고 앱을 배포합니다.
    3389 RDP 선택 사항입니다. RDP(원격 데스크톱 프로토콜)를 사용하면 원격 데스크톱 연결에서 컴퓨터의 그래픽 사용자 인터페이스를 사용할 수 있습니다.
    3000 사용자 지정 개발 중인 Ruby on Rails 웹 프레임워크에서 사용하는 포트입니다. 프로덕션 서버의 경우 트래픽을 80 및 443으로 라우팅합니다.

Ruby 설치

  1. SSH 클라이언트를 사용하여 VM에 커넥트. 자세한 내용은 PuTTy를 사용하여 SSH를 통한 커넥트 참조하세요.

  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. 널리 분산된 버전 제어 및 SCM(소스 코드 관리) 시스템인 Git을 설치합니다. 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. 새 서버로 이동합니다. 실행 중인 웹 애플리케이션이 표시됩니다.

       http://yourhostname.cloudapp.net:3000
    

다음 단계