Mostrarei como você pode criar um servidor de minecraft auto-hospedado em sua casa e pode jogar com seus amigos de qualquer lugar do mundo sem abrir portas na sua rede e com muito mais segurança e diversão.
1. Passo: Distro Linux
Nessa documentação irei usar o Debian 12, se você queira usar alguma distro diferente pode usar sem medo, porque tudo aqui será rodado via containers docker, podendo ser rodado até no windows.
2. Instalando o Docker
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo docker run hello-world
Se tudo ocorreu como deveria podemos passar para a próxima parte.
3. Criando um Conta no Tailscale e Microsoft
Na Microsoft:
Acesse e link Microsoft, após acessado você só vai precisar de um e-mail e uma senha.
No Tailscale:
Você consegue criar sua conta usando um desses: Google, Microsoft, Github, Apple ou OIDC.
OBS: Você pode até mesmo usar a própria conta da Microsoft para fazer login no Tailscale
4. Criando os containers docker
Tailscale:
Vamos usar um modelo já pronto para agilizar o processo:
services:
"Name":
image: tailscale/tailscale:latest
hostname: "Name"
environment:
- TS_AUTHKEY="tskey-auth-" # chave de autenticação do tailscale
- TS_STATE_DIR=/var/lib/tailscale
volumes:
- "/volume/tailscale/var/":/var/lib/tailscale
- "/volume/tailscale/dev/net/tun":/dev/net/tun
network_mode: host
cap_add:
- net_admin
- sys_module
restart: unless-stopped
Nesse arquivo só basta mudar aonde estão as aspa (“”), mude o “Name” para o nome que você quiser, o “tskey-auth-“ pela chave de acesso (Mostrarei daqui a pouco) e “Volumes” pelo o local onde você quer deixar armazenados os seu dados.
Obtendo a chave de acesso Tailscale
(Não se preocupe com essa opção, ela só vai ser usada para auto expirar a chave se ela não for usada, logo após o primeiro uso ela se expirar sozinho).
Essa chave será usada apenas para a autorização do servidor para se conectar a sua conta Tailscale.
Minecraft
Vamos usar um modelo já pronto para agilizar o processo:
services:
"Name":
container_name: "Name"
environment:
- EULA=TRUE
- ONLINE_MODE=false # para poder jogar sem precisar de uma conta na microsoft
ports:
- 19132:19132/udp
restart: unless-stopped
image: itzg/minecraft-bedrock-server
volumes:
- "/volume/minecraft/data":/data
Nesse arquivo só basta mudar aonde estão as aspa (“”), mude o “Name” para o nome que você quiser e “Volumes” pelo o local onde você quer deixar armazenados os seu dados.
Para adicionar configurações como se fosse no server.properties
coloque abaixo da opção “environment”, para saber o que cada comando faz e qual habilitar acesse aqui.
5. Rodando os Containers
Após ter configurado todos os dois arquivos da maneira correta crie duas pasta, uma para o Minecraft e o outro para o Tailscale, afim de organização. Todos os dois arquivos devem ser nomeados para docker-compose.yml
, por esse motivo precisamos criar duas pasta, devido ao “Docker-compose” só ler um arquivo com esse nome por pasta (Se você quiser fazer o teste ou tem mais experiência com docker de rodar os dois container tudo em um arquivo, pode fazer).
6. Se conectando ao servidor
Após ter conseguindo fazer os containers rodarem:
Se tudo ocorre como deveria, agora você tem um servidor de Minecraft para poder jogar da onde você quiser. 🎉
Para poder jogar com seus amigos é só compartilhar a conexão do Tailscale com eles. Tanto passando sua conta para eles (Método não tão seguro) ou adicionar eles por meio dos conviter da Tailscale (Mais seguro), na opção “User” e “Invite users”, enviando o convite via e-mail ou por um link. Para eles se conectarem por meio desse link basta eles também terem uma conta no Tailscale. Esse método depende de qual plano do Tailscale você usa, se for o plano grátis você só pode adicionar até três contas, a partir do plano “Starter” você tem usuários ilimitado.
Obs: A versão ultilizada aqui é a bedrock