Skip to main content

Ubuntu

해당 문서는 A to Z를 지향하고 있습니다.

 

1. Installation

GUI환경인 Ubuntu Desktop도 있지만 GUI를 이용할 일이 적기에 CLI환경인 Ubuntu Server로 진행하겠습니다.

https://releases.ubuntu.com/24.04/ubuntu-24.04-live-server-amd64.iso

해당 링크에서 ISO를 다운로드해 설치용 USB에 rufus등의 툴을 이용해 구워줍시다.

설치할 호스트에 USB를 장착하고 부팅하면 아래와 같은 GRUB 창을 확인할 수 있습니다.

image.png

Enter를 눌러 Install을 시작합시다. 그럼 service들을 확인하며 아주 멋지게 문자열들이 주루루룩 올라갑니다.

그러다 보면 언어를 선택할 수 있는 창이 나타나는데, 한국어가 없기도하고 필요도 없기 때문에 English로 해줍시다.

키보드 레이아웃도 마찬가지로 English (US)로 할 것입니다. 또 Enter를 누릅시다.

다음은 minimized가 아닌 그냥 Ubuntu Server로 진행합시다.

Network, Proxy, Mirror 등을 선택하는데 별 다른 말 없이 계속 Enter를 눌러줍시다. 단, mirror는 검색하는 과정에서 시간이 약간 소모될 수 있습니다.

storage 옵션은 인식한 전체 디스크를 포맷할 것입니다. Tab으로 Done까지 도달하여 Enter를 눌러주고, 스토리지 구성도 확인하고 넘어가줍시다. 디스크가 전부 지워진다고 하는데, 이미 알고 있기 때문에 Continue로 진행합니다.

슬슬 설치의 마무리 단계입니다. 이름과 서버의 이름, 비밀번호 등을 넣어주고, Pro는 필요없기에 넘어갑니다.

그리고 SSH를 설정하게 되는데 Space를 눌러 Install OpenSSH server를 활성화하고 Tab으로 넘어가 Done에 도달해줍시다.

다음은 몇몇 패키지들을 미리 설치하게 해주는데 일단 넘어갑시다. 역시 Tab을 통해 넘어가기가 가능합니다.

기다려주면 설치가 끝나고 재부팅을 위해 설치용 드라이브를 제거하라고 하는데, 계속해서 누른 Enter를 마지막으로 눌러 설치를 마칩시다.

 

 

2. Settings

SSH Connect

설치를 끝내고 재부팅이 완료되면 로그인 해줍시다. 그럼 아래와 같은 창? 문자가 반겨줄 것입니다.

image.png

여기서 System Information의 IPv4 address를 보면 해당 호스트의 IP주소를 알 수 있습니다.

이제 Windows에 내장된 CMD나, PuTTY 등을 통해 SSH로 접속을 해줍시다. CMD라면, 아래와 같은 명령어로 접속이 가능합니다.

# ssh username@IP_number
ssh ubuntu@192.168.20.70

비밀번호를 입력해야 하는데, 입력하더라도 문자는 뜨지 않지만 입력은 되고 있으므로 다 입력했다면 Enter를 눌러줍시다.

 지문과 관련해서 한 마디를 하는데 알겠다고하고 yes를 입력해 넘어갑시다.

image.png

아까 보았던 문자들이 또 반겨줍니다. 이제 SSH 연결이 성공적으로 이루어졌습니다.

 

apt-get

패키지들을 갈아엎기 위해 어디선가 많이 들어본 그 명령을 실행합시다.

sudo apt-get update
sudo apt-get upgrade # y와 Enter를 눌러줍시다.

패키지들이 업데이트 - 업그레이드 됩니다.

 

Docker Compose

서비스들을 컨테이너로 올리기 위해 우리는 Docker를, 정확히는 난이도가 낮고 쉬운 Docker Compose를 사용할 것입니다.

sudo apt-get install docker-composedocker # y와 Enter를 눌러눕시다.

계속해서 검은창에 하얀색 글자.. CLI 환경은 힘겨우니 하다못해예시로 컨테이너를 하나 올려보겠습니다. Minecraft라GUI로게임을 관리하호스팅할 수 있는 crafty라는 컨테이너입니다. 사실상 이를 위해 이 문서가 작성된 것이라고 봐 무방합니다.

How to build Minecraft Server with crafty

복사해서 붙혀넣고 실행해줍시다.

sudo docker run \
  --name crafty_container \
  --detach \
  --restart always \
  -p 8443:8443 \
  -p 8123:8123 \
  -p 19132:19132/udp \
  -p 25500-25600:25500-25600 \
  -e TZ=Etc/UTC \
  -v "/$(pwd)/docker/backups:/crafty/backups" \
  -v "/$(pwd)/docker/logs:/crafty/logs" \
  -v "/$(pwd)/docker/servers:/crafty/servers" \
  -v "/$(pwd)/docker/config:/crafty/app/config" \
  -v "/$(pwd)/docker/import:/crafty/import" \
  registry.gitlab.com/crafty-controller/crafty-4:latest

이미지를 다운로드 받고 실행이 완료되면 웹브라우저를 통해 https://<ip-addr>:8443에 접속합시다. 호스트의 ip주소가 기억이 나지 않는다면 아래의 명령어로 확인이 가능합니다.

ip addr | grep 192

# inet 192.168.20.70/24 metric 100 brd 192.168.20.255 scope global dynamic ens33
# 라고 뜬다면 IP 주소는 192.168.20.70

웹 브라우저로 접속하게 되면 로인 창이 뜨는데 계정 정보는 아래와 같은 명령어로 확인이 가능합니다.

cat docker/config/default-creds.txt

# {
#     "username": "admin",
#     "password": "%pK6Rd7mwhdIkjB6&su##atc%M%i*khyh1el5tYb26C@UTlgYHGf#RC3gRgyfBg5"
# }

아주 길쭉한 패스워드가 나옵니다. 복사 후 붙혀넣기로그인해줍시다.

로그인에 성공하면 측 상단의 설정 아이콘을 눌러 Panel Config - Users - Edit - New Password(자물쇠 아이콘)을 눌러 비밀번호를 변경해줍시다. 우측 상단에 "Admin edited user admin (UID: 1)with roles set()" 라Dockge를안내문이 사용할나오면 것입성공한겁니다.

그럼 서버를 올려봅시다. Servers - Create New Server - Minecraft-Bedrock을 눌러주고 Server Name을 입력, Build Server!를 눌러주면 시간이 좀 경과한 뒤에 서버가 생겨납니다.

Dashboard로 돌아가 생겨난 새로운 서버에 Actions의 재생버튼을 눌러주면 서버가 실행됩니다.

이제 19132포트(UDP)를 라우터 또는 공유기에서 포트포워딩해주면 외부에서도 Minecraft를 통해 서버에 접속이 가능합니다. 

이때, Minecraft에서 입력하는 서버의 IP는 192으로 시작하는 사설 IP가 아닌 https://ipinfo.io/에 뜨는 외부 IP를 입력해줘야 합니다.