Execute o VpnHood! SERVER no Docker
Execute o servidor como um contêiner em qualquer máquina Linux com Docker. Instale com apenas um comando — gerenciado ou avulso — enquanto o contêiner cuida da estabilidade e das atualizações automáticas.
Antes de começar
- Uma máquina Linux com endereço IP público (x64 ou arm64). A imagem suporta ambas as arquiteturas.
- Acesso root.
- Docker com o plugin compose. O instalador pode configurá-lo automaticamente no Ubuntu, Debian e distribuições derivadas.
- Porta TCP
443liberada, tanto no firewall da máquina quanto no do provedor de hospedagem. O contêiner usa a rede do host diretamente, ouvindo nessa porta.
Instalar um servidor gerenciado
No VpnHood! MANAGER, abra Servers, selecione Add, dê um nome ao servidor e clique em Create. Nas opções de instalação, escolha Install on Linux manually by running a command. No comando exibido pelo MANAGER, altere VpnHoodServer-linux.sh para VpnHoodServer.docker.sh e execute-o na máquina. Ele instalará o contêiner pré-configurado para conectar ao MANAGER e fará a mesma pergunta da instalação avulsa abaixo.
Para um contêiner já criado, escolha Install Manually by configuring appsettings. Salve as configurações exibidas pelo MANAGER como /opt/VpnHoodServer/storage/appsettings.json no host e reinicie o contêiner com sudo docker restart VpnHoodServer.
Em seguida, crie as chaves de acesso para seus dispositivos no MANAGER, em Access Tokens.
Instalar um servidor avulso
Execute este comando. Ele baixa o arquivo compose, inicia o contêiner do servidor e faz apenas uma pergunta rápida.
sudo su -c "bash <( wget -qO- https://github.com/vpnhood/VpnHood.App.Server/releases/latest/download/VpnHoodServer.docker.sh)"
Quando solicitado em Install Docker (y/n)?, digite y para instalar o Docker automaticamente, ou n se ele já estiver instalado.
Para usar em scripts, faça a instalação automática sem confirmações. Omita -install-docker se o Docker já estiver instalado.
sudo su -c "bash <( wget -qO- https://github.com/vpnhood/VpnHood.App.Server/releases/latest/download/VpnHoodServer.docker.sh) -install-docker -q"
O servidor armazena configurações, chaves e logs em /opt/VpnHoodServer/storage no host, preservando todos os dados mesmo ao recriar o contêiner.
Criar uma chave de acesso
Execute este comando na máquina. A chave é gerada dentro do contêiner do servidor, usando diretamente as configurações dele.
sudo docker exec VpnHoodServer /app/vhsupervisor gen
Por exemplo, uma chave para um celular
sudo docker exec VpnHoodServer /app/vhsupervisor gen -name Phone -maxClient 1
A saída e as opções são as mesmas de um servidor autônomo instalado sem Docker: copie a linha abaixo de --- AccessKey --- e consulte Crie sua primeira chave de acesso para ver as opções de restrição de chaves.
Conectar
Instale o VpnHood! CLIENT em cada dispositivo, adicione a chave e conecte-se.
Iniciar, parar e verificar o servidor
O contêiner se chama VpnHoodServer. O Docker o reinicia se a máquina reiniciar, e o servidor é reiniciado automaticamente dentro dele em caso de falha.
sudo docker logs VpnHoodServer
sudo docker stop VpnHoodServer
sudo docker start VpnHoodServer
O mesmo registro de log é gravado em /opt/VpnHoodServer/storage/logs/server.log no host.
Alterar as configurações
O servidor lê as configurações de /opt/VpnHoodServer/storage/appsettings.json. Edite o arquivo e reinicie o contêiner com sudo docker restart VpnHoodServer.
Se não for possível editar o arquivo, insira todo o conteúdo de appsettings.json na variável de ambiente VH_APPSETTINGS. O servidor a usará no lugar do arquivo.
Configure os endereços IP do servidor e Conecte-se usando um domínio para conferir as configurações mais comuns.
Atualizações
O servidor se atualiza sozinho dentro do contêiner. Ele verifica se há novas versões ao iniciar e a cada 12 horas, reiniciando já na versão mais recente.
Para fixar uma versão específica, defina VH_AUTO_UPDATE=0 no ambiente do contêiner.
Ocasionalmente, uma versão exige uma imagem mais nova. Nesses casos, o servidor mantém a versão atual e o log exibe Pull the latest image!. Execute o comando de instalação novamente: ele baixa a imagem mais recente e recria o contêiner, preservando todas as configurações e chaves.
Se você instalou usando uma versão anterior do script, execute o comando de instalação novamente. Ele atualizará o servidor para a nova imagem e removerá o contêiner antigo VpnHoodUpdater.
Criar o contêiner manualmente
Se você prefere gerenciar contêineres manualmente, este é o contêiner criado pelo instalador. Execute-o na rede do host, assim como faz o instalador.
sudo docker run -d --name VpnHoodServer --network host --restart always --stop-timeout 30 -v /opt/VpnHoodServer/storage:/app/storage vpnhood/vpnhoodserver
Para atualizar para uma imagem mais recente, baixe vpnhood/vpnhoodserver e recrie o contêiner.