初めに
マインクラフトサーバーを建てる備忘録。
PaperMCの自動起動の設定とVPSと接続するためTailscaleのインストールです。
自動起動の設定
起動後にpaperMCの操作が可能になるようにscreenを使って起動するようにします。
screenインストール
sudo apt install -y screen
PaperMC起動用スクリプトの作成
nano mc_start.sh
内容
#!/bin/bash
export TERM=xterm
cd /home/mcuser/paper
/usr/bin/screen -dmS paper /usr/bin/java -Xmx5G -Xms5G -jar paper.jar nogui
screen と java のフルパスを指定する。
export TERM=xterm入れないとscreenがエラーになったので入れた。
実行権限を付与
chmod +x ~/paper/mc_start.sh
3. systemd サービス作成
systemdで自動起動設定
sudo nano /etc/systemd/system/minecraft.service
内容
[Unit]
Description=PaperMC Server via screen
After=network.target
[Service]
Type=oneshot
RemainAfterExit=true
User=mcuser
WorkingDirectory=/home/mcuser/paper
ExecStart=/home/mcuser/paper/mc_start.sh
[Install]
WantedBy=multi-user.target
登録
sudo systemctl daemon-reexec
sudo systemctl enable minecraft.service
sudo systemctl start minecraft.service
Tailscaleをインストール
あらかじめアカウントは作成しておきます。
curlをインストール
curlが入っていなかったのでインストールする。
sudo apt install curl -y
curlを使いTailscaleをインストール
curl -fsSL https://tailscale.com/install.sh | sh
lxcではTUN/TAPが無効なので有効化します。
TUN/TAP は仮想的なネットワークインターフェイスだそうです。
proxmoxホストで設定ファイルを編集します。
nano /etc/pve/lxc/100.conf
以下を追記
lxc.cgroup2.devices.allow = c 10:200 rwm
lxc.mount.entry = /dev/net/tun dev/net/tun none bind,create=file
features: keyctl=1,nesting=1
コンテナを再起動
pct restart
コンテナでtunがあるか確認
ls -l /dev/net/tun
tailscaled を再起動
sudo systemctl start tailscaled
sudo tailscale up
urlが表示されるので、ブラウザからアクセスしデバイスを追加する。
minecraft サーバーの設定を確認
server.properties の server-ip を空欄(server-ip=)にしてすべてのIPで待ち受けするようにします。