반응형

 

시작하며

서문 
  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견시 아래 주소로 제보 부탁 드립니다.
  • 공식 유튜브채널 [ https://www.youtube.com/@kortechtim ]
  • 공식 디스코드 [ https://discord.gg/ZQ6DzC58rZ ] 

 

 


서버 구축 참고 자료들

공식 사이트 

 

참고 사이트 

 

도커이미지 관련 

 


서버 구축의 기본 정보 사항 

서버 요구사항 : 참고용

출처 : https://pockethost.app/en/abiotic-factor-game-server-hosting

 

사용할 방화벽 포트 
  • UDP : 7777, 27015

 


구글 클라우드 작업

구글 클라우드 회원 가입
 

클라우드 컴퓨팅 서비스 | Google Cloud

데이터 관리, 하이브리드 및 멀티 클라우드, AI와 머신러닝 등 Google의 클라우드 컴퓨팅 서비스로 비즈니스 당면 과제를 해결하세요.

cloud.google.com

  • 회원가입에 사용되는 신용카드 정보는 개인 정보 확인을 위해 사용될 뿐 청구되지 않습니다.
  • 90일간 300$를 사용할 수 있습니다. 
  • 금액을 다 소진하거나, 90일이 지나면 무료회원기간이 종료되며 유료 회원전환 여부를 묻습니다. 
  • 별도의 액션을 취하지 않으면 무료 회원으로 남고, 구글에서 모든 자원을 회수합니다. 
  • 이후 필요하지 않는 계정은 탈퇴 처리 하여 깔끔하게 삭제합니다. 

 


 

구축 시작

Step 1 ▷ GCP 방화벽 개방

 

메인메뉴 -> VCP 네트워크 -> VCP 네트워크 메뉴로 이동합니다.

 

기본적으로 생성된 'default' 네트워크를 선택 합니다.

 

'방화벽' → '방화벽 규칙 추가'를 클릭 합니다.

 

방화벽 이름을 설정합니다. 아무 이름이나 원하는 것으로 작성 합니다. 

 

대상 : '네트워크의 모든 인스턴스'
소스 IPv4 범위 : '0.0.0.0/0'

 

'지정된 프로토콜 및 포트' 선택 → UDP체크 → '7777,27015' 
두개의 포트를 작성하고 '만들기' 클릭

 


Step 2 ▷ GCP VM 생성

 

'Compute Engine' → 'VM 인스턴스' 로 접근

 

인스턴스 만들기 진입

 

VM의 이름을 작성
리전(지역)을 '서울'로 선택함

 

원하는 CPU 모델을 선택
본 데모에서는 가성비 모델 'N2D'를 선택 했습니다. 
모델 선택에는 정답이 없습니다. 자신의 게임 서버 환경에 맞는 CPU를 선택 합니다 

 

머신 유형 선택 
본 데모에서는 4vCPU, 16GB MEM 을 선택 하였습니다. 
CPU / MEM은 추후 줄이거나 늘이는 등의 변형이 가능합니다 (리부팅 필요함)

 

부팅 디스크 메뉴로 진입

 

디스크의 크기와, 운영체제를 선택
OS 버전을 선택할 때 반드시 X86 이미지를 선택해야 합니다. Ubuntu 22.04 ARM을 선택하면 안됩니다

 

최종 '만들기' 진행

 


Step 3 ▷ Linux VM에 게임엔진 설치 

 

 

APT Update
  • Repository Update(Refresh)
sudo apt update

 

리눅스 방화벽 개방 
VM을 재부팅하게 되면 방화벽 설정이 풀리게 됩니다. 재부팅을 하게 되면 아래 명령어 2줄은 항상 다시 수행합니다.
  • 방화벽 개방 명령어
sudo iptables -I INPUT -p udp --dport 7777 -j ACCEPT
sudo iptables -I INPUT -p udp --dport 27015 -j ACCEPT
  • 개방 확인 명령어
sudo iptables -nL

 

Docker-Compose 설치 
  • 설치 명령어
sudo apt install docker-compose
  • 설치 확인 명령어
sudo docker-compose -version

 

Github Cloning 
  • 빌드업 할 서버 소스코드를 복제하기
git clone https://github.com/Pleut/abiotic-factor-linux-docker.git
  • 소스코드 디렉토리로 이동
cd abiotic-factor-linux-docker
  • yml 파일 이름 변경 
mv ./docker-compose.yml.example ./docker-compose.yml

 

환경설정 변경 
  • 편집기로 'docker-compose.yml' 파일 수정 
nano ./docker-compose.yml
  • 아래 내용들을 수정함 

services:

  abiotic-server:
    image: "ghcr.io/pleut/abiotic-factor-linux-docker:latest"
    restart: unless-stopped
    volumes:
      - "./gamefiles:/server"
      - "./data:/server/AbioticFactor/Saved"

    environment:
      - MaxServerPlayers=6
      - Port=7777
      - QueryPort=27015
      - ServerPassword=password  ←자신의 패스워드로 변경함
      - SteamServerName=Linux Server  ← 자신의 서버 이름으로 변경
      - UsePerfThreads=true
      - NoAsyncLoadingThread=true
      - WorldSaveName=Cascade
#    - AutoUpdate=true  ← 제일 앞에 #을 제거함 (도커를 기동할 때 마다, 자동 업데이트 On 하는 옵션)
#    - AdditionalArgs=-SandboxIniPath=Config/WindowsServer/Server1Sandbox.ini

    ports:
      - "0.0.0.0:7777:7777/udp"
      - "0.0.0.0:27015:27015/udp"
  • 저장하고 빠져나가기 
Ctrl + x → y → 엔터

 

screen 유틸리티 실행 
  • 명령어를 통한 스크린 접근 
screen

 

도커 (게임엔진) 실행 
  • 도커 이미지 위치로 이동 
cd ~/abiotic-factor-linux-docker
  • 게임 엔진 기동
sudo docker-compose up

 

도커 프로세스 백그라운드 전환
  • 백그라운드로 빼기 
ctrl + a + d

 


(Option) Setp  ▷ SandboxSettings.ini 수정 적용하기 

 

docker-compose.yml 파일 수정 
  • nano 편집기로 파일 수정
nano docker-compose.yml
  • ini 파일 부분 수정 
services:
  abiotic-server:
    image: "ghcr.io/pleut/abiotic-factor-linux-docker:latest"
    restart: unless-stopped
    volumes:
      - "./gamefiles:/server"
      - "./data:/server/AbioticFactor/Saved"

    environment:
      - MaxServerPlayers=6
      - Port=7777
      - QueryPort=27015
      - ServerPassword=
password  ←자신의 패스워드로 변경함
      - SteamServerName=
Linux Server  ← 자신의 서버 이름으로 변경
      - UsePerfThreads=true
      - NoAsyncLoadingThread=true
      - WorldSaveName=Cascade
#    - AutoUpdate=true  
#    - AdditionalArgs=-SandboxIniPath=Config/WindowsServer/Server1Sandbox.ini
바로 윗줄의 # 부분을 삭제하여 기능을 활성화 시켜준다 

    ports:
      - "0.0.0.0:7777:7777/udp"
      - "0.0.0.0:27015:27015/udp"
  • nano 편집기 저장하고 빠져나가기
Ctrl + x → y → 엔터
  • Server1Sandbox.ini 파일을 생성할 위치로 이동
cd ~/abiotic-factor-linux-docker/data/Config/WindowsServer
  • nano 편집기를 사용하여 ini 파일을 생성
sudo nano Server1Sandbox.ini
  • 공식 Github 사이트에서 배포하는 SandboxSettings.ini 파일을 복사하여 붙여 넣는다. 
  • 링크 이동
  • 편집을 완료 했다면 nano 편집기 저장하고 빠져나가기 
Ctrl + x → y → 엔터
  • 다시 게임을 실행시켜 주면 끝 !

 


(Option) Step  ▷ admin.ini 수정 적용하기 

 

Admin.ini 파일 위치로 이동
  • 이동 명령어 
cd ~/abiotic-factor-linux-docker/data/SaveGames/Server
  • nano 편집기로 파일 생성 
sudo nano Admin.ini
  • 파일 수정 : 파일 양식은 아래와 같습니다.
[Moderators]
Moderator=ExampleID1
Moderator=ExampleID2

[BannedPlayers]
BannedPlayer=ExampleBanID1
BannedPlayer=ExampleBanID2
  • 저장하고 빠져나가기 
Ctrl + x → y → 엔터
  • 다시 게임을 실행시켜주면 끝!

 


 

모든 설치가 완료 되었습니다.

수고 하셨습니다. 
이제부터 멋진 게임 즐기세요 ^^

 

 

 

 

반응형

+ Recent posts