학습

Acurast를 알아보세요. 우리의 이야기를 읽고, 기술 문서를 확인하고, 에코시스템 파트너를 만나보세요.

A blocky Minecraft-style world projected above a smartphone held in two hands, illustrating a Minecraft server running on a phone through Acurast Cargo.

클라우드 제공업체 없이 Minecraft 서버 운영하기

 

두 손에 든 스마트폰 위로 블록으로 된 Minecraft 스타일의 세계가 떠 있는 모습으로, Acurast Cargo를 통해 휴대폰에서 실행되는 Minecraft 서버를 표현한 이미지.

Minecraft 서버를 설정하는 것은 쉽습니다. 문제는 서버를 계속 온라인 상태로 유지하는 것입니다.

 

친구들이 접속할 수 있는 월드를 원한다면 서버를 실행할 곳이 필요합니다. 전통적으로는 내 컴퓨터에서 직접 호스팅하거나, VPS를 빌리거나, 전용 Minecraft 호스팅 서비스에 비용을 지불하는 방법이 있습니다.

 

하지만 Minecraft 서버도 결국은 컴퓨팅, 네트워킹, 그리고 충분한 실행 시간이 필요한 소프트웨어일 뿐입니다. 즉, 위에서 설명한 전통적인 방법 외에도 직접 호스팅할 수 있는 방법이 더 있다는 뜻입니다.

 

이 가이드에서는 Acurast 네트워크에 연결된 휴대폰(프로세서)에 Minecraft 서버를 배포합니다. 이를 위해 Acurast의 Linux 기반 런타임인 개발자 기능 ‘Cargo‘를 사용합니다. 배포를 구성하고, 서버를 실행하고, 로컬 네트워크에 노출한 다음, Minecraft에서 서버에 직접 접속해 보겠습니다.

 

이 가이드를 마치면 Acurast 프로세서에서 실행되는, 플레이 가능한 Minecraft 월드를 갖게 됩니다.

 

Minecraft도 컴퓨팅 워크로드입니다

 

탈중앙화 컴퓨팅이라고 하면 Minecraft가 가장 먼저 떠오르는 애플리케이션은 아닐 것입니다. 바로 그 점이 Minecraft를 흥미로운 예시로 만듭니다.

 

Minecraft 서버는 다른 애플리케이션과 같은 요구 사항을 많이 가지고 있습니다. 런타임, 네트워크 연결, 지속적인 실행, 그리고 사용자에게 서비스를 제공할 만큼의 컴퓨팅 자원이 필요합니다. 전통적으로 이러한 요구 사항은 개발자를 클라우드 인프라로 이끌었습니다.

 

하지만 꼭 그래야 하는 것은 아닙니다.

 

Acurast는 애플리케이션이 기존 클라우드 서버에만 의존하지 않고 분산된 컴퓨팅 자원에서 실행될 수 있는 글로벌 탈중앙화 프로세서 네트워크를 제공합니다.

 

이는 Codename Cargo로 한층 더 강력해집니다. Cargo는 Node.js 중심의 런타임에서 완전한 Linux 기반 컨테이너로 나아가는 Acurast의 전환입니다.

 

Cargo를 사용하면 개발자는 Python, Go, Rust, C++ 등 Linux에서 작동하는 기술로 만든 소프트웨어를 실행할 수 있습니다. 또한 이전 환경에서는 실행하기 어려웠던 애플리케이션도 배포할 수 있습니다.

 

Minecraft도 그중 하나입니다.

 

따라서 Minecraft 예제는 게임 서버를 실행해 보는 실험 그 이상입니다. 탈중앙화 프로세서가 범용 Linux 워크로드를 실행할 수 있을 때 무엇이 가능해지는지 간단하게 보여 주는 방법입니다.

 

Acurast에 Minecraft 배포하기

 

Acurast는 필요한 설정 대부분이 이미 구성된 Minecraft 예제 애플리케이션을 제공합니다. 따라서 배포를 구성하고 실행하는 데 집중하면 됩니다.

 

1단계: Minecraft 예제 앱 열기

 

먼저 Acurast Example Apps 저장소를 체크아웃하고 App Cargo Minecraft 폴더로 이동하세요.

 

이 프로젝트에는 Minecraft 서버를 준비하고, 서버에 접속할 수 있게 해 주는 터널을 만드는 데 필요한 스크립트와 구성이 들어 있습니다.

 

대부분은 변경할 필요가 없습니다.

 

예제에는 기본 설정을 처리하는 구성이 이미 되어 있으므로, 주로 제공해야 할 것은 배포 구성입니다.

 

2단계: 배포 구성하기

 

환경 구성을 열고 필요한 값을 입력하세요.

 

첫 번째는 Acurast 니모닉입니다. 니모닉은 배포를 승인하고, 관련 네트워크 수수료를 지불하는 데 사용됩니다.

 

다음으로 SSH 비밀번호를 설정하세요.

 

Minecraft 배포는 자동화되어 있으므로 일반적으로는 프로세서에 SSH로 접속할 필요가 없습니다. 그래도 접근 권한을 설정해 두면 예상대로 작동하지 않을 때 프로세서의 문제를 해결할 수 있으므로 유용합니다.

 

또한 콜백 URL도 필요합니다.

 

Acurast는 배포가 사용 가능해지면 이 엔드포인트로 정보를 반환합니다. 간단한 테스트라면 웹훅 서비스를 이용해 생성된 배포 정보를 받는 엔드포인트를 만들 수 있습니다.

 

배포는 메인넷으로 구성된 상태 그대로 두어도 됩니다.

 

예제 애플리케이션의 현재 버전에 따라 도메인 접미사 옵션이 보일 수도 있습니다. 이는 배포를 외부에 노출하는 과정의 일부로 사용됩니다. Acurast는 이 과정을 더 자동화하기 위해 작업 중이므로, Cargo가 발전함에 따라 이 구성은 바뀔 수 있습니다.

 

3단계: acurast.json 검토하기

 

배포하기 전에 acurast.json 구성을 간단히 살펴보는 것이 좋습니다.이 파일은 워크로드를 얼마나 오래 활성 상태로 유지할지 등 추가 배포 파라미터를 제어합니다. 예를 들어 간단한 테스트라면 Minecraft 서버를 4시간 동안 실행하도록 구성할 수 있습니다.

 

더 긴 게임 세션이나 친구들이 정기적으로 접속할 서버라면 그에 맞게 배포 기간을 조정하세요. 또한 이전 프로세서 환경에는 Minecraft 예제에 필요한 기능이 모두 포함되어 있지 않을 수 있으므로, 배포가 필요한 Android 버전을 대상으로 하는지도 확인해야 합니다.

 

이제 배포할 준비가 되었습니다.

 

Minecraft 서버 실행하기

 

프로젝트 디렉터리에서 다음을 실행하세요.

 

acurast deploy

 

나머지 배포 과정은 Acurast CLI가 안내합니다.

 

배포를 확정하기 전에 배포 파라미터와 관련 수수료가 표시됩니다. 필요하면 제출하기 전에 수수료를 조정할 수 있습니다.

 

확정하면 Acurast가 워크로드를 실행할 프로세서를 찾아 준비하기 시작합니다.

 

여기서부터는 대부분의 작업이 자동으로 진행됩니다. 프로세서가 환경을 준비하고, 필요한 구성 요소를 설치하고, Minecraft 서버를 다운로드해 시작한 뒤, 배포에 접속하는 데 쓰이는 터널을 연결합니다. 몇 분 뒤면 서버가 준비될 것입니다.

 

모든 것이 실행 중인지 확인하기

 

배포 로그를 보면 프로세서에서 무슨 일이 일어나고 있는지 확인할 수 있습니다.

 

배포가 시작되면 여러 구성 요소가 설치되고 초기화되는 모습을 볼 수 있습니다.

 

그러다 보면 로그에 Minecraft 서버가 시작되었고 터널이 연결되었다는 내용이 표시됩니다. 로그에는 다음 단계에 필요한 접속 정보도 나옵니다.

 

이제 Minecraft가 Acurast 프로세서에서 원격으로 실행되고 있습니다.

 

남은 일은 클라이언트에서 접속할 수 있게 만드는 것뿐입니다.

 

Minecraft를 서버에 연결하기

 

네트워크 설정이 한 단계 더 필요합니다. Minecraft 클라이언트가 포트와 인증서를 처리하는 방식 때문에, 이 예제에서는 원격 Minecraft 서버를 로컬 네트워크에 노출하는 명령을 사용합니다.

 

배포에서 제공하는 명령을 실행하세요.

 

앞에서 설정한 SSH 비밀번호를 입력하라는 메시지가 나타납니다. 인증이 완료되면 연결이 설정되고 Minecraft 서버를 로컬에서 사용할 수 있게 됩니다.

 

이제 Minecraft를 여세요.

 

서버 추가를 선택하고 배포에서 제공한 서버 정보를 입력하세요.

 

서버를 저장하세요.

 

모든 것이 올바르게 구성되었다면 Minecraft가 곧바로 서버 정보를 불러오기 시작합니다.

 

접속을 클릭하세요.

 

이제 Acurast 프로세서에서 실행되는 Minecraft 월드에서 플레이하고 있습니다.

 

친구 초대하기

 

서버가 실행되면 같은 설정으로 멀티플레이 환경을 만들 수 있습니다. 월드를 내 컴퓨터에 두는 대신, 게임 서버가 Acurast 배포 기간 동안 원격으로 실행됩니다.

 

알맞은 접속 정보를 친구들에게 공유하면 친구들도 같은 월드에 접속할 수 있습니다.

 

실제로 염두에 둘 점이 하나 있습니다. 위치가 중요합니다. 게임 서버는 지연 시간에 민감합니다. 서유럽에 있는데 Minecraft 서버를 호스팅하는 프로세서가 훨씬 먼 곳에 있다면 약간의 랙이 느껴질 수 있습니다. 일반적으로 플레이어와 가까운 곳에 있는 프로세서가 더 나은 경험을 제공합니다. 많은 애플리케이션에서는 몇 밀리초 차이를 거의 느끼지 못할 수도 있습니다.

 

하지만 크리퍼에게서 도망칠 때는 그 차이가 훨씬 중요해집니다.

 

Minecraft 서버 그 이상

 

Minecraft를 배포하는 것도 재미있지만, 더 흥미로운 것은 이 예제가 보여 주는 의미입니다.

 

Minecraft 서버는 특별히 설계된 블록체인 애플리케이션이 아닙니다. 제약이 있는 탈중앙화 런타임을 위해 따로 작성한 작은 JavaScript 함수도 아닙니다. Linux 환경과 컴퓨팅 자원이 필요한 기존 애플리케이션입니다.

 

그리고 Acurast에서 실행할 수 있습니다.

 

이것이 Cargo가 가져온 더 큰 변화입니다.

 

Linux 기반 컨테이너 워크로드로 나아가면서 개발자가 Acurast 네트워크에 배포할 수 있는 범위가 넓어졌습니다. 게임 서버는 하나의 예일 뿐이며, 같은 모델로 오브젝트 스토리지, 백엔드 서비스, API, 개발자 도구, 자동화 플랫폼, AI 에이전트를 비롯해 전통적으로 중앙화된 인프라에서 호스팅되던 다른 애플리케이션도 실행할 수 있습니다.

 

질문은 이제 이것이 아니라:

 

“탈중앙화 컴퓨팅을 위해 특별히 무엇을 만들 수 있을까?”

 

이것이 됩니다:

 

“탈중앙화 컴퓨팅에서 어떤 소프트웨어를 실행할 수 있을까?”

 

Minecraft는 이 질문에 놀라울 만큼 좋은 답을 줍니다.

 

생각보다 훨씬 많다는 것입니다.

 

전체 영상 튜토리얼 보기

 

이 가이드는 핵심 배포 과정을 다루며, 함께 제공되는 영상에서는 전체 설정 과정을 화면으로 보여 줍니다.

 

Minecraft 예제 애플리케이션을 구성하고, Acurast CLI로 배포하고, 프로세서 로그를 확인하고, 로컬 연결을 설정한 뒤, 만들어진 Minecraft 월드에 접속하는 과정을 볼 수 있습니다.

 

영상을 따라 하며 Acurast에 나만의 Minecraft 서버를 배포해 보세요.

 

그리고 친구 몇 명을 초대해 보세요.