Giter Club home page Giter Club logo

amethy-terminal's Introduction

아메시 터미널

Work In Progress (87%)

TODO

  • 콘솔 패널 탭컴플리터 구현
  • 파일 탐색기 업로드, 다운로드 안정화
  • 플러그인 웹소켓 안정화

마인크래프트 서버를 위한 웹 기반 원격 터미널.


아메시 터미널로 가능한 일...

서버 메모리, 프로세서 상태 확인, 접속 플레이어, 월드 확인
웹 기반의 원격 서버 콘솔 사용
간단한 파일 탐색기 & 텍스트 편집기
플레이어 추적 & 플레이어 상태 모니터링
월드 설정 관리 & 월드 상태 모니터링


이 아메시 터미널 노드 플러그인은 스피곳 기반의 서버에서 동작합니다. 스피곳, 페이퍼 등의 서버 프로그램과 호환됩니다. 다른 서버 프로그램을 위한 아메시 터미널이 필요한 경우 아래의 링크를 확인해보세요.

아메시 터미널은 1.14.* - 1.20.* 버전의 마인크래프트 서버와 호환됩니다.
아메시 터미널 플러그인을 사용하려면 자바 버전 11 이상의 환경에서 서버를 실행해야 합니다.

설치와 기본 설정

  1. 아래의 링크 혹은 아메시 홈페이지 에서 플러그인의 최신 버전을 다운로드합니다.
    Amethy-Terminal-Bukkit.jar (클릭하여 다운로드)

  2. Amethy-Terminal-Bukkit.jar 파일을 마인크래프트 서버의 plugins 디렉터리에 넣습니다.

  3. 서버를 재시작, 리로드하거나 Plugman 등의 플러그인을 이용해 아메시 터미널 플러그인을 로드합니다.

  4. 서버 콘솔에 aterm grant <와니네 계정 ID> 명령어를 입력하여 서버 접근 권한을 부여합니다.

  5. 아메시 터미널 웹 사이트를 방문하여 웹 터미널을 사용합니다.

웹 터미널 사용

들어가기

아메시 터미널 웹 사이트에서 계정의 터미널 노드 혹은 멤버로 추가된 터미널 노드의 목록을 확인할 수 있습니다.

대시보드 패널

서버의 기본적인 정보를 보여줍니다. 터미널에 멤버를 추가한 경우 기본적으로 볼 수 있습니다.

콘솔 패널

서버 콘솔을 보고 사용할 수 있습니다. 특정 로그들은 상단의 로그 필터를 사용하여 원하는 로그 종류들만 볼 수 있습니다.

파일 탐색기 패널

서버 내 파일들을 보여주는 간단한 파일 탐색기입니다. 알려진 파일 확장자들의 경우 웹에서 바로 편집하거나 확인할 수 있습니다. 파일 업로드 / 다운로드 기능이 존재하지만 FTP 를 사용하는 것을 추천합니다.

플레이어 패널

현재 서버에 접속한 온라인 플레이어들을 보여줍니다. 좌측 플레이어 목록에서 플레이어를 선택하면 플레이어의 자세한 정보를 볼 수 있습니다.

월드 패널

현재 서버에 로드된 월드들을 보여줍니다. 좌측 월드 목록에서 월드를 선택하면 월드의 자세한 정보를 볼 수 있습니다. 월드를 선택한 후 우측 패널에서 월드 설정을 바로 변경할 수 있습니다.

설정 패널

서버 이름을 변경하거나. 처미널에 멤버를 추가 / 변경 / 제거할 수 있습니다. 터미널 노드가 더 이상 불필요하거나 다른 와니네 계정으로 이전이 필요한 경우 이 패널에서 터미널 노드를 제거할 수 있습니다.

서버 멤버 추가

최초에 aterm grant <와니네 계정 ID> 명령어를 사용하여 권한이 부여된 계정은 터미널 노드의 마스터 계정으로 지정됩니다. 다른 계정의 터미널 접근이 필요한 경우 설정 패널에서 터미널 멤버를 추가할 수 있습니다. 터미널 맴버에게는 각 패널별 보기, 쓰기 권한을 따로 부여할 수 있습니다. 특정 패널의 쓰기 권한을 부여하기 위해서는 패널의 보기 권한이 필수적으로 부여되어야 합니다.

권한 설명 비고
대시보드 보기 대시보드 패널을 볼 수 있습니다. 멤버 추가 시 필수 권한
콘솔 보기 콘솔 패널을 볼 수 있습니다. 콘솔 로그를 보고 로그 필터를 사용할 수 있습니다.
콘솔 쓰기 콘솔 패널에서 콘솔 명령어를 사용할 수 있습니다.
파일 탐색기 보기 파일 탐색기 패널을 볼 수 있습니다. 파일 탐색기로 서버의 파일들을 확인하거나, 보기, 다운로드가 가능합니다.
파일 탐색기 쓰기 파일 탐색기에서 파일을 생성, 업로드하거나 편집 및 저장, 삭제할 수 있습니다.
플레이어 보기 플래이어 패널을 볼 수 있습니다. 플레이어를 선택해 세부 정보를 볼 수 있습니다.
월드 보기 월드 패널을 볼 수 있습니다. 월드를 선택해 세부 정보를 볼 수 있습니다.
월드 쓰기 선택된 월드의 설정을 변경할 수 있습니다.

웹 API 사용

콘솔 명령어

웹 API 를 사용하여 HTTP 요청으로 특정 서버 콘솔에서 명령어를 실행할 수 있습니다. API 사용을 위해서는 웹 터미널 콘솔 쓰기 권한이 있는 와니네 계정이 필요합니다.

URL (HTTP POST)

https://api.wany.io/amethy/terminal/nodes/<터미널 ID>/command

HEADER

"Authorization": "<와니네 계정 API 키>"

BODY

{
  "command": "say test command"
}

curl 예제

curl \
-d '{"command": "say test command"}' \
-H "Content-Type: application/json" \
-H "Authorization: <와니네 계정 API 키>" \
-X POST https://api.wany.io/amethy/terminal/nodes/<터미널 ID>/command

명령어

터미널 권한 부여

/aterm grant <와니네 계정 ID>

특정 와니네 계정에 터미널 노드에 대한 접근 권한을 부여합니다. 이 명령어는 콘솔에서만 사용할 수 있습니다. 한번 접근 권한을 부여한 터미널 노드는 웹 페이지에서 터미널 노드를 제거하거나 서버 디렉터리의 terminal.json 파일을 삭제하기 전에는 다른 와니네 계정에 접근 권한을 부여할 수 없습니다.

플러그인 버전 확인

/aterm version

플러그인 업데이트

/aterm update

플러그인 업데이터 설정 확인 및 변경

/aterm updater (channel|automation) [args...]

  • 현재 업데이터 채널 확인

    /aterm updater channel

  • 업데이터 채널을 release / dev 로 변경

    /aterm updater channel (release|dev)

  • 현재 자동 업데이트 활성화 여부 확인

    /aterm updater automation

  • 자동 업데이트 활성화 / 비활성화

    /aterm updater automation (enable|disable)

플러그인 리로드

/aterm reload

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.