Este guia orienta-o através da implantação de uma instância rtCloud auto-alojada num servidor Linux a partir do zero. No final, terá um rtCloud acessível no seu navegador.

Pré-requisitos

Certifique-se de que o seu servidor cumpre os seguintes requisitos antes de começar:

Hardware

RecursoMínimoRecomendado
RAM2 GB4 GB
Disco10 GB40 GB
CPU1 vCPU2 vCPUs

Software

SoftwareVersão
SOUbuntu 20.04 LTS ou mais recente (ou qualquer Linux com suporte Docker)
Docker20.10 ou mais recente
Docker Composev2.x (docker compose) ou v1.x (docker-compose)

Instalar Docker no Ubuntu:

  curl -fsSL https://get.docker.com | sh
  

Verifique a instalação:

  docker --version
docker compose version
  

Passo 1 — Obter os Ficheiros

Clone o repositório de implantação para o seu servidor:

  git clone ssh://git@rtgit.rta.vn:2224/rtlab/rtwebteam/rta-smart-survey-docker.git rtcloud
cd rtcloud
  

Passo 2 — Configurar o Ambiente

Copie o ficheiro de configuração de exemplo:

  cp .env.production.sample .env
  

Abra o .env num editor de texto e preencha os valores necessários:

  # Identificador único para esta implantação (sem espaços, sem caracteres especiais)
PROJECT_ID=myproject

# Domínio ou endereço IP onde os utilizadores acederão à aplicação
# Exemplo: rtcloud.example.com  ou  192.168.1.100
PROJECT_URL=rtcloud.example.com

# Protocolo: use "https" se tiver um domínio com SSL, "http" caso contrário
HTTP_PROTOCOL=https

# Palavras-passe fortes e únicas — altere as três antes de iniciar
MYSQL_PASSWORD=change_me_strong_password
MYSQL_ROOT_PASSWORD=change_me_root_password
ADMIN_PASSWORD=change_me_admin_password
  

Importante: Apenas .env é lido automaticamente pelo Docker Compose. Não crie um ficheiro chamado .env.production, pois isso causaria confusão. O ADMIN_PASSWORD é aplicado apenas na primeira inicialização de uma base de dados nova.


Passo 3 — Iniciar os Contentores

Lance todos os serviços em segundo plano:

  docker compose -f docker-compose.production.yml up -d
  

A primeira inicialização demora 3–5 minutos enquanto o Docker:

  1. Descarrega a imagem da aplicação rtCloud (~1 GB de download)
  2. Inicializa a base de dados MySQL
  3. Carrega o esquema base
  4. Executa todas as migrações de base de dados pendentes

Monitorize o progresso de inicialização em tempo real:

  docker compose -f docker-compose.production.yml logs -f rtcloud
  

Aguarde até ver a saída indicando que a aplicação está pronta. Também pode observar o estado de saúde do contentor:

  watch docker compose -f docker-compose.production.yml ps
  

Passo 4 — Aceder à Aplicação

Assim que ambos os contentores mostrarem Up (healthy), abra o seu navegador:

  http://<PROJECT_URL>:8080
  

Inicie sessão usando a conta de administrador:

CampoValor
Nome de utilizadoradmin
Palavra-passeO valor que definiu para ADMIN_PASSWORD em .env

Altere a palavra-passe do administrador imediatamente após o seu primeiro início de sessão na página de configurações da conta.


Passo 5 — Verificar Todos os Serviços

Verifique se todos os contentores estão a funcionar e saudáveis:

  docker compose -f docker-compose.production.yml ps
  

Saída esperada:

  NAME                    IMAGE                                   STATUS
rtcloud-app             rtawebteam/rta-smartsurvey:...          Up (healthy)
rtcloud-mysql           mysql:8.0                               Up (healthy)
  

Se um contentor mostrar Up (starting) ou Up (unhealthy), aguarde 30–60 segundos adicionais e verifique novamente. O MySQL pode demorar até um minuto para inicializar completamente na primeira inicialização.


Referência de Portas

PortaServiçoDescrição
8080Aplicação rtCloudUI web principal (configurável via APP_PORT)
3838Servidor ShinyAnálises e visualizações baseadas em R (configurável via SHINY_PORT)

O MySQL (porta 3306) e quaisquer serviços opcionais (Keycloak) são apenas internos e não são expostos ao host por predefinição.


Próximos Passos

A sua instância rtCloud está agora a funcionar. Considere estas tarefas de seguimento:

  • Ativar HTTPS — Aponte um domínio para o seu servidor e configure SSL com Let’s Encrypt. Consulte Implantação na Cloud para configuração HTTPS automatizada.
  • Rever todas as configurações — Consulte a Referência de Configuração para ajustar a sua implantação para produção.
  • Configurar SSO — Ligue um fornecedor de identidade para autenticação centralizada de utilizadores. Consulte Autenticação SSO.
  • Planear os seus backups — Consulte a página de Manutenção para procedimentos de backup e atualização.
Esta página foi útil?