Ir diretamente para o conteúdo

Instalar

O guia de instalação irá ajudá-lo a instalar o seu Mergin Maps CE ou Mergin Maps EE para a versão mais recente do servidor. Mergin Maps A nuvem está sempre atualizada e é gerida pela Mergin Maps equipa. Saiba mais sobre as plataformas de servidor no artigo de visão geral.

Mergin Maps Guia em vídeo sobre servidores

Aprenda os Mergin Maps noções básicas através de uma série de vídeos que o guiarão por todos os passos necessários para dar início aos seus projetos.

Requisitos do sistema para a instalação

Para uma implementação típica, recomendamos a utilização de um servidor dedicado com 8 GB de memória e 2 vCPUs (semelhante à AWS t3a.large instâncias). Os requisitos relativos à CPU e ao armazenamento persistente dependem, em grande medida, da frequência das atualizações do projeto e do tamanho previsto dos dados que se pretende armazenar, respetivamente. Uma regra geral muito conservadora, no que diz respeito ao tamanho de disco necessário, seria o tamanho do projeto «mergin maps» * o número de versões. Se a sua equipa tiver mais de 25 pessoas e sincronizar frequentemente o seu Mergin Maps projetos, considere um anfitrião com 4 vCPUs.

Ao nível do sistema operativo, recomendamos a utilização de uma distribuição Linux que seja totalmente compatível com o Docker, uma vez que Mergin Maps é implementado por predefinição com Docker Compose.

É preferível um ambiente de baixa latência e elevada largura de banda, devido ao volume de dados necessário para efetuar a sincronização com Mergin Maps. Isto é especialmente importante em projetos de grande dimensão, com centenas de megabytes entre sincronizações.

Visão geral da infraestrutura

  • PostgreSQL - Base de dados que armazena os dados da aplicação. Pode ser externa e, por conseguinte, excluída do processo de instalação, desde que devidamente configurada.
  • Redis - O mecanismo de cache e de tarefas assíncronas que funciona em cima de Mergin Maps
  • Celery-Beat - O orquestrador de tarefas do Celery utilizado por Mergin Maps
  • Celery-Worker - O contêiner do Celery responsável pelos trabalhadores que executam tarefas no Mergin Maps
  • Servidor - A instância de backend do servidor de Mergin Maps
  • Web - A instância front-end para Mergin Maps
  • Proxy - Instância do NGINX a funcionar Mergin Maps em configuração de proxy reverso.

Portas do firewall

Por predefinição, apenas a porta HTTP 8080 é necessário abrir no firewall. Recomenda-se também abrir 443 porta, caso o SSL esteja ativado. Todas as outras instâncias da infraestrutura funcionarão dentro do mesmo grupo de redes do Docker, pelo que não é necessário gerir portas adicionais no firewall.

Instalar o Docker

Por favor, utilize a versão mais recente das ferramentas Docker e Docker Compose. Siga as orientações oficiais de acordo com o seu sistema operativo.

Mergin Maps Imagens Docker CE

Apenas na Edição Comunitária

As imagens doMergin Maps CE estão armazenadas no Docker, que é acessível ao público Lutra Consulting's Docker.

Siga as orientações de implementação para o instalar e configurar.

Mergin Maps Imagens Docker da EE

Apenas na Enterprise Edition

As funcionalidades avançadas do EE doMergin Maps só estão disponíveis em imagens Docker específicas armazenadas no repositório privado do Docker Hub em Lutra Consulting. Para obter acesso, necessita do seu contrato e da sua licença da nossa equipa de vendas.

Posteriormente, pode seguir este guia para recuperar as suas imagens do EE daMergin Maps .

Ativar Mergin Maps Telemetria

Certifique-se de que segue as diretrizes de implementação para certifique-se de que quaisquer firewalls na sua infraestrutura estão configurados para permitir o ligação para casa funcionalidade para enviar dados de utilização.

Implementação

Siga estes passos para executar uma instância local Mergin Maps instância local.

Clonar o Mergin Maps repositório do GitHub localmente ou fazer o download pasta de implementação.

bash
$ git clone git@github.com:MerginMaps/server.git

Procure a edição correta Mergin Maps edição.

concha
# Para a edição Community
cd deployment/community

# Para a edição empresarial
cd deployment/enterprise

Ambiente de configuração

​ Este passo configura as definições de implementação através da modificação das variáveis de ambiente.

Comece por criar o .prod.env ficheiro (caso ainda não exista), executando:

concha
cp .env.template .prod.env

Em seguida, edite o .prod.env ficheiro e forneça valores para todas as variáveis assinaladas como obrigatórias na lista de variáveis de ambiente.

Iniciar contentores Docker

Antes de continuar, certifique-se de que tem ambos docker e Docker Compose instalado no seu sistema.

Assim que o seu ambiente estiver configurado, pode iniciar os contentores executando os seguintes comandos para as edições Community e Enterprise.

Pilha da edição comunitária:

concha
$ mkdir -p mergin_db # diretório de dados da base de dados
$ sh ../common/set_permissions.sh projects # diretório de dados internos da aplicação
$ sh ../common/set_permissions.sh diagnostic_logs # diretório para armazenar registos de diagnóstico (opcional)
$ docker compose -f docker-compose.yml up -d

Conjunto de componentes da edição Enterprise:

concha
$ mkdir -p mergin-db-enterprise # diretório de dados da base de dados
$ sh ../common/set_permissions.sh dados # diretório de dados internos da aplicação
$ sh ../common/set_permissions.sh map_data # diretório de dados dos mapas (necessário para os mapas)
$ sh ../common/set_permissions.sh diagnostic_logs # diretório para armazenar registos de diagnóstico (opcional)
$ docker compose -f docker-compose.yml up -d
$ docker compose -f docker-compose.maps.yml up -d # Executar a pilha de mapas separadamente

Registos de diagnóstico

Os utilizadores da aplicação móvel « Mergin Maps » e do plugin « Mergin Maps »QGIS podem enviar registos de diagnóstico a partir dos seus dispositivos. Em implementações personalizadas, os registos são armazenados no registos_de_diagnóstico pasta. Se não pretender que estes registos sejam guardados num volume, remova o ponto de montagem desta pasta no /MerginMaps/server/blob/master/deployment/enterprise/docker-compose.yml ficheiro.

Se pretender enviar registos de diagnóstico dos dispositivos para Mergin Maps , em vez de os guardar numa pasta, defina DIAGNOSTIC_LOGS_URL para https://api.merginmaps.com/logs.

​​

Inicializar a base de dados

Se o servidor for iniciado pela primeira vez, é necessário inicializar a base de dados e criar um superutilizador. Utilize o init comando que irá executar essa operação automaticamente (o comando gera uma palavra-passe para a conta de administrador):

concha
$ docker exec merginmaps-server flask init

Se não tiveres CONTACT_EMAIL conjunto de variáveis, ser-lhe-á pedido que indique um endereço de e-mail de superutilizador utilizando o -e/--e-mail opção. A init também verificará a configuração do seu servidor (tarefas do Celery, e-mails, etc.) e apresentará uma lista das variáveis em falta. Se detetar algum erro na saída da consola, pode executar o comando novamente, uma vez que a base de dados e o superutilizador não serão reinicializados.

DICA

Se quiser criar outros utilizadores manualmente, pode utilizar o seguinte comando:

concha
$ docker exec merginmaps-server flask user create <username> <password> --is-admin --email <email>

Implementação de teste

Para testar a sua implementação, existem alguns comandos utilitários que permitem realizar verificações básicas.

Verificação geral básica da configuração do servidor:

concha
$ docker exec merginmaps-server flask server verificar

A saída será semelhante ao trecho de código seguinte. O utilitário tentará fornecer algumas informações contextuais caso alguma variável de ambiente necessária esteja em falta ou mal definida (por exemplo: MERGIN_BASE_URL)

concha
  # Verificação do estado do servidor

  Mergin Mapas edição: Enterprise Edição
  Mergin Mapas versão: 2025.2.0  
  Erro: Sem base URL definida. Por favor, defina MERGIN_BASE_URL variável variável
  Erro: Não contacto de e-mail definido. Por favor, definir CONTACT_EMAIL variável variável
  A base de dados inicializada corretamente
  Permissões concedidas para /data pasta
  Celery em execução corretamente

Para testar a configuração do e-mail:

concha
$ docker exec merginmaps-server flask servidor enviar-verificar-e-mail --email me@myorg.com

Por predefinição, as notificações por e-mail estão desativadas, pelo que o resultado será semelhante a este:

concha
# Envio de um e-mail de confirmação para o endereço de e-mail especificado me@myorg.com.

Erro: Envio de e-mails está desativado. Por favor, defina MAIL_SUPPRESS_SEND=False para ativar o envio e-mails.

Para as ativar, defina a variável MAIL_SUPPRESS_SEND de acordo com o exposto acima e preencher todos os MAIL_* variáveis relacionadas com a configuração do servidor SMTP da sua empresa.

Alguns dos problemas mais comuns relacionados com implementações personalizadas estão listados na secção de resolução de problemas.