/ Cloud Platform

【 Tools 】透過瀏覽器使用 Azure Ubuntu 終端機 ( Web Terminal )

內容

  • 學習目標
  • 前置準備作業
  • 安裝 Web Terminal 軟體 ttyd
  • 開機後自動啟動 ttyd

學習目標

  • 以 Azure VM 為例於 Ubuntu VM 中安裝 Web Terminal 軟體 ttyd

前置準備作業


安裝 ttyd

Step 1. 登入到 Azure


Step 2. 選取所建立的虛擬機器

  • 點選左上角的三條橫線後,再點選 虛擬機器

    -----2019-12-01---6.50.26

  • 選取所建立的虛擬機器

    -----2019-12-02---11.09.38

  • 取得虛擬機器的 公用 IP 位址

    -----2019-12-04---10.01.52


Step 3. 開啟 Azure VM 連接埠

  • Azure VM 上開啟 7681 Portttyd 使用

    • 點選 網路

    -----2019-12-02---2.33.48

    • 點選 新增輸入連接埠規則

    -----2019-12-02---2.35.37

    • 設定連接埠
      • 目的地連接埠範圍 欄位輸入 7681
      • 名稱 欄位輸入 Port_7681

    -----2019-12-04---10.04.54


Step 4. 登入到 Azure VM

-----2019-12-04---10.06.53


Step 5. 安裝 ttyd

  • 在輸入以下指令進行安裝
    • 更新

      sudo apt-get update
      
    • 安裝相依套件

      sudo apt-get install -y cmake g++ pkg-config git vim-common libwebsockets-dev libjson-c-dev libssl-dev
      
    • 下載 ttyd

      git clone https://github.com/tsl0922/ttyd.git
      
    • 編譯及安裝 ( 依序執行下方指令 )

      cd ttyd && mkdir build && cd build
      cmake ..
      make
      sudo make install
      

Step 6. 啟動 Web Terminal

  • 輸入以下指令進行設定 (免 Login 即可使用)

    ttyd -p 7681 bash
    
    • 開啟瀏覽器
      • 網址如下

        http://虛擬機器的公用IP位址:7681
        

        -----2019-12-04---10.24.51

  • 輸入以下指令進行設定 (需 Login 才可使用)

    sudo ttyd -p 7681 login
    
    • 開啟瀏覽器
      • 網址如下

        http://虛擬機器的公用IP位址:7681
        

        -----2019-12-04---11.05.19


開啟後自動啟動 ttyd

  • 輸入以下指令進行設定

    sudo vim /etc/rc.local
    
  • 開啟 rc.local 檔案後畫面

    -----2019-12-02---3.24.13

  • 進入編輯模式

    輸入 i
    

    -----2019-12-02---3.26.48

  • 輸入啟動指令

    ttyd -p 7681 bash
    

    -----2019-12-04---10.27.19

  • 存檔離開

    • 進入到指令模式

      按 esc 鍵
      
    • 存檔並離開

      :wq!
      

      -----2019-12-04---10.27.56

    • 查看設定狀態

      sudo systemctl status rc-local.service
      

      -----2019-12-04---10.31.38


Reference
GitHub
List of blogs
Archer

Archer

Having being a software engineer. Experience with Python, JavaScript, Node.js, Objective-C, Micro:bit, Raspberry Pi, AWS, Azure, IoT. ❆ [email protected] https://oranwind.org/author/archer/

Read More