OliveTin은 사용자에게 Raspberry Pi 서버를 위한 웹 기반 원격 제어를 제공합니다.

OliveTin은 사용자에게 Raspberry Pi 서버를 위한 웹 기반 원격 제어를 제공합니다.
당신과 같은 독자는 MUO를 지원하는 데 도움이 됩니다. 귀하가 당사 사이트의 링크를 사용하여 구매하면 당사는 제휴 수수료를 받을 수 있습니다. 자세히 알아보기

Raspberry Pi를 홈 서버로 실행하는 경우 친구와 가족도 해당 서비스에 액세스할 수 있습니다. 경우에 따라 서버에 대한 제한된 제어가 필요한 일부 일상적인 작업을 실행해야 합니다.





OliveTin은 사용자가 정의한 미리 결정된 명령과 스크립트를 실행하기 위해 웹 브라우저를 통해 액세스할 수 있는 자체 호스팅 앱입니다.





오늘의 메이크업 비디오 콘텐츠를 계속하려면 스크롤하세요.

Raspberry Pi에서 OliveTin을 사용하는 이유는 무엇입니까?

  소파에 앉아 영화를 보는 친구들

Raspberry Pi 시리즈의 단일 보드 컴퓨터는 뛰어난 경량 홈 서버를 만들며 상대적으로 쉽게 Raspberry Pi 웹 서버 설정 .





웹사이트와 블로그를 호스팅하는 것 외에도 Raspberry Pi는 사진 갤러리를 호스팅할 수 있습니다. , 요리책 및 온라인 오피스 제품군. 당신은 할 수 있습니다 Jellyfin으로 영화와 프로그램을 TV로 스트리밍하세요. , 또는 Audiobookshelf로 오디오북 라이브러리 자체 호스팅 .

가질 수 있는 사용자 수에도 제한이 없으므로 혼자 살지 않는 한 다른 가족 구성원과 Raspberry Pi 서비스에 대한 액세스를 공유할 수 있습니다.



다른 유형의 컴퓨터와 마찬가지로 서버는 가끔 유지 관리가 필요합니다. 사용자가 다음을 수행해야 할 수 있습니다. 특정 서비스 시작 또는 중지 , VPN에 연결 , Raspberry Pi에 파일 백업 , 또는 네트워크 문제 확인 .

가족과 동거인이 있다면 Linux 명령줄에 익숙하신 분 , 실수로 또는 의도적으로 시스템을 중단하지 않도록 신뢰하고 그들에게 자체 SSH 자격 증명을 제공하는 것을 고려할 수 있습니다. sudo 그룹 구성원 , 그래서 그들은 당신을 귀찮게 하지 않고 이러한 작업을 수행할 수 있습니다.





유혹적이지만 위험한 제안이며, 문제가 발생하면 바로잡아야 합니다. OliveTin을 사용하면 다른 서버 사용자가 정기적으로 수행해야 할 일상적인 명령을 정의할 수 있습니다. 그런 다음 웹 브라우저를 열고 명령줄을 건드릴 필요 없이 Pi에서 명령을 실행하는 버튼을 누를 수 있습니다.

Raspberry Pi에 OliveTin을 설치하는 방법

  올리브 주석 도커 작성 파일

OliveTin을 설치하는 가장 쉬운 방법은 Docker Compose를 사용하는 것입니다. 아직 Raspberry Pi에 Docker 및 Docker Compose가 설치되어 있지 않은 경우 에 대한 필수 가이드를 확인하세요. Linux에 Docker 및 Docker Compose를 설치하는 방법 .





다음을 사용하여 Raspberry Pi 서버에 연결합니다. 보안 셸(SSH):

 ssh pi@your-local-pi-ip-address

OliveTin을 위한 새 디렉토리를 생성하고 CD 그 안으로 이동하는 명령:

 mkdir olivetin && cd olivetin

nano 텍스트 편집기를 사용하여 새 Docker Compose 파일을 만듭니다.

 nano docker-compose.yml

다음을 복사하여 붙여넣으십시오.

 version: "3.5" 
services:
  olivetin:
    container_name: olivetin
    image: jamesread/olivetin
    user: root
    volumes:
      - ~/olivetin:/config
      - /var/run/docker.sock:/var/run/docker.sock
    ports:
      - "1337:1337"
    restart: unless-stopped

networks:
  web:
  section:
      external: true

이제 nano를 저장하고 종료하십시오. Ctrl + O 그 다음에 Ctrl + X .

OliveTin을 처음 실행하기 전에 구성 파일을 만들어야 합니다. 여기에서 사용자가 실행할 명령을 정의합니다. 지금은 다음을 입력하십시오.

 touch config.yaml 

OliveTin을 사용하여 사용자에게 제한된 서버 제어 제공

터미널에 다음을 입력합니다.

 docker-compose up -d 

이 명령은 분리 모드에서 Docker Compose를 불러옵니다. Docker Compose는 OliveTin용 이미지를 다운로드하고 컨테이너를 설정합니다. 이 과정은 다소 시간이 걸릴 수 있습니다. 명령 프롬프트로 돌아오면 다음을 사용하여 모든 것이 올바르게 실행되고 있는지 확인합니다.

 docker-compose ps

브라우저를 열고 다음으로 이동합니다. 귀하의 파이 로컬 IP 주소:1337 . OliveTin 바닥글이 있는 회색 웹 페이지가 표시되어야 합니다. 이제 사용자를 위한 명령 정의를 시작할 준비가 되었습니다.

터미널로 돌아가서 nano를 사용하여 이전에 만든 구성 파일을 편집합니다.

 nano config.yaml

구문은 간단하며 다음 예와 유사하게 서비스 이름과 수행할 작업을 정의할 수 있습니다.

 actions: 
  - title: "Reboot server"
    shell: reboot

  - title: "Ping Netflix"
    shell: ping netflix.com

  - title: Restart Apache
    icon: "🏁"
    shell: sudo service apache2 restart
  

그것 필드는 사용자가 볼 수 있는 제목이고 다음 명령은 껍데기: Raspberry Pi에서 실제로 수행될 명령입니다.

OliveTin은 유니코드 아이콘을 지원하며 이러한 아이콘의 HTML 코드를 부분. 또는 사용하려는 이미지의 전체 URL을 설정할 수 있습니다. 예를 들어:

 icon: '<img src = "https://www.makeuseof.com/public/build/images/muo-logo-full-colored-light.svg" width = "81px"/>'
  6개의 아이콘이 있는 올리브 주석 웹 인터페이스

우리의 구성은 Raspberry Pi를 다시 시작하고 Apache를 다시 시작하고 Netflix를 ping하는 예제를 제공하지만 실제로 지정할 수 있는 명령에는 제한이 없습니다. 사용자에게 한 디렉토리에서 다른 디렉토리로 영화를 복사하는 버튼을 제공하거나, 특정 디렉토리를 빠르게 지우고 덮어쓰거나, 임의의 키로 저장 장치를 암호화하는 킬 스위치를 구축할 수 있습니다.

구성에 만족하면 파일을 저장하고 을 눌러 nano를 종료합니다. Ctrl + O 그 다음에 Ctrl + X.

버튼 누름의 결과로 생성된 모든 stdout이 기록됩니다. 를 누르면 로그를 볼 수 있습니다. 로그 오른쪽 상단의 버튼. OliveTin을 사용하면 사용자가 웹 인터페이스(텍스트 상자 또는 드롭다운 선택 항목 포함)를 통해 인수라고 하는 명령을 제공할 수 있습니다.

  명령이 있는 올리브 주석 텍스트 상자

경험이 없는 사용자가 Raspberry Pi 서버에 권한이 있는 임의의 명령을 직접 실행하도록 하는 것과 관련된 위험 때문에 OliveTin이 허용할 인수 유형을 제한할 수 있습니다.

빠른 참조를 위해 유형은 다음과 같습니다.

유형

허용되는 값

very_dangerous_raw_string

이름에서 알 수 있듯이 사용자는 텍스트나 명령을 입력하고 수행할 수 있습니다.

정수

정수 양수

ASCII

공백이나 구두점이 없는 모든 문자 또는 숫자

ascii_identifier

DNS 및 이와 유사한 경우

ascii_sentence

더 많은 Google 설문조사를 받는 방법

a-z , 0-9, 공백 포함, .,

URL

웹 주소

텍스트 상자 정의 config.yaml 파일 형식은 아래와 같습니다.

 actions: 
  - title: Echo something to command line
    icon: "&#9940;"
    shell: echo {{ message }}
    arguments:
      - name: message
        type: very_dangerous_raw_string

누군가 적절한 버튼을 누르면 텍스트 상자가 나타나며 로컬 네트워크의 모든 사용자가 브라우저를 통해 임의의 코드를 실행할 수 있습니다. 전적으로 좋은 생각은 아닙니다.

OliveTin을 사용하면 사용자가 Raspberry Pi 서버에서 기본 작업을 쉽게 수행할 수 있습니다.

Raspberry Pi는 가족이 사용할 호스팅 서비스를 위한 완벽한 홈 서버 플랫폼이며 OliveTin을 사용하면 가족이 방해 없이 간단한 유지 관리를 쉽게 수행할 수 있습니다.

가정에 도움이 될 Raspberry Pi에서 실행할 수 있는 수천 개의 자체 호스팅 프로젝트가 있습니다. 약간의 조사를 수행하고 대신 호스팅할 수 있는 비용을 지불하는 서비스를 찾으십시오!