事前準備
サーバーを構築する前に、以下の準備が必要。
- Google Cloud アカウント登録
- 構築したいマインクラフトのバージョンの選定(Ubuntu)
プロジェクトの登録
GoogleCloudでプロジェクトの登録を行うと、以下「プロジェクト名」「プロジェクト番号」「プロジェクトID」が発行されるので、メモしておく。
サーバーの構築
右上にコマンドシェルのアイコンがあるのでクリック。すると以下の画面が表示される。
コマンドシェルには以下のコマンドを入力していくが一部は改変が必要。以下は必須項目と入力があると良い部分だけ変える。
minecraft_version=Minecraft最新バージョン
server_name=サーバー名
game_mode=ゲームモード
difficulty=ゲーム難易度
allow_cheats=チートの有無
permission=メンバーの権限
project_id=プロジェクト番号
project_num=プロジェクト ID
minecraft_version=
server_name=
game_mode=survival
difficulty=easy
allow_cheats=false
permission=member
seed=
if ! wget https://minecraft.azureedge.net/bin-linux/bedrock-server-${minecraft_version}.zip; then
read -rp "You have failed to download version ${minecraft_version} of Minecraft. Please check the latest version of Minecraft. Confirm the latest version and re-open CloudShell to execute it."
exit 1
fi
project_id=
project_num=
gcloud compute --project="$project_id" firewall-rules create minecraft --description=minecraft --direction=INGRESS --priority=1000 --network=default --action=ALLOW --rules=tcp:19132,udp:19132 --source-ranges=0.0.0.0/0 --target-tags=minecraft
gcloud compute instances create minecraft --project="$project_id" --zone=us-west1-b --machine-type=e2-micro --network-interface=network-tier=PREMIUM,subnet=default --maintenance-policy=MIGRATE --provisioning-model=STANDARD --service-account="$project_num-compute@developer.gserviceaccount.com" --scopes=https://www.googleapis.com/auth/devstorage.read_only,https://www.googleapis.com/auth/logging.write,https://www.googleapis.com/auth/monitoring.write,https://www.googleapis.com/auth/servicecontrol,https://www.googleapis.com/auth/service.management.readonly,https://www.googleapis.com/auth/trace.append --tags=minecraft --create-disk=auto-delete=yes,boot=yes,device-name=minecraft,image=projects/ubuntu-os-cloud/global/images/ubuntu-2204-jammy-v20240208,mode=rw,size=10,type="projects/$project_id/zones/us-west1-b/diskTypes/pd-standard" --no-shielded-secure-boot --shielded-vtpm --shielded-integrity-monitoring --reservation-affinity=any --metadata=startup-script="#! /bin/bash
dd if=/dev/zero of=/swap bs=1M count=4096 && \
mkswap /swap && \
swapon /swap && \
chmod -R 600 /swap && \
echo '/swapfile none swap sw 0 0' >> /etc/fstab && \
mkdir /var/minecraft && \
cd /var/minecraft/ && \
wget -O bedrock-server.zip https://minecraft.azureedge.net/bin-linux/bedrock-server-${minecraft_version}.zip && \
apt update && \
apt -y install unzip && \
unzip bedrock-server.zip && \
sed -i -e \"s/^\(server-name=\)Dedicated Server/\1${server_name}/g\" server.properties && \
sed -i -e \"s/^\(gamemode=\)survival/\1${game_mode}/g\" server.properties && \
sed -i -e \"s/^\(difficulty=\)easy/\1${difficulty}/g\" server.properties && \
sed -i -e \"s/^\(allow-cheats=\)false/\1${allow_cheats}/g\" server.properties && \
sed -i -e \"s/^\(level-seed=\)/\1${seed}/g\" server.properties && \
sed -i -e \"s/^\(default-player-permission-level=\)member/\1${permission}/g\" server.properties && \
screen -UAmdS minecraft ./bedrock_server"
エンターを押すと承認確認が出てくるので 承認 を押す。するとシェルコマンドが実行される。(全ての登録に5分ほど時間がかかる。)
最後にEXTERNAL_IP
が表示されたら完了。このEXTERNAL_IP
が外部IPになりサーバーアドレスにもなるのでメモしておく。これで構築が完了。