Configurar um servidor dedicado Linux no PlayFab
O objetivo deste guia é descrever todas as etapas necessárias para criar e verificar um servidor dedicado Linux. As etapas a seguir são específicas do Unreal Engine 5 (tanto o acesso antecipado quanto a versão oficial). O mesmo conjunto de etapas foi testado e também se aplica ao UE 4.26 e ao UE 4.27, com algumas pequenas diferenças relacionadas ao local da opção de empacotamento na interface do usuário do Unreal Engine, que é diferente no UE 4.27 e no acesso antecipado do UE5. Mais informações sobre a implantação no Linux podem ser encontradas aquiRequisitos
- Instale os pré-requisitos do Unreal para Linux
- Instale o Docker para Windows
Instruções
- Em pré-requisitos do Unreal para Linux, baixe a cadeia de ferramentas para o Unreal Engine instalado e execute o executável. Observe que, como em muitas partes destes guias, essas etapas só funcionarão se o seu Unreal Engine tiver sido criado a partir do código-fonte.
- Após a conclusão da instalação, examine as variáveis de ambiente do Windows e confirme se a seguinte variável do sistema existe: LINUX_MULTIARCH_ROOT.
- No diretório de código-fonte do Unreal Engine:
- Execute novamente:
Setup.bat - Execute novamente:
GenerateProjectFiles.bat
- Execute novamente:
- Volte ao seu próprio projeto:
- Clique com o botão direito do mouse no arquivo
{ProjectName}.uprojecte selecione Generate Visual Studio project files - Abra o arquivo {ProjectName}.sln no Visual Studio
- Defina a configuração como Development Editor
- Crie e execute o Unreal Editor
- Clique com o botão direito do mouse no arquivo
- Neste ponto, você deverá conseguir empacotar seu projeto para servidor Linux em um diretório de sua escolha.
- No Unreal Engine 5, no Editor, selecione o empacotamento no canto superior direito da tela; a opção Linux agora deverá estar disponível para seleção. No UE 4.26 e no UE 4.27, a opção de empacotamento fica na guia File.
- Confirme suas configurações para Server e Shipping, selecione Linux para criar o build e, em seguida, selecione o diretório de saída.
Criar uma imagem do Docker do servidor Linux
Nesta seção, configuraremos uma imagem do Docker que contém seu servidor Linux- Agora que você criou um servidor Linux, navegue até esse diretório (Explorador do Windows ou terminal de sua escolha)
- Crie um novo arquivo chamado:
Dockerfile - Edite o arquivo com o editor de sua escolha (notepad, vim, emacs etc.)
- Copie e cole o conteúdo apresentado abaixo. Substitua [YourProjectNameServer].sh pelo nome do executável do seu próprio servidor Linux (no mesmo diretório)
- Usando um terminal de sua escolha, navegue até o diretório do servidor Linux
- Os usuários do Windows normalmente usam cmd ou powershell, embora o bash por meio de ferramentas de terceiros ou do WSL também esteja disponível
- Os usuários de Mac e Linux normalmente usam bash
- Execute:
docker build -t "[imageName]:[tag]" ., em que imageName e tag são opções de sua escolha.- Lembre-se desses nomes; você os usará novamente
- Exemplos poderiam ser: YourProjectNameServer e 01, respectivamente
- O elemento tag normalmente é usado para controlar a versão da instância do seu servidor
- Essas marcas serão usadas em uma etapa posterior
- Você pode digitar docker images no terminal para recuperar imageName e tag se esquecer
- Digite docker images no terminal para verificar se a imagem do docker foi criada com êxito.
- Mantenha esta janela do terminal aberta e deixe-a de lado, pois teremos mais comandos para ela mais adiante
- (Indicada como [Docker terminal] nas etapas posteriores)
Carregar a imagem de contêiner no registro do Azure do PlayFab
Neste ponto, você está pronto para enviar por push sua imagem do docker ao Registro de Contêiner do Azure do PlayFab, para que ela possa ser usada para iniciar seu build no PlayFab.- Navegue até o portal do desenvolvedor do PlayFab
- Selecione seu título
- Selecione a guia Multiplayer à esquerda
- Selecione New Build no lado direito da tela.
- Escolha um nome
- Selecione um tipo de VM; para projetos ThirdPersonMP, Dasv4 (2 núcleos) será suficiente
- Em Server Details, defina Server Type como Container e Operating System como Linux.
- Selecione Upload to container registry.
- Na janela que aparecer:
- Lembre-se do seu [AzureUsername] desta janela, usado várias vezes nas próximas etapas
- Selecione Copy Docker Login Command
- Volte à janela {Docker terminal}
- Cole o comando Docker Login no [Docker terminal]. Esse comando conectará você ao Registro do Azure usado pelo PlayFab.
- Digite:
docker tag [imageName]:[tag] [AzureUsername].azurecr.io/[imageName]:[tag] - Digite:
docker push [AzureUsername].azurecr.io/[imageName]:[tag] - Lembre-se de que AzureUsername foi exibido no portal do desenvolvedor do PlayFab, e imageName e tag foram escolhidos por você anteriormente.
- De volta ao site do PlayFab, em Server Details na página New Build, selecione Refresh ao lado de Container image.
- Clique no botão de seta e você deverá conseguir ver e selecionar a imagem do docker que carregou e a respectiva marca.
- No bloco Regions, selecione uma região próxima a você e defina Standby e Max como 1 (apenas para teste)
- No bloco Network, defina o campo Port Name como
gameport- É obrigatório definir a porta que será usada para se conectar ao seu servidor de jogo
- O Unreal GSDK contém código para ler essa porta automaticamente e substituir internamente a porta do host do servidor Unreal de acordo com esse valor
- O nome dessa porta deve ser
gameport
- Selecione Add Build e aguarde até que o status do build se torne Deployed
