구글 클라우드 플랫폼의 VM을 이용해서 마인크래프트 서버를 여는 방법 가이드입니다. (물론 다른 용도의 서버로 쓸 수도 있습니다.)
- 구글 계정 (구글 클라우드 플랫폼 체험판을 사용하지 않은 계정)
- 체크카드 or 신용카드 (구글 클라우드 플랫폼 체험판을 사용하지 않은 카드)
- 300$에 해당되는 무료 크레딧을 90일 간 사용 가능
- 원하는 사양의 서버 사용 가능
- 24시간 사용 가능
- 세팅이 더럽게 어렵습니다. 진짜로요
- 컴퓨터나 서버 관련 기본 상식이 없으면 어려울 수도 있음
- 관리가 힘들다
- 크레딧 다 쓴 경우 추가 결제 주의!!
단계를 잘 따라하며 계정 정보를 채워넣습니다.
모든 단계 완료 후, 계정과 프로젝트가 생성되고 위와 같은 창이 뜹니다. 이것도 다 해주시면 됩니다.
가입 완료 후, 왼쪽의 메뉴에서 Compute Engine > VM 인스턴스를 클릭합니다.
사용을 눌러줍니다. 로딩이 매우 깁니다...
인스턴스 만들기를 눌러줍니다.
서버 설정
- 이름: 원하는 서버의 이름을 입력합니다. (영어만)
- 리전: 서버가 생성되는 지역입니다. 자신이 사는 곳에서 가장 가까운 곳으로 설정하세요.
- 영역: 건드릴 필요 없습니다. 별 차이가 없습니다.
머신 구성
- 시리즈: E2 추천합니다. N2는 두 배가량 비싸집니다.
- 머신 유형:
- 20명 이하의 일반 서버 - e2-medium
- 모드가 많은 모드 서버 - e2-standard-2
부팅 디스크
변경을 누릅니다.
위의 사진과 똑같이 세팅하시면 됩니다. 혹시 맵이나 모드 파일이 엄청나게 크다면 디스크 크기를 늘리셔도 됩니다.
월별 예상 가격
사진을 보면 월에 $32.68달러가 나가고, 기본적으로 주는 무료 크레딧은 $300달러이니, 3개월동안은 충분히 쓸 수 있습니다. (위에 $351,128.00는 35만원이 달러로 잘못 표기된 것 입니다)
추가적으로 확인해야 할 것
다 확인하셨다면, 만들기를 눌러 VM을 생성해줍니다.
생성이 완료되면, 이렇게 초록색 체크표시가 뜹니다. 이름을 클릭해서 세부정보로 들어갑시다.
스크롤을 내려서 네트워크 인터페이스를 찾아줍시다. 찾고는 이름 밑에 nic0을 눌러줍니다.
왼쪽 메뉴에서 방화벽을 누르고 방화벽 규칙 만들기를 눌러줍니다.
위와 같이 세팅하고 트래픽 방향 수신, 송신으로 규칙을 두 개 만들어줍니다.
다 만들었으면 뒤로 가서 다시 세부 정보 페이지로 돌아갑시다.
앞으로 우분투라는 운영 체제를 사용해서 셋팅할 겁니다. 기본을 알고 계신다면 더 편하겠죠??
세부정보에 들어갔으면, SSH라고 쓰여져있는 버튼을 클릭합니다. 연결하겠냐고 물어보면 연결을 눌러줍니다. 앞으로 이 창을 콘솔 창이라고 부르겠습니다.
자바 설치하기:
wget https://gist.githubusercontent.com/Bananamilk452/84d738034009b2c9a001f612b1ec7b2b/raw/c82fd3bfb072dd9c239a26984b7f3db7c3189b98/script.sh
chmod +x script.sh
./script.sh
위 명령어를 붙혀넣고 엔터를 누르면 알아서 설치를 진행합니다.
다음은 Paper 사이트에서 서버 파일을 다운받겠습니다.
원하는 서버 버전이 최신 버전일 경우 이 사이트에서 Build 밑에 있는 파란 버튼을 우클릭하고 링크 주소 복사.
원하는 서버 버전이 최신 버전일 아닐 경우 이 사이트에서 원하는 버전에 있는 DOWNLOAD ANYWAY을 우클릭하고 링크 주소 복사.
아래와 같이 되도록 콘솔 창에 입력하고 엔터를 눌러주세요. (그냥 wget 치고 한칸 띄우고 컨트롤 + V 누르시면 됩니다.)
wget 복사한 링크 주소
서버 IP 알아내기:
curl https://ipinfo.io/ip
입력하면 서버 IP가 나옵니다.
일단 서버의 램 크기는 서버의 램 크기 - 1기가해서 램 크기를 잡으시면 됩니다.
서버 실행 명령어는 아래와 같습니다.
java -Xmx(서버 램 크기 - 1기가)G -jar paper(여기까지 치고 Tab키 눌러주세요)
Tab키는 자동완성 키 입니다. 총 정리해보면 저의 경우에는 서버가 4기가이니 이런 명령어가 나오게 됩니다.
java -Xmx3G -jar paper-1.12.2-1618.jar
아래와 같은 말이 뜬다면 서버가 열린 것입니다.
Done (서버 열리는 데 걸린 시간)! For help, type "help" or "?"
이제 즐기면 됩니다!
정상적인 작동입니다. 하지만 우리는 24시간 서버를 원하니까 창 안 닫고도 계속 작동하게 해볼까요?
명령어를 백그라운드에서 작동하게하는 명령어 (세션 열기):
screen -dmS minecraft 서버 여는 명령어
예시:
screen -dmS minecraft java -Xmx3G -jar paper-1.12.2-1618.jar
명령어를 치고싶어요!
세션에 연결하기:
screen -rd minecraft
세션에서 나오려면 컨트롤이랑 A, D를 같이 누르시면 됩니다.
- op (이름): 관리자 권한 부여
- deop (이름): 관리자 권한 해제
- save-all: 서버 세이브
- stop: 세이브 후 서버 종료
일단 재부팅하고 다시 시도해보세요. 그래도 안돼시면 콘솔 창에 마지막으로 뜬 에러를 댓글로 남겨주시면 알려드리겠습니다.
맵이 개떡같이 나왔어요. 다시 생성할래요:
서버 종료 후에 밑의 명령어를 실행해주세요
rm -rf world*
다시 실행하면 월드를 재생성합니다.
- 서버와 컴퓨터 간의 파일 이동: 파일질라
- screen 사용법: screen 사용법
자바 다운받았더니
Waiting for cache lock: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 2446 (apt)... 4s
이렇게 떠요