반응형

 

안녕하세요 테크팀 입니다. 

유튜브 채널을 운영하면서 정말 많은 유저분들의 다양한 질문을 받고

답변해드리고 있습니다. 

그중 가장 많이 질문하고, 또 답변 드린 사항을 정리하여 안내드립니다.

본 포스팅은 주기적으로 업데이트 됩니다. 

Ver. 2024-05-26

 


Q : 스타듀밸리와 관련한 웹사이트에는 어떤 것들이 있나요 ?

 


Q : 스팀가드가 무엇인가요 ? 

  • 휴대폰을 사용한 스팀 OTP 입니다. 스팀가드링크를 통해 서비스를 신청할 수 있습니다.
  • 스타듀밸리 서버 구축을 위해서는 스팀가드 설정이 필수 입니다.

 


Q : 스타듀밸리 사설 서버 프로그램은 어떤 OS를 지원하나요 ?

  • 개발사에서 공식적으로 서버 구축을 할 수 있는 프로그램을 지원하지 않습니다. 
    하지만 아래와 같이 도커를 사용하여 서버 구축이 가능합니다.
  • 윈도우(도커데스크탑), 리눅스(도커컴포즈)

 


Q : 도커란 무엇있고 왜 사용하는 것인가요 ? 

  • 리눅스에 파운드리 서버를 구축하기 위해서는 별도의 에뮬레이팅 프로그램과 기타 복잡한 설정이 필요합니다.
  • 이러한 설치 과정을 누구나 쉽게 할 수 있도록 패키징화하여 이미지 형태로 제공하는 것을 도커기술이라고 부릅니다.
  • 도커를 이용하여 누구나 쉽게 패키징된 프로그램을 이용하여 프로그램을 설치, 관리할 수 있습니다.
  • 유튜버 얄팍한 코딩님의 동영상을 추천합니다.
  • https://youtu.be/tPjpcsgxgWc?si=P3kBnAoc55dQHy-x

 


Q : 테크팀 채널에서 가이드 하는 참고 할 만한 다른  FAQ가 있나요 ?

 


Q : 사설 서버 운영을 위한 스펙은 어떻게 되나요 ??

  • 공식적으로 밝히고 있는 스펙은 없습니다. 
  • 테크팀 자체적으로 테스트 해본 결과 아래와 같은 사양을 권고 드립니다. 
  • 4vCPU / 16GB Mem / 20GB Disk

 


Q : 멀티 쓰레드를 지원하나요 ? 

  • 스타듀밸리 공식적으로는 멀티 쓰레딩을 지원하지는 않습니다.
  • 다만 리눅스 형태로 에뮬레이팅 되는 과정에서, 에뮬 프로그램이 멀티쓰레딩을 지원하고 있습니다.
  • 따라서 8vCPU를 이용할 경우 4vCPU 대비 원활한 분산 처리를 지원합니다.  
  • 테스트 결과 16vCPU 이상도 원활히 지원하는 것을 확인 하였습니다. 

 


Q : 사용되는 방화벽 포트는 어떤 것들이 있나요 ? 

  • TCP : 5801 
  • UDP : 24642

 


Q : IPTime 외 다른 공유기를 사용중인데 포트포워딩 방법을 알려주세요 

 


Q : 서버 패치는 어떻게 진행하나요 ? 

  • 도커 프로세스를 껐다가 다시 켜주시면 자동으로 업데이트 됩니다. 

 


Q : 서버 세이브 파일의 위치는 어떻게 되나요 ? 

  • 윈도우 위치 
현재 확인중 
  • 리눅스 위치 
현재 확인중 

 


Q : VM  or 윈도우 서버 재부팅 후 도커는 어떻게 재 시작 하나요 ??

리눅스 OS
  • 도커 이미지 위치로 이동
cd ~/stardew-multiplayer-docker
  • Docker를 다시 실행하면 게임 엔진이 구동 됩니다. 
sudo docker-compose -f docker-compose-steam.yml up

 

윈도우 OS
  • 도커 프로그램 구동 
  • 도커 이미지 실행 

 


Q : 시스템 구성에 문제가 없는데 제 서버에 접속이 되지 않습니다.

  • 사용하시는 OS의 방화벽 개방 여부를 가장 먼저 확인하세요
  • 방화벽 설정이 정상이라면, 아주 높은 확율로 포트포워딩 이슈일 가능성이 높습니다.
  • 질문자 본인은 공유기가 하나라고 생각하지만 2중 공유기 운영일 가능성이 높습니다 
  • 근처 컴퓨터 수리점을 방문하시거나, 테크팀 공식 디스코드 채널로 오셔서 유료 원격 기술지원을 받으실 수도 있습니다.

 


Q : 리눅스 클라우드에 구축한 서버에, 어떻게 파일을  업로드 / 다운로드 하나요 ?

 


Q : 구글 클라우드를 이용하여 게임을 잘하고 있다가 갑자기  프로세스가 종료 됩니다

  • 서버 스펙이 부족하여 서버가 꺼지는 경우가 많습니다. 특별히 메모리 이슈로 인한 꺼짐현상이 가장 많습니다.
  • 서버 스펙을 더 올리셔야 합니다. (아래 영상을 참조하여 스펙을 키우세요)
  • https://youtu.be/0QTA7qMoaic?si=TyixAUhZ1kIfk0b6

 


Q : 제 개인 컴퓨터를 끄면 서버도 꺼지나요 ??

  • 리눅스 + 클라우드를 이용하여 구축하셨다면, 개인PC를 뜬다고해도 서버는 24시간 동작합니다.
  • 여러분들의 PC위에 서버를 윈도우 형태로 구축하셨다면, PC를 끄게되면 당연히 서버도 꺼집니다.
  • 윈도우 서버 구축 영상 시리즈 기준, 지속적인 서비스를 위해서는 여러분들의 PC를 24시간 돌려야 합니다.
  • 전기료는 600W 파워 기준으로, 대략 산술적으로 계산했을때 5~12만원 사이정도 나옵니다. (누진세 별도)
  • 24시간 돌리고 싶다면 클라우드, 혹은 호스팅을 고려해보세요

 


Q: 구글 클라우드 SSH 접속 인증에 실패했다고 뜨면서 접속이 되지 않습니다.

  • 구글 클라우드가 가지고 있는 약간의 고질병(?) 입니다.
  • 모든 전자제품, 자동차제품에 모델마다 특유의 고질병이 있는 것처럼, 구글 또한 이런 부분이 존재 합니다.
  • 접속이 될때까지 재시도 하시거나, PC를 리부팅해서 캐쉬를 지우고 다시 시도해보세요
  • 또는 디스크 용량이 꽉찰경우 SSH 기능이 작동 되지 않을 수 있습니다. 아래 링크를 참조해서 디스크 용량도 증설 고려해 볼 수 있습니다.


Q: 서버구축을 위한 스타뷰벨리 스팀 계정을 별도로 만들어야 하나요 ? 

  • 기존 게임을 즐기던 계정 1개로 서버 구축 + 게임플레이가 가능합니다
  • 서버를 위한 별도 계정은 필요치 않습니다 

 

 

반응형
반응형

시놀로지 나스 + 도커 컴포즈를 활용한 서버 구축하기

 

시작하며

서문 
  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견시 아래 주소로 제보 부탁 드립니다.
  • 공식 유튜브채널 [ https://www.youtube.com/@kortechtim ]
  • 공식 디스코드 [ https://discord.gg/ZQ6DzC58rZ ] 
참고자료 (URL)
서버 요구사항 
  • 테스트 결과 CPU 4 Threads, Mem 16GB는 있어야 원활히 동작합니다. 
  • 테스트 결과 멀티 쓰레드를 원활히 지원합니다 (8Core-16Threads 원활히 지원)
방화벽 포트 
  • UDP 24642  :  스타듀벨리 기본 포트 
  • TCP 5801 : 도커 이미지에서 원격 관리용으로 사용하는 포트 

 


유튜브 공식 강의 영상

 


사전 작업

아래와 같은 사전 작업이 완료 되어 있어야 합니다.
Steam 회원 가입 및 SteamGuard 등록

스팀가드 가입이 필수 입니다.

 


스탭1 : 포트포워딩 

공유기 접근 
  • 포트포워딩 메뉴로 진입 : IP타임 기준 'NAT/라우터 관리' → '포트포워드 설정'

TCP5801, UDP24642 번을 포트포워딩 진행함

 

"혹시 다른 공유기 브랜드를 사용하시나요 ?? "
"아래 영상 링크를 참조하세요"

 

IP Time 이외 포트포워딩은 ?  (아래 링크 참조)

 


스탭2 : Container Manager 설치 

만약 설치 되어 있다면 다음 스탭으로 건너 뛰세요 

패키지 센터 → 'container' 검색 → '설치' 클릭
컨테이너 메니져 설치중
설치 완료 확인

 


스탭3 : 설치 폴더 만들기

파일 스테이션에서 Stardew Valley 도커 이미지 설치를 위한 폴더를 만듭니다.

파일 스테이션 도커 디렉토리 → 'stardewvalley' 폴더를 새로 생성함
폴더 생성 확인

 

도커 이미지를 위한 하위 폴더 생성 → valley_saves

stardewvalley 폴더 하위에 'valley_saves' 라는 폴더 생성
하위 폴더 생성 확인

 


스탭4 : 소스코드 다운 및 업로드하기 

Git Code를 다운로드 받습니다. 
 

GitHub - norimicry/stardew-multiplayer-docker: Run a Stardew Valley Multiplayer Server with docker-compose

Run a Stardew Valley Multiplayer Server with docker-compose - norimicry/stardew-multiplayer-docker

github.com

홈페이지에 접속하여, 코드를 ZIP파일로 다운로드 합니다
압축을 해제한 파일 전체를 'stardewvalley' 폴더에 모두 업로드 함
중복 되는 것이 있으면 '덮어쓰기' 클릭
파일 업로드 확인

 


스탭5 : 서버 (도커이미지) 빌드업

컨테이너 매니저 실행 → '프로젝트' → '생성' 클릭
프로젝트 이름은 stardewvalley 로 정하고 '경로설정' 클릭
앞선 스텝에서 만들었던 'stardewvalley' 디렉토리를 선택하고, 하단 '선택' 클릭
파일에서 'docker-compose.yml 만들기' 를 선택함

 

다음 주소에 나와 있는 소스코드를 모두 복사하여, 붙여넣기 함 

https://github.com/norimicry/stardew-multiplayer-docker/blob/master/docker-compose-steam.yml

 

stardew-multiplayer-docker/docker-compose-steam.yml at master · norimicry/stardew-multiplayer-docker

Run a Stardew Valley Multiplayer Server with docker-compose - norimicry/stardew-multiplayer-docker

github.com

소스코드를 전체 다 선택하여 복사 후 → yml 만들기에 붙여넣기 함

 

소스코드 수정 : STEAM_USER, STEAM_PASS, STEAM_GUARD 부분을 
자신의 환경 값으로 수정함 

자신의 SteamID, 패스워드, 스팀가드 값을 넣는다 → '다음' 클릭
웹포털설정은 무시하고 '다음' 클릭
요약을 한번 눈으로 확인 후 '완료' 클릭
서버가 설치됨, 약 5분정도 소요됨
중간에 핸드폰에서 이런 메시지가 뜨면, '승인' 클릭
Exit Code : 0 가 나오면 정상 빌드업 완료 → '종료' 클릭

 

도커 운영상태 확인

컨테이너 → 도커 이미지가 정상 운영되는 것을 확인함

 


스탭6 : 관리자 모드 접속 및 방파기 

웹브라우저에서 NAS 장비의 IP를 넣고 관리자 모드 진입

NAS IP를 이용하여 접근함

기본 관리자 패스워드 insecure 

 

'Co-Op'으로 진입
Host → 'Host New Farm' 클릭
Starting Cabins, Layout, Name등을 설정하고 OK를 눌러 방을 개설

 

방생성이 끝나면, 게임 및 시놀로지 나스와 관련된 모든 웹브라우저는 종료 합니다. 

 


스탭7 : 최종 접속 테스트

스타듀밸리 클라이언트 실행 --> 협동플레이 클릭
참가하기 -> LAN 게임 참가하기를 클릭
공유 받은 공인 IP를 넣습니다
Cabin 을 선택합니다
게임 접속 확인 : 방장캐릭터가 서있습니다, 더미 캐릭터입니다. 무시하세요

 


이상 스타듀밸리 서버(NAS) 구축 가이드 였습니다. 
추가로 궁금하신 사항은 테크팀 공식 디스코드 채널로 방문해주세요 

 

테크팀's server Discord 서버에 가입하세요!

나만의 게임서버를 구축하고, 지인들과 함께 즐기기 위한 기술 가이드 | 멤버 2990명

discord.com

 

 

 

반응형
반응형

 

 

 

시작하며

서문 
  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견시 아래 주소로 제보 부탁 드립니다.

 

참고자료 (URL)

 

서버 요구사항 
  • 테스트 결과 CPU 4 Threads, Mem 16GB는 있어야 원활히 동작합니다. 
  • 테스트 결과 멀티 쓰레드를 원활히 지원합니다 (8Core-16Threads 원활히 지원)

 

방화벽 포트 
  • UDP 24642  :  스타듀벨리 기본 포트 
  • TCP 5801 : 도커 이미지에서 원격 관리용으로 사용하는 포트 

 

유튜브 공식 영상 (테크팀채널)

 


사전 작업

아래와 같은 사전 작업이 완료 되어 있어야 합니다.
1. 구글 클라우드 회원 가입 (링크이동)
2. Steam 회원 가입SteamGuard 등록 

 


구글 클라우드 작업 

아래 영상을 참조하여 구글 클라우드에서 다음과 같은 작업을 진행합니다.
1. GCP 방화벽 개방  
2. GCP VM 생성 

 


리눅스 OS 작업

Step01 : APT Update
sudo apt update

 

Step02 : 리눅스 방화벽 개방 
  • 개방된 방화벽은 VM 리부팅 후 초기화 됩니다. 
  • VM을 리부팅 했다면 아래 명령어를 통해, 방화벽 개방을 다시 수행해주셔야 합니다. 
## 방화벽 개방 ##
sudo iptables -I INPUT -p udp --dport 24642 -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 5801 -j ACCEPT

## 방화벽 개방 확인 ##
sudo iptables -nL

 

Step03 : Docker Compose 설치
sudo apt install docker-compose

 

Step04 : Git Clone
  • 홈디렉 토리로 이동
cd ~
  • Git Code 복제
git clone https://github.com/pinduzera/stardew-multiplayer-docker.git

 

Step05 : 도커 이미지 설치 위치로 이동
cd ~/stardew-multiplayer-docker

 

Step06 : 변수 값 설정 
  • nano 프로그램으로 'docker-compose-steam.yml' 파일의  주요 항목 3가지를 변경합니다. 
nano docker-compose-steam.yml
  • 아래 3가지 항목을 각자의 환경으로 변경 합니다. 
      args:
        ## Recommended: set as env_variable during build
        STEAM_USER: ${STEAM_USER}  <-----------------------[변경]
        ## Recommended: set as env_variable during build
        STEAM_PASS: ${STEAM_PASS}  <-----------------------[변경]
        ## Recommended: set as env_variable during build
        STEAM_GUARD: ${STEAM_GUARD} <----------------------[변경]

 

Step07 : Docker Inital Setup and Run
  • 아래 명령어로 도커를 빌드업 합니다.
sudo docker-compose -f docker-compose-steam.yml up
  • 설치 중간 휴대폰(스팀가드)에서 승인 메시지가 출력됩니다. 잊지말고 꼭 승인 버튼을 클릭합니다. 

 

Step08 : 스크린 실행을 위해, 게임엔진 임시 종료 
  • 최초 설치가 끝났다면, 잠시 프로그램을 종료 합니다.
ctrl + c

 

Step09 : Screen 유틸리티 수행 
screen

 

Step10 : 게임엔진 실행 
  • 게임설치 디렉토리로 이동
cd ~/stardew-multiplayer-docker
  • 게임 엔진 기동
sudo docker-compose -f docker-compose-steam.yml up

 

Step11 : screen 유틸리티 백그라운로 빼기
ctrl + a + d

 

참고(옵션) : screen 유틸리티 심화 과정 

 


스타듀벨리 설정 & 방 생성

Step01 : 서버 GUI 접속 
  • 웹브라우저 실행 (크롬 추천) 
  • 주소 표시줄에 VM의 공인IP를 복사하여 붙여 넣는다. 
  • 기본 패스워드 : insecure

<공인IP>:5801

 

Step02 : 멀티플레이를 위한 방(Farm) 생성

Co-Op을 눌러 멀티 플레이로 진입

 

Host -> New Farm을 눌러 방을 생성

 

Starting Cabins, Layout, Name등을 설정하고 OK를 눌러 방을 개설

 

Step03 : 방생성 끝
  • 모든 작업이 완료되었습니다
  • 게임 GUI창 을 포함한 GCP Consoel 까지 모두 닫으셔도 됩니다. 

 


최종 접속 테스트

클라이언트 실행 & 멀티방 접속

스타듀밸리 클라이언트 실행 --> 협동플레이 클릭

 

참가하기 -> LAN 게임 참가하기를 클릭
공유 받은 공인 IP를 넣습니다
Cabin을 선택합니다
플레이할 캐릭터 설정
게임 접속 확인 : 방장캐릭터가 서있습니다, 더미 캐릭터입니다. 무시하세요

 

 

 

반응형
반응형

시작하며

서문 
  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견시 아래 주소로 제보 부탁 드립니다.

 

참고자료 (URL)
  • 도커데스크탑 공식 사이트 : 링크이동
  • 본 가이드에서 참고하는 도커 이미지 사이트 : 링크이동

 

서버 요구사항 
  • 테스트 결과 CPU 4 Threads, Mem 16GB는 있어야 원활히 동작합니다. 
  • 테스트 결과 멀티 쓰레드를 원활히 지원합니다 (8Core-16Threads 원활히 지원)

 

사용할 방화벽 포트 
  • UDP 60002  :  스타듀벨리 기본 포트 
  • TCP 60001 : 도커 이미지에서 원격 관리용으로 사용하는 포트 

 

공식 가이드 [유튜브 영상 가이드]

 


사전 작업(1) : 스팀 계정 만들기 + 스팀가드 설정

아래와 같은 사전 작업이 완료 되어 있어야 합니다.
1. 구글 클라우드 회원 가입 (링크이동)
2. Steam 회원 가입  SteamGuard 등록 

 


사전 작업(2) : GIT, GITLFS 설치

GIT 설치 

설치는 Next만 클릭

 

GITLFS 설치 

 


사전 작업(3) : 도커 데스크탑 설치

Step01 : 도커 데스크탑 다운로드
  • 도커 데스크탑 사이트로 이동하여 프로그램을 설치 합니다 : 링크이동

 

Step02 : 도커 데스크탑 설치 
  • 아래 2개의 항목 모두를 체크하고 Next

설치 진행 중

 


사전 작업(4) : 포트포워딩 구성

공유기 접근 
  • 포트포워딩 메뉴로 진입 : IP타임 기준 'NAT/라우터 관리' → '포트포워드 설정'

포트포워딩 메뉴로 진입 완료

 

포워딩 진행완료 

포트포워딩 완료

 

IP Time 이외 포트포워딩은 ?  (아래 링크 참조)

 


사전작업(5) : 윈도우 방화벽 개방

파워쉘 실행 : 관리자 권한으로 실행

 

방화벽 개방 명령어 수행
New-NetFirewallRule -DisplayName "StardewValley" -Direction Inbound -LocalPort 60002 -Protocol UDP -Action Allow
New-NetFirewallRule -DisplayName "StardewValley" -Direction Inbound -LocalPort 60001 -Protocol TCP -Action Allow

 


게임엔진 설치 (도커 구성)

터미널 실행 
  • 서버 설정 파일을 저장할 위치로 이동 
  • C: or D: 를 추천 합니다. (Path 중간 or 디렉토리에 한글 이름이 있을 경우 오류가 발생 됩니다) 주소 표시줄에 'cmd'를 입력하여 터미널을 실행 합니다. 

터미널 실행 확인

 

Git Cloning 
  • 아래 명령어를 수행하여 Git 소스코드를 Cloning 합니다.
git clone https://github.com/pinduzera/stardew-multiplayer-docker.git

파일이 Cloning된 것을 확인할 수 있다

 

도커 이미지 사용 포트변경 
  • Cloning 디렉토리 안 'docker-compose-steam.yml' 파일을 메모장으로 열어 편집함 
  • 제일 아래 2가지 항목을 수정함 
  • (아래) 변경전 기본 값
    ports:
      # VNC
      - 5902:5900
      # NOVNC WEB
      - 5801:5800
      # Game  
      - 24642:24642/udp

 

  • (아래) 변경후 기본 값
    ports:
      # VNC
      - 5902:5900
      # NOVNC WEB
      - 60001:5800  <-------------------[변경]
      # Game  
      - 60002:24642/udp  <--------------[변경]

 

환경 변수 변경 
  • 마찬가지로 'docker-compose-steam.yml' 파일의 상단 환경변수를 수정함
STEAM_USER={당신의SteamID}
STEAM_PASS={당신의SteamID비번}
STEAM_GUARD={당신의SteamGuard값}

 

도커 빌드 (Docker Build) 
  • 스팀(도커) 이미지가 있는 폴더를 열어 'CMD'를 올바른 위치로 실행함
  • 아래와 같은 명령어를 사용하여 Docker를 Build 함 
docker compose -f docker-compose-steam.yml up

도커가 빌드된다, 시간은 대략 3~4분 소요됨

  • 중간에 로그인 승인하라는 메시지가 휴대폰 (스팀가드)를 통해 전송된다, 반드시 승인을 클릭 

 

구동 완료 
  • 아래와 같은 메시지가 출력된다면 모든 작업이 완료 됨 
  • 서버를 동작시키는 동안에는 아래 터미널 창을 종료해서는 안됩니다. 

 


게임 방 생성 

서버 GUI 접속 
  • 웹브라우저 실행 : 크롬 추천
  • http://{자신의IP}:60001 로 접속함 (공인IP / 127.0.0.1 / localhost 모두 입력 가능)
  • 기본 패스워드 : insecure

https 가 아닌, http를 사용해야 함

 

멀티플레이를 위한 방(Farm) 생성

Co-Op을 눌러 멀티 플레이로 진입

 

Host -> New Farm을 눌러 방을 생성

 

Starting Cabins, Layout, Name등을 설정하고 OK를 눌러 방을 개설

 

방생성 끝
  • 모든 작업이 완료되었습니다

 


서버 접속 테스트

클라이언트 실행 & 멀티방 접속

스타듀밸리 클라이언트 실행 --> 협동플레이 클릭

 

참가하기 -> LAN 게임 참가하기를 클릭
공유 받은 공인 IP를 넣습니다
Cabin을 선택합니다
플레이할 캐릭터 설정
게임 접속 확인 : 방장캐릭터가 서있습니다, 더미 캐릭터입니다. 무시하세요

 

반응형

+ Recent posts