Nukkit은 Java로 구동되는 마인크래프트 서버입니다. 사촌이 마인크래프트 PE 시작한다길래 시놀로지 나스에 서버를 설치해봤습니다. 삽질하신 많은 분들의 블로그를 참고하여 저는 단 이틀만 삽질해서 성공했습니다.
처음에는 정은성님 블로그를 보고 따라하다가 막혀서, 그분 블로그를 보고 따라하다가 막혀서 중간에 살짝 다른방법으로 우회한 분의 블로그를 보고 따라하다가… 결국 잘 안되서 어쩌다보니 다른 방법으로 직접 성공했습니다. 정말 많은 시행착오가…
1. 설치할 패키지
Docker
JAVA8
도커로 설치할거니까 도커받고… Java로 구동되는거니까 Java도 받았습니다.
2. 마인크래프트 세이브 파일이 저장될 폴더 만들기
이 폴더를 만들고 나중에 도커와 연결시켜줘야 서버를 껐다킬때 맵도 안날아갑니다.
원하는 경로에 원하는 이름으로 만드시면 되는데 저는 /volume1/docker경로에 mcpe라는 이름으로 만들었습니다.
3. 만든 폴더의 권한 설정하기
SSH로 루트권한으로 접속하여 아래와 같은 코드를 넣어 권한설정해주면 됩니다.
/volume1/docker/mcpe 부분은 본인이 만든 폴더의 경로를 넣어주세요.
chmod -R 775 만든폴더경로
chown -R NAS아이디:administrators 만든폴더경로
SSH로 접속하는 법과 루트권한 획득하는법 모르겠으면 아래 포스팅 참고하세요.
시놀로지 나스 SSH로 접속하기.
https://chelly.kr/wp-content/uploads/sites/3/mcpe2.png
4. 도커로 nukkit 서버 설치하기
준비되셨으면 도커로 nukkit 서버를 설치해봅시다.
hub.docker.com에 nukkit을 검색하니 ixilon 님이 만든게 제일 위에 뜨는군요. 전 이걸로 설치했습니다.
위 이미지에 제가 하이라이트한 부분을 보시면 일단 첫번째 줄은 해당이미지를 설치하고 컨테이너를 실행하는 커맨드고, 두번째 줄은 마인크래프트 세이브파일이 저장되는 경로입니다. 일단 설치부터 해볼게요. 위 단계에서 켰던 putty를 끄지 마시구… 첫 번째 줄의 커맨드를 입력해줍니다.
docker run -it -p 19132:19132/udp ixilon/nukkit
run = 컨테이너를 새로 만드는 명령어
-it = 컨테이너 터미널로 들어가는 명령어
-p 19132:19132/udp = 도커밖 19132 udp포트를 도커안 19132 udp 포트로 포워딩하는 명령어
쨘~ 정상적으로 서버가 실행되고 언어를 선택하라고 합니다. 하지만 아직 할게 많이 남았어요.
5. 컨테이너 세이브파일 폴더 마운트하기
시놀로지 웹화면으로 돌아가서 docker패키지를 켜줍시다. 거기서 비디오형식(컨테이너) 탭에 들어가보시면 랜덤으로 생성된 컨테이너 이름이 하나 보입니다. 전 romantic_booth라는 이름으로 생겼네요.
스위치처럼 생긴 버튼을 눌러 컨테이너를 끄고 컨테이너를 선택한 뒤 편집을 눌러줍시다.
자동 재시작 활성화는 체크해주는게 좋겠죠? 저는 컨테이너 이름도 mcpe로 변경하겠습니다.
전 단계에서 봤던 두번째 하이라이트 했던 부분을 보시면.. /srv/nukkit 이라는 경로가 보입니다. 이걸 2단계에서 만든 폴더에 연결해줘야 서버를 껐다 켜도 데이터가 남아있습니다.
볼륨 탭에 들어가서 폴더 추가를 누르고 2단계에서 만드신 폴더를 선택하고 오른쪽 칸에 /srv/nukkit 을 넣어줍시다.
확인을 누르고 컨테이너를 다시 켭니다.
컨테이너를 선택하고 세부사항을 클릭한 뒤 로그 탭으로 이동하면 로그를 볼 수 있습니다. 저랑 똑같이하셨다면 아래와 같은 로그가 보일텐데 이 시점에서는 아직 언어를 선택하지 않아 마크서버가 시작이 안되었을겁니다. 실행중인 컨테이너에 들어가봅시다.
ssh에 루트권한으로 접속하여 다음 코드를 칩니다.
docker attach mcpe
mcpe는 제가 아까 설정한 컨테이너 이름입니다. 본인의 컨테이너 명을 대신 넣으세요.
attach는 실행중인 컨테이너로 들어가는 명령어입니다.
한국어는 kor 이었죠. 들어가면 kor 을 칩니다.
여기서 help를 누르시면 사용가능한 커맨드를 보실 수 있습니다. 커맨드에 대해서는 직접 보고 필요하신거 쓰시면 될 거 같습니다.
6. 플러그인 설치하기
제가 뭐 nukkit 플러그인에 별로 관심이 없어서 플러그인별 설치방법까지는 모르지만 테스트삼아 EssentialsNK 플러그인을 설치해보겠습니다.
우선 아래 링크에서 EssentialsNK 플러그인을 다운받아줍시다.
https://nukkitx.com/resources/essentialsnk.15/
다운받은 파일을 초반에 만든 폴더에 생성된 Plugins 폴더 안에다가 넣어줍시다.
그리고 컨테이너를 껐다가 킵니다. ssh로 접속하여 docker restart mcpe (mcpe는 제가 설정한 컨테이너 이름) 를 입력하여 재시작 시킬수도 있고 그냥 시놀로지의 도커 패키지화면에서 비디오 형식탭에서 스위치모양 버튼을 눌러서 껐다가 켜도 됩니다.
그리고 터미널에서 docker attach mcpe를 입력하여 해당 컨테이너에 드간뒤, help를 눌러봅니다.
EssentialsNK는 사용할 수 있는 커맨드를 추가해주는 플러그인인데 확실히 커맨드가 훨씬 많아진게 보입니다.
이렇게 플러그인 적용도 완료해봤습니다.
7. 포트포워딩하기
외부접속하려면 포트포워딩도 하셔야합니다.
집 공유기 관리화면으로 접속하여 19132 udp 외부포트를 19132 udp 내부포트랑 연결해주시면 됩니다.
공유기별 포트포워딩 하는법이 다 다른데 개념만 알고있으면 하나씩 메뉴 드가다 보면 나옵니다. 하랑님이 쓴 공유기 포트포워딩하는법 공유합니다.
공유기 포트포워딩 하는 법
8. 마인크래프트 PE에서 접속하기
마인크래프트 PE 를 샀다고 가정하고 설명드리겠습니다. 제가 해보니까 우선 xbox 계정이 필요한데 이미 가지고 있는 마이크로소프트 계정으로 안되더군요… 그래서 검색해보고 새로 계정 만들었습니다.
아래 주소로 접속해서 로그인
https://www.xbox.com/ko-KR/
계정을 만드세요
새 전자메일 주소받기
원하는 메일주소 입력
원하는암호입력
동의하고계정만들기
성,이름입력
국가:미국, 생년월일:1990년 이전에 태어난걸로 아무거나
스팸방지문자입력
동의함
이렇게 만든 계정으로 접속하시면 됩니다. 만19세 이상은 그냥 한국계정 쓰고 아이핀인증하면 된다고 했는데 이상하게 저는 안되네요.
계정 로그인하고 폰으로 마크를 켜서 서버탭으로 갑니다.
맨위에 서버추가가 있습니다.
서버이름:아무거나
서버주소:나스의 외부아이피나 만약 공유기나 나스에 DDNS설정되어 있다면 ddns명을 넣어도 좋습니다. 외부아이피 모르겠으면 네이버가서 내아이피라고 치면 바로 뜹니다.
포트:19132
저장
이제 서버탭 맨아래에 추가된 서버를 눌러 들어갈 수 있습니다.
9. 접속하면 서버가 꺼지는 경우 해결방법
저 같은 경우는 자바 세큐리티쪽에 문제가 있어서 그랬던 건데 다른 이유로 서버가 다운되는 분들은 참고 안되실듯. 해결법은 여기에서 찾았습니다.
일단 ssh로 나스에 접속하고 루트권한을 획득한 후 아래 커맨드를 입력합니다.
vi /volume1/@appstore/Java8/j2sdk-image/jre/lib/security/java.security
경로찾느라 힘들었습니다..
※추후 자바 패키지또는 dsm 업그레이드시 경로가 바뀔 수도 있습니다.
그리고 키보드 ↓키를 눌러 내려가다보면 다음과 같은게 보일겁니다.
아마 security.provider.9 까지 있으실텐데, 10을 추가해줍시다. 9밑에 그림과 같이 입력해줍시다.
security.provider.10=sun.security.ec.SunEC
그리고 :wq를 입력하여 빠져나갑니다.
:wq는 저장하고 종료하는 명령어입니다.
여기까지하면 정상적으로 접속될겁니다.
잘설치해서 구동까지되는데 어째서인지 모든 몹스폰이 안됩니다 서바모드에 보통난이도에 서버명령어까지전부해봐도 안되네요…
저도 초보라서 잘 모르지만 익스텐션같은걸로 해결해보시는게 어떨까요?
https://nukkitx.com/resources/mobplugin.3/
이거 사용하시면 됩니다
도커 안쓰고는 안되나요…
해볼수는 있져. 저는 근데 도커가 관리하기 편한거 같아서 도커로 했습니다. 잘못되면 지우기도 쉽고.
설명해주시는데로 잘 설치해서 제대로 작동하는것까지 확인했습니다.
추가로 질문 하나 더 부탁드리겠습니다.
우리집 아이들이 pixelmon을 좋아하는데 nukkit 로 구동된 서버에은 pixelmon을 어떻게 설치 할수 있나요?
mods 폴더에 pixelmon 파일을 올려도 아무런 변화가 없더군요,,,
제가 플러그인에 대해 잘 몰라서 거기까지는 ㅠ
pixelmon 는 자바버전 즉, PC버전 마인크래프트에 모드중 하나입니다
그래서 지금 Chelly님의 PE버전 서버로는 열수가 없습니다
만약 컴퓨터 마인크래프트가 되신다면 minecraft forge server 라는걸 이용하셔야 해요
어떻게 까나요?
마인크래프트 하겠습니다 서버 드러가게 해주세요
u\][]-06r07-p
704-7-=0-6]3-p7=-[[p]uj[p;yp54o7pop6o
etr54
\ro329829850[3259
5095899po4i5op9q340
0=59i095
to35985i09349q9040p-940
이거 사진활용해도될까요도토리
네 활용하셔도 됩니다.
이 블로그에있는사진 활용하겠습니다
덕분에 잘 설치 했습니다.
그런데 버젼 업데이트는 어떻게 해야 할까요? ^^;;
여기 저기 찾아보는데 잘 안 나오네요^^