Aparência
Atualização
Os guias de migração estão aqui para o ajudar a migrar o seu Mergin Maps CE ou Mergin Maps EE para a versão mais recente do servidor. Mergin Maps O Cloud é sempre migrada para a versão mais recente pela Mergin Maps equipa. Saiba mais sobre as plataformas de servidor no artigo de visão geral.
AVISO
As migrações têm de ser realizadas uma a uma e não podem ser ignoradas.
Certifique-se de que faz sempre uma cópia de segurança dos dados da sua base de dados antes de efetuar uma migração.
Da versão 2025.5.x à versão 2025.7.x
Edição EmpresarialEfetuar a migração:
- Corrigir tabela - migração da versão antiga para a nova do MM
bash
$ docker ps -a | grep postgres 2b261cd55de2 postgres:14 "docker-entrypoint.s…" há 4 semanas Ativo há cerca de um minuto 5432/tcp merginmaps-db
bash
$ docker exec -it 2b261cd55de2 bashbash
psql -U postgresbash
selecionar * do projeto;bash
INÍCIO;
CRIAR SEQUÊNCIA SE NÃO EXISTE public.map_overview_id_seq;
CREATE TABELA SE NÃO EXISTE public.map_overview
(
id INTEGER NÃO NULL DEFAULT nextval('map_overview_id_seq'::regclass),
project_id UUID NÃO NULL,
versão CARÁCTER VARYING,
config JSON,
localização_dos_dados CARÁCTER VARYING,
qgis_file CARÁCTER VARYING,
CONSTRAINT pk_map_overview
PRIMÁRIA CHAVE (id, project_id),
CONSTRAINT fk_map_overview_project_id_project
FOREIGN CHAVE (project_id)
REFERÊNCIAS public.project (id)
ON DELETE CASCADE
);
CREATE ÍNDICE SE NÃO EXISTE ix_map_overview_project_id
ON public.map_overview (project_id ASC NULLS LAST);
CREATE ÍNDICE SE NÃO EXISTE ix_map_overview_version
ON public.map_overview (versão ASC NULLS ÚLTIMO);
COMMIT;bash
selecionar * from map_overview; id | project_id | versão | config | localização_dos_dados | ficheiro_qgis
----+------------+---------+--------+---------------+-----------
(0 linhas)
Encerre os seus contentores Docker em execução
bash$ docker compose -f docker-compose.yml down # ou algo semelhante, consoante a sua implementação anteriorClone ou faça um pull do repositório do servidor ou fazer o download pasta de implementação e abrir
/empresapasta.bash$ cd server/deployment/enterpriseAdapte o seu atual
docker-compose.ymledocker-compose.maps.ymlficheiro para a nova versão.Se tiver instalado o Maps Stack, altere
qgis_extractoratualizar a versão da imagem de serviço para 2025.3.0 emdocker-compose.maps.yml.
Alteração que implica uma mudança de versão
Versão da imagem utilizada anteriormente para o serviço qgis_extractor (2025.1.0) não é compatível com a versão mais recente do servidor Mergin Maps .
- Se tiver instalado o Maps Stack, adicione novas variáveis de ambiente ao ficheiro
qgis_extractorserviço emdocker-compose.maps.yaml.
yaml
ambiente:
- OVERVIEWS_DATA_DIR=/data
- MM_WMS_TILE_BUFFER=100
- MM_WMS_AVOID_ARTIFACTS=1
- BROKER_URL=redis://mergin-redis:6379/0
- CELERY_RESULT_BACKEND=redis://mergin-redis:6379/0Também pode limpar as seguintes variáveis a partir de .prod.env:
bash
QGIS_EXTRACTOR_TIMEOUT
QGIS_EXTRACTOR_API_URLInicie os seus contentores Docker
bash$ docker compose -f docker-compose.yml -d up # ou algo semelhante, consoante a sua implementação $ docker compose -f docker-compose.maps.yml -d up # ou algo semelhante, consoante a sua implementaçãoVerifique se está a utilizar as versões corretas da migração da base de dados (
6cb54659c1de,e95d051969ce).bash$ docker exec merginmaps-server flask db atual INFO [alembic.runtime.migration] Contexto implementado por PostgresqlImpl. INFO [alembic.runtime.migration] Assumirá DDL transacional. 6cb54659c1de e95d051969ce- Se não vir os números das versões, execute os seguintes comandos:
bash$ docker exec merginmaps-server flask db stamp 6cb54659c1de $ docker exec merginmaps-server flask db stamp e95d051969ceExecutar a migração da base de dados:
bash$ docker exec merginmaps-server flask db atualizar community@b9ec9ab6694f $ docker exec merginmaps-server flask db atualizar enterprise@c40e5e645b57
Da versão 2025.2.x à versão 2025.7.x (CE)
Edição comunitáriaEfetuar a migração:
- Encerre os seus contentores Docker em execuçãobash
$ docker compose -f docker-compose.yml down # ou algo semelhante, consoante a sua implementação anterior - Clone ou faça um pull do repositório do servidor ou fazer o download pasta de implementação e abrir
/comunidadepasta.bash$ cd server/deployment/community - Adapte o seu atual
docker-compose.ymle.prod.envvariáveis de ambiente para a nova versão. - Atualize o ficheiro de configuração do proxy do nginx com a versão mais recente disponível no nginx.conf (Este é um passo necessário para melhorar o descarregamento de ficheiros zip a partir do painel de controlo).
- Se pretender guardar registos de diagnóstico de uma aplicação móvel e de um plug- QGIS , execute o seguinte comando para definir as permissões adequadas para a pasta
/registos_de_diagnósticoutilizado para armazenar ficheiros de registo:bash$ sh ../common/set_permissions.sh diagnostic_logs
Também pode desativar esta persistência em docker-compose.yml servidor definição do serviço. 6. Inicie os seus contentores Docker
bash
$ docker compose -f docker-compose.yml -d up # ou algo semelhante, consoante a sua implementaçãoVerifique se está a utilizar as versões corretas da migração da base de dados (
ba5051218de4).bash$ docker exec merginmaps-server flask db atual INFO [alembic.runtime.migration] Contexto implementado por PostgresqlImpl. INFO [alembic.runtime.migration] Presumirá DDL transacional. 35af0c8be41e (head) ba5051218de4- Se não vir os números das versões, execute os seguintes comandos:
bash$ docker exec merginmaps-server flask db stamp 35af0c8be41e $ docker exec merginmaps-server flask db stamp ba5051218de4Executar a migração da base de dados:
bash$ docker exec merginmaps-server flask db atualizar heads # O novo head será community@b9ec9ab6694f
Da versão 2025.3.x à versão 2025.5.x
Edição EmpresarialEfetuar a migração:
- Encerre os seus contentores Docker em execuçãobash
$ docker compose -f docker-compose.yml down # ou algo semelhante, consoante a sua implementação anterior - Por favor, clone ou faça um pull do repositório do servidor ou fazer o download pasta de implementaçãobash
$ cd server/deployment/enterprise - Adapte o seu atual
docker-compose.ymlficheiro para a nova versão. - Atualize o ficheiro de configuração do proxy do nginx com a versão mais recente disponível no nginx.conf (Este é um passo necessário para melhorar o descarregamento de ficheiros zip a partir do painel de controlo).
- Se pretender guardar registos de diagnóstico de uma aplicação móvel e de um plug- QGIS , execute o seguinte comando para definir as permissões adequadas para a pasta
/registos_de_diagnósticoutilizado para armazenar ficheiros de registo:bash$ sh ../common/set_permissions.sh diagnostic_logs
Também pode desativar esta persistência em docker-compose.yml servidor definição do serviço. 6. Inicie os seus contentores Docker
bash
$ docker compose -f docker-compose.yml -d up # ou algo semelhante, consoante a sua implementaçãoVerifique se está a utilizar as versões corretas da migração da base de dados (
5ad13be6f7ef,819e6b20ee93).bash$ docker exec merginmaps-server flask db atual INFO [alembic.runtime.migration] Contexto implementado por PostgresqlImpl. INFO [alembic.runtime.migration] Assumirá DDL transacional. 5ad13be6f7ef 819e6b20ee93- Se não vir os números das versões, execute os seguintes comandos:
bash$ docker exec merginmaps-server flask db stamp 5ad13be6f7ef $ docker exec merginmaps-server flask db stamp 819e6b20ee93Executar a migração da base de dados:
bash$ docker exec merginmaps-server flask db atualizar community@6cb54659c1de $ docker exec merginmaps-server flask db atualizar enterprise@e95d051969ce
Descarregar ficheiros zip a partir do painel de controlo
Os ficheiros ZIP são agora guardados num espaço de armazenamento temporário e são eliminados ao fim de 7 dias. Isto pode aumentar o consumo de espaço de armazenamento do Mergin Maps servidor. Certifique-se de que dispõe de espaço suficiente no seu servidor.
Ativar o início de sessão único
Para ativar o início de sessão único no seu servidor, siga as instruções descritas na secção «Implementação do início de sessão único».
Da versão 2025.2.x à versão 2025.3.x
Edição EmpresarialAlterações no comportamento da implementação
A versão 2025.3.x traz algumas alterações no Mergin Maps procedimento de orquestração e implementação do Docker Compose.
Fique a par das últimas novidades ficheiro docker-compose ou atualizar manualmente as imagens do Docker para a versão 2025.3.0. Efetue a migração:
Encerre os seus contentores Docker em execução
bash$ docker compose -f docker-compose.yml down # ou algo semelhante, consoante a sua implementação anterior # INFORMAÇÃO: Após o encerramento, atualize o ficheiro docker-compose.yml para a versão mais recentePor favor, clone o repositório do servidor ou fazer o download pasta de implementação
bash$ cd server/deployment/enterpriseSe pretender utilizar as novas pilhas de mapas web, adapte os seus atuais
.prod.envedocker-compose.ymlficheiros. Mova-os ou copie-os para oempresapasta de implementaçãobash$ cp /algum/caminho/.prod.env . # partindo do princípio de que se encontra em `server/deployment/enterprise` $ cp /algum/caminho/docker-compose.yml . # partindo do princípio de que se encontra na pasta `server/deployment/enterprise`Inicie os seus contentores Docker
bash$ docker compose -f docker-compose.yml -d up # ou algo semelhante, consoante a sua implementação $ docker compose -f docker-compose.maps.yml -d up # Se pretender implementar a pilha webmapsVerifique se está a utilizar as versões corretas (
ba5051218de4,ba5ae5972c4a).bash$ docker exec merginmaps-server flask db atual INFO [alembic.runtime.migration] Contexto impl PostgresqlImpl. INFO [alembic.runtime.migration] Assumirá DDL transacional. ba5051218de4 ba5ae5972c4a- Se não vir os números das versões, execute os seguintes comandos:
bash$ docker exec merginmaps-server flask db stamp ba5051218de4 $ docker exec merginmaps-server flask db stamp ba5ae5972c4aExecutar a migração da base de dados:
bash$ docker exec merginmaps-server flask db atualizar community@5ad13be6f7ef $ docker exec merginmaps-server flask db atualizar enterprise@819e6b20ee93
Da versão 2024.2.x à versão 2025.2.x (CE)
Antes de atualizar!
A versão 2025.2.x traz alterações significativas na Mergin Maps infraestrutura de orquestração do Docker Compose.
Pessoa anterior servidor O contentor é substituído por três contentores dedicados ao serviço, que dividem os componentes principais de Mergin Maps, servidor-gunicorn a aplicação, aipo-beterraba O agendador de tarefas do Celery e trabalhador do aipo um contentor de trabalho dedicado para tarefas do Celery.
Fique a par das últimas novidades ficheiro docker-compose ou atualizar manualmente as imagens do Docker para a versão 2025.2.2. Efetue a migração:
Encerre os seus contentores Docker em execução
bash$ docker compose -f docker-compose.yml down # ou algo semelhante, consoante a sua implementação # INFORMAÇÃO: Após o encerramento, atualize o ficheiro docker-compose.yml para a versão mais recenteVerifique novamente se as variáveis de ambiente abaixo estão disponíveis e preenchidas
.prod.envficheiro de configuração. Caso contrário, adicione-as.bashSECURITY_EMAIL_SALT='<YOUR STRONG HASH>' SECURITY_BEARER_SALT='<YOUR STRONG HASH>' PORT=5000Inicie os seus contentores Docker
- Se tiver parado os contentores durante o passo
1Com o ficheiro de configuração da nova versão, é necessário parar e remover manualmente os contentores.
bash$ docker stop merginmaps-db merginmaps-proxy merginmaps-redis merginmaps-server merginmaps-web $ docker rm merginmaps-db merginmaps-proxy merginmaps-redis merginmaps-server merginmaps-web- Depois disso, pode iniciar os novos contentores
bash$ docker compose -f docker-compose.yml -d up # ou algo semelhante, consoante a sua implementação- Se tiver parado os contentores durante o passo
Verifique se está a utilizar as versões corretas (
35af0c8be41e,a5d4defded55).bash$ docker exec merginmaps-server flask db atual INFO [alembic.runtime.migration] Contexto implementado por PostgresqlImpl. INFO [alembic.runtime.migration] Assumirá DDL transacional. 35af0c8be41e (head) a5d4defded55- Se não vir os números das versões, execute os seguintes comandos:
bash$ docker exec merginmaps-server flask db stamp 35af0c8be41e $ docker exec merginmaps-server flask db stamp a5d4defded55Executar a migração da base de dados:
bash$ docker exec merginmaps-server flask db atualizar heads
Da versão 2024.4.x à versão 2025.2.x
Antes de atualizar!
A versão 2025.2.x traz alterações significativas na Mergin Maps infraestrutura de orquestração do Docker Compose.
Pessoa anterior servidor O contentor é substituído por três contentores dedicados ao serviço, que dividem os componentes principais de Mergin Maps, servidor-gunicorn a aplicação, aipo-beterraba O agendador de tarefas do Celery e trabalhador do aipo um contentor de trabalho dedicado para tarefas do Celery.
Fique a par das últimas novidades ficheiro docker-compose ou atualizar manualmente as imagens do Docker para a versão 2025.2.0. Efetue a migração:
Encerre os contentores Docker em execução e crie as novas imagens
bash$ docker compose -f docker-compose.yml down # ou algo semelhante, consoante a sua implementação # INFORMAÇÃO: Após o encerramento, atualize o ficheiro docker-compose.yml para a versão mais recenteVerifique novamente se as variáveis de ambiente abaixo estão disponíveis e preenchidas
.prod.envficheiro de configuração. Caso contrário, adicione-as.bashSECURITY_EMAIL_SALT='<YOUR STRONG HASH>' SECURITY_BEARER_SALT='<YOUR STRONG HASH>' PORT=5000Inicie os seus contentores Docker
- Se tiver parado os contentores durante o passo
1Com o ficheiro de configuração da nova versão, é necessário parar e remover manualmente os contentores.
bash$ docker stop merginmaps-db merginmaps-proxy merginmaps-redis merginmaps-server merginmaps-web $ docker rm merginmaps-db merginmaps-proxy merginmaps-redis merginmaps-server merginmaps-web- Depois disso, pode iniciar os novos contentores
bash$ docker compose -f docker-compose.yml -d up # ou algo semelhante, consoante a sua implementação- Se tiver parado os contentores durante o passo
Verifique se está a utilizar as versões corretas (
07f2185e2428,df5b4efdae7b).bash$ docker exec merginmaps-server flask db atual INFO [alembic.runtime.migration] Contexto implementado por PostgresqlImpl. INFO [alembic.runtime.migration] Assumirá DDL transacional. 07f2185e2428 df5b4efdae7b- Se não vir os números das versões, execute os seguintes comandos:
bash$ docker exec merginmaps-server flask db stamp 07f2185e2428 $ docker exec merginmaps-server flask db stamp df5b4efdae7bExecutar a migração da base de dados:
bash$ docker exec merginmaps-server flask db atualizar community@ba5051218de4 $ docker exec merginmaps-server flask db atualizar enterprise@ba5ae5972c4a
Da versão 2024.3.x à versão 2024.4.x
Fique a par das últimas novidades ficheiro docker-compose ou atualizar manualmente as imagens do Docker para a versão 2024.4.0. Efetue a migração:
Inicie os seus contentores Docker
bash$ docker compose -f docker-compose.yml up # ou algo semelhante, consoante a sua implementaçãoVerifique se está a utilizar as versões corretas (
0e3fc92aeaaa,223e3be99e92).bash$ docker exec merginmaps-server flask db atual INFO [alembic.runtime.migration] Contexto implementado por PostgresqlImpl. INFO [alembic.runtime.migration] Assumirá DDL transacional. 0e3fc92aeaaa 223e3be99e92- Se não vir os números das versões, execute os seguintes comandos:
bash$ docker exec merginmaps-server flask db stamp 0e3fc92aeaaa $ docker exec merginmaps-server flask db stamp 223e3be99e92Executar a migração da base de dados:
bash$ docker exec merginmaps-server flask db atualização community@07f2185e2428 $ docker exec merginmaps-server flask db atualização enterprise@df5b4efdae7b
Da versão 2024.2.x à versão 2024.3.x
Fique a par das últimas novidades ficheiro docker-compose ou atualizar manualmente as imagens do Docker para a versão 2024.3.0. Efetue a migração:
Inicie os seus contentores Docker
bash$ docker compose -f docker-compose.yml up # ou algo semelhante, consoante a sua implementaçãoVerifique se está a utilizar as versões corretas (
a5d4defded55,223e3be99e92).bash$ docker exec merginmaps-server flask db atual INFO [alembic.runtime.migration] Contexto implementado por PostgresqlImpl. INFO [alembic.runtime.migration] Assumirá DDL transacional. a5d4defded55 223e3be99e92 (head)- Se não vir os números das versões, execute os seguintes comandos:
bash$ docker exec merginmaps-server flask db stamp a5d4defded55 $ docker exec merginmaps-server flask db stamp 223e3be99e92Executar a migração da base de dados:
bash$ docker exec merginmaps-server flask db atualizar community@0e3fc92aeaaa
De 1 de junho de 2023 a fevereiro de 2024.x (CE)
Fique a par das últimas novidades ficheiro docker-compose ou atualizar manualmente as imagens do Docker.
Edição comunitáriaAtualizar a imagem para 2024.2.2 e efetuar a migração:
Inicie os seus contentores Docker
bash$ docker compose -f docker-compose.yml up # ou algo semelhante, consoante a sua implementaçãoVerifique se está a utilizar as versões corretas (
35af0c8be41e,3a77058a2fd7).bash$ docker exec merginmaps-server flask db atual INFO [alembic.runtime.migration] Contexto implementado por PostgresqlImpl. INFO [alembic.runtime.migration] Assumirá DDL transacional. 3a77058a2fd7 35af0c8be41e- Se não vir os números das versões, execute os seguintes comandos:
bash$ docker exec merginmaps-server flask db stamp 35af0c8be41e $ docker exec merginmaps-server flask db stamp 3a77058a2fd7Execute a migração da base de dados; haverá várias atualizações:
bash$ docker exec merginmaps-server flask db atualizar heads
Atualizar a imagem para 2024.2.1 e efetuar a migração:
Inicie os seus contentores Docker
bash$ docker compose -f docker-compose.yml up # ou algo semelhante, consoante a sua implementaçãoVerifique se está a utilizar as versões corretas (
3a77058a2fd7,0d867687ab64).bash$ docker exec merginmaps-server flask db atual INFO [alembic.runtime.migration] Contexto implementado por PostgresqlImpl. INFO [alembic.runtime.migration] Assumirá DDL transacional. 3a77058a2fd7 0d867687ab64- Se não vir os números de versão, execute o seguinte comando:
bash$ docker exec merginmaps-server flask db stamp 3a77058a2fd7 $ docker exec merginmaps-server flask db stamp 0d867687ab64Execute a migração da base de dados; serão executadas várias atualizações em cada script:
bash$ docker exec merginmaps-server flask db atualizar community@a5d4defded55 $ docker exec merginmaps-server flask db atualizar enterprise@head
Da versão 2023.2.0+ à versão 2023.6.1
⚠️ Se estiver a utilizar uma versão do servidor inferior a 2023.2.0, é importante, em primeiro lugar, atualizar para 2023.2.0 antes de prosseguir com esta migração.
Fique a par das últimas novidades ficheiro docker-compose ou atualizar manualmente as imagens do Docker para a versão 2023.6.1. Efetue a migração:
Inicie os seus contentores Docker
bash$ docker compose -f docker-compose.yml up # ou algo semelhante, consoante a sua implementaçãoVerifique se está a utilizar a versão correta (
b6cb0a98ce20)bash$ docker exec merginmaps-server flask db current INFO [alembic.runtime.migration] Context impl PostgresqlImpl. INFO [alembic.runtime.migration] Will assume transactional DDL. b6cb0a98ce20 # <--- important- Se não vir o número da versão na última linha, execute o seguinte comando:
bash$ docker exec merginmaps-server flask db stamp b6cb0a98ce20Executar a migração da base de dados
bash$ docker exec merginmaps-server flask db atualizar 3a77058a2fd7
Inicie os seus contentores Docker
bash$ docker compose -f docker-compose.yml up # ou algo semelhante, consoante a sua implementaçãoVerifique se está a utilizar as versões corretas (
b6cb0a98ce20,0d867687ab64)bash$ docker exec merginmaps-server flask db atual INFO [alembic.runtime.migration] Contexto implementado por PostgresqlImpl. INFO [alembic.runtime.migration] Assumirá DDL transacional. b6cb0a98ce20 0d867687ab64- Se não vir os números de versão, execute o seguinte comando:
bash$ docker exec merginmaps-server flask db stamp b6cb0a98ce20 $ docker exec merginmaps-server flask db stamp 0d867687ab64Executar a migração da base de dados
bash$ docker exec merginmaps-server flask db atualizar community@3a77058a2fd7
Qualquer versão anterior à 2023.2.0
Para além de várias correções, melhorias e otimizações de desempenho, a alteração mais notável introduzida recentemente é o conceito de espaços de trabalho. No caso da Community Edition, isto significa que existe um espaço de trabalho comum e partilhado (espaço de trabalho global) para todos os utilizadores, onde todos os projetos são armazenados, em vez de se dispor de um espaço de nomes pessoal ou organizacional para os projetos.
DICA
Caso não necessite dos seus dados anteriores, aconselhamos que comece com uma implementação limpa, sem necessidade de seguir este guia de migração.
Atualização para a versão 2023.2
Sincronize todos os seus projetos e dispositivos utilizando a aplicação móvelMergin Maps e o pluginMergin Maps QGIS . Certifique-se de que não existem alterações pendentes.
Após a sincronização, todos os projetos descarregados têm de ser removidos de todos os dispositivos através da aplicação móvelMergin Maps e do pluginMergin Maps QGIS
Faça uma cópia de segurança da sua base de dados ⚠️
bash
$ docker exec mergin-db pg_dump -U postgres -Fc postgres > pg_backup.dump- Parar todos os serviços em execução Mergin Maps (a partir da pasta raiz do projeto)
bash
$ docker compose -f docker-compose.yml parar- Recuperar as alterações mais recentes
bash
$ git pull- Definir variáveis de ambiente
.prod.env. Importante ⚠️
Como mencionado anteriormente, oMergin Maps CE funciona com um único espaço de trabalho global. Vamos configurá-lo agora. Especifique o seu nome através da seguinte variável de ambiente:
GLOBAL_WORKSPACE=ShinyWorkspace- nome do seu espaço de trabalho. Uma boa opção é o nome da sua empresa ou equipa. Este valor não deve ser alterado mais tarde.
DICA
Pode encontrar aqui todas as variáveis de ambiente disponíveis, juntamente com um tutorial sobre como configurá-las.
Além disso, é necessário definir uma função predefinida para as pessoas no seu espaço de trabalho (saiba mais sobre o nosso sistema de permissões e funções aqui). Escolha uma destas opções:
GLOBAL_READ=0Todos terão o papel de convidado (sem acesso a nenhum projeto, a menos que tal acesso seja explicitamente concedido)GLOBAL_READ=1Todos terão o papel de leitor (poderão ler/descarregar todos os projetos no espaço de trabalho)GLOBAL_WRITE=1Todos terão a função de «escritor» (poderão contribuir para todos os projetos no espaço de trabalho, por exemplo, carregar ficheiros)GLOBAL_ADMIN=1todos terão a função de administrador (poderão criar novos projetos e partilhá-los com outras pessoas)
Podes definir o espaço de armazenamento máximo para o teu novo e fantástico espaço de trabalho 🌟 com a seguinte variável:
GLOBAL_STORAGE=10737418240- espaço de armazenamento do espaço de trabalho em bytes (10 GB no exemplo)
DICA
É possível criar novos utilizadores a partir de Mergin Maps painel de administração, acedendo a <your_url>/admin.
Existem algumas definições cujos valores poderá querer alterar:
WORKSPACE_STORAGE_SIZE=104857600- espaço de armazenamento da área de trabalho em bytes (100 MB no exemplo)WORKSPACE_INVITATION_EXPIRATION=7- número de dias até ao termo da validade do conviteWORKSPACE_EXPIRATION=7- número de dias para a eliminação definitiva do espaço de trabalho eliminadoUSER_WORKSPACES_ALLOWED=1- se os utilizadores podem criar os seus próprios espaços de trabalhoUSER_SELF_REGISTRATION=1- se os utilizadores podem registar-se; se o valor for 0, os novos utilizadores só podem ser adicionados pelo administrador
- Certifique-se de que o volume dos projetos é montado em
docker-composeO ficheiro continua a corresponder (pode configurar novos volumes seguindo as instruções do guia de início rápido). Mude para a nova versão do servidor e para o PostgreSQL, pelo menos para a versão 12 (recomenda-se a versão 14), executando novos contentores Docker:
bash
$ docker compose -f docker-compose.yml up- Restaurar uma cópia de segurança de uma versão mais antiga do PostgreSQL, por exemplo:
bash
$ docker cp pg_backup.dump merginmaps-db:/tmp
$ docker exec -it merginmaps-db bash
root@merginmaps-db$ pg_restore -U postgres -Fc -d postgres < /tmp/pg_backup.dumpPoderá ver alguns avisos relativos à utilização do esquema público; pode ignorá-los sem qualquer problema.
AVISO
Se as suas configurações do PostgreSQL forem personalizadas, poderá ser necessário seguir as instruções oficiais para atualizar o cluster do PostgreSQL.
Migração de bases de dados
Edição comunitáriaNesta etapa, iremos selecionar um espaço de trabalho global (por exemplo, «my-company») onde todos os seus projetos serão integrados. Os seus projetos são migrados da seguinte forma: o antigo namespace é acrescentado à frente do nome do projeto e todo o projeto é transferido para o novo espaço de trabalho global, por exemplo:
john.doe/survey -> my-company/john.doe_survey
my-org/projectA -> my-company/my-org_projectA
Executar scripts de migração da base de dados em merginmaps-server recipiente:
bash
$ docker exec -it merginmaps-server bash
# atualizar a base de dados para o estado da versão 2021.6.1,
# se existir algum registo Alembic, poderá ser necessário corrigi-lo manualmente
$ flask db stamp 2686074eff45 # ← estado em 1 de junho de 2021
$ flask db atualização dbd428cda965 # sincronização com versões anteriores a 2023
$ flask db atualizar 0ab6a1fbf974
$ echo $GLOBAL_WORKSPACE # certifique-se de que a variável GLOBAL_WORKSPACE está definida e tem o valor pretendido
$ flask db upgrade 35af0c8be41e
$ flask db atualização 1fcbea2a0f2c
$ flask db atualização 3daefa84ce67
$ flask db atualização b6cb0a98ce20Se tudo correr bem, a sua base de dados deverá ficar no seguinte estado
bash
Edição Empresarial$ flask banco de dados atual
INFO [alembic.runtime.migration] Contexto impl PostgresqlImpl.
INFO [alembic.runtime.migration] Assumirá DDL transacional.
b6cb0a98ce20 (head)
35af0c8be41e (head)Nesta etapa, todos os seus espaços de nomes de utilizador e de organização serão migrados para os espaços de trabalho, mantendo os seus nomes originais. A partir de agora, não haverá qualquer diferença entre os espaços de nomes de utilizador e de organização.
Executar scripts de migração da base de dados em merginmaps-server recipiente:
bash
$ docker exec -it merginmaps-server bash
# atualizar a base de dados para o estado da versão 2021.6.1,
# se existir algum registo Alembic, poderá ser necessário corrigi-lo manualmente
$ flask db stamp 2686074eff45 # ← estado em 1 de junho de 2021
$ flask db stamp f2f038cbae06 # ← estado em 1 de junho de 2021 (ramo «enterprise»)
$ flask db atualização community@dbd428cda965 # sincronizar com versões anteriores a 2023
# executar várias atualizações relacionadas com o espaço de trabalho
$ flask db atualizar community@0ab6a1fbf974
$ flask db atualização enterprise@92a63acb7973
$ flask db atualização community@1fcbea2a0f2c
$ flask db atualização community@3daefa84ce67
$ flask db atualização community@b6cb0a98ce20
$ flask db atualização enterprise@0d867687ab64Se tudo correr bem, a sua base de dados deverá ficar no seguinte estado
bash
$ flask banco de dados atual
INFO [alembic.runtime.migration] Contexto implementado por PostgresqlImpl.
INFO [alembic.runtime.migration] Assumirá DDL transacional.
0d867687ab64 (head)
b6cb0a98ce20 (head)A sua migração deve ter sido concluída com sucesso. Tenha em atenção que os ficheiros no seu disco não foram alterados; apenas os nomes dos projetos (espelhos de nomes) foram alterados.
Já pode descarregar e continuar a trabalhar nos seus projetos.