Instalação

Instalar o Toutadmin

Duas edições do mesmo produto: uma corre como serviço no seu servidor, a outra deposita-se num alojamento partilhado. Sem base de dados exigida, sem serviço de terceiros — mas um servidor MySQL é conduzido se tiver um. Conte uma hora.

Alojado na Europa, sem nada a instalar: gratuito até cinco empregados, e o produto inteiro desde o primeiro dia.

A descarga está aberta a toda a gente

A fórmula gratuita não se fica pelo SaaS: até cinco empregados pode igualmente instalar o produto em sua casa — os seus ficheiros, a sua base, as suas cópias de segurança — sem pagar nada. O que decide a fórmula é o efectivo, não o sítio onde a instância corre. Acima de cinco empregados é preciso uma assinatura, quer a instância corra em nossa casa quer na sua.

Ver as fórmulas

Qual instalar

A escolha depende do seu alojamento, não das suas necessidades funcionais: as duas edições fazem exatamente o mesmo.

Edição Node

Para um servidor que você administra: uma máquina, um serviço permanente, um proxy inverso à frente.

Node 22, um compilador C, um disco local. Uma máquina de um núcleo chega para algumas dezenas de pessoas. Um servidor MySQL é conduzido se tiver um; caso contrário, o SQLite não pede nada.

Edição PHP

Para um alojamento partilhado: uma pasta para enviar, um ficheiro para preencher, uma tarefa agendada. Não é precisa linha de comandos.

PHP 8.1 e a extensão SQLite. Nenhuma dependência a instalar: nem Composer, nem gestor de pacotes. E a extensão PDO MySQL, se preferir um servidor de base de dados.

A escolha continua reversível

As duas edições partilham o mesmo esquema de base de dados e o mesmo formato de palavra-passe. Passar de uma à outra é copiar um ficheiro de base e cinco pastas: não há conversão, e ninguém tem de mudar de palavra-passe.

SQLite ou MySQL

E que base de dados

A segunda escolha, e a única que se muda com dificuldade. Não depende da edição: ambas aceitam os dois motores, e as quatro combinações passam os mesmos testes.

SQLite

Um ficheiro no disco do servidor. Nada para instalar, nada para administrar, nada para vigiar — e a instância muda-se copiando uma pasta.

É o valor por omissão, e a resposta certa na maioria dos casos: um servidor aplicacional e um disco local que sobrevive de uma entrega para a outra.

MySQL ou MariaDB

Um servidor de base de dados, na máquina ou noutro ponto da rede. Os dados vivem onde o seu serviço de informática já os salvaguarda, replica e vigia.

A tomar por três razões: vários servidores aplicacionais sobre a mesma base, uma política interna que o impõe, ou um disco aplicacional efémero — um contentor recriado a cada entrega.

O MySQL não é a escolha da velocidade

É a crença mais difundida, e é falsa: o SQLite vive dentro do processo, o MySQL atrás de um socket. Medido aqui sobre duas mil operações, o SQLite vai de duas vezes e meia a cento e cinquenta vezes mais depressa consoante a operação — e aguenta a comparação mesmo com oito escritores em simultâneo. O MySQL escolhe-se pelo sítio onde vivem os dados e por quem os administra, não pelo tempo de resposta.

O pormenor, com os números

Em cinco minutos

A instalação rápida

O suficiente para abrir o assistente. O detalhe vem logo a seguir, passo a passo, com o que cada comando faz e porquê.

Edição Node

Três comandos num servidor que administra. O último gera um testemunho de instalação e arranca a instância.

git clone <votre-dépôt> toutadmin
cd toutadmin && npm ci --omit=dev
INSTALL_TOKEN=$(openssl rand -hex 16) \
NODE_ENV=production node src/server.js

Edição PHP

Nenhuma linha de comandos: uma pasta para depositar, um ficheiro para copiar, um direito de escrita para abrir.

# 1. déposer le dossier (racine web → public/)
# 2. cp config.sample.php config.php
# 3. chmod 770 data/
# 4. ouvrir https://votre-domaine/install

Depois o assistente faz o resto

A instância arranca vazia e fecha-se sobre si mesma: enquanto não estiver instalada, qualquer endereço leva ao assistente, e uma vez instalada o assistente desaparece de vez.

  1. 1 LínguaA da instância, entre as dezasseis. Muda-se mais tarde, e cada um guarda a sua.
  2. 2 Pré-requisitosO assistente verifica o que tem debaixo dos pés: versão, direitos de escrita, base, pastas. O que falta é nomeado, não adivinhado.
  3. 3 Base de dadosSQLite num ficheiro, que não pede nada, ou MySQL / MariaDB se tiver um. O assistente tenta a ligação antes de se comprometer com ela.
  4. 4 OrganizaçãoO nome da empresa e a quota anual de férias. Duas respostas, modificáveis depois.
  5. 5 AdministradorA primeira conta. Doze caracteres no mínimo: é a única conta que pode criar outras.
  6. 6 InstalaçãoO resumo e depois a instalação em quatro patamares anunciados no ecrã. O assistente fecha-se definitivamente.
https://votre-domaine/install

Ponha o testemunho de instalação antes de abrir a porta

Entre o primeiro arranque e a sua passagem pelo assistente, o primeiro a chegar criaria a conta de administração. INSTALL_TOKEN fecha essa janela: sem ele, o assistente recusa-se a abrir.

Assistente de instalação
Assistente de instalação Assistente de instalação
Edição Node

No seu servidor, em quatro passos

  1. Obter e instalar

    npm ci em vez de npm install: instala exatamente o que o ficheiro de bloqueio descreve. Num servidor, uma versão que escorrega é uma avaria que ninguém percebe.

    git clone <votre-dépôt> /var/www/toutadmin
    cd /var/www/toutadmin
    npm ci --omit=dev
  2. Configurar

    Tudo se define por variáveis de ambiente, e nenhuma é obrigatória. Ponha INSTALL_TOKEN antes de abrir a porta: entre o primeiro arranque e a sua passagem pelo assistente, o primeiro a chegar criaria a conta de administração.

    cp .env.example .env
    # PORT, NODE_ENV=production, INSTALL_TOKEN…
  3. Entregar ao sistema

    Lançado à mão, o produto para quando fecha o terminal. O serviço reinicia sozinho e só pode escrever na sua pasta de dados.

    sudo systemctl enable --now toutadmin
    journalctl -u toutadmin -f
  4. Cifrar a ligação

    Nunca sirva a porta da aplicação diretamente na internet. Atrás do proxy, a instância coloca ela própria os cabeçalhos de segurança — incluindo HSTS, e só sobre uma ligação já cifrada.

    sudo certbot --nginx -d intranet.exemple.fr
Edição PHP

Em alojamento partilhado, em quatro passos

  1. Enviar os ficheiros

    É o passo em que se falha. Se o servidor servir a pasta inteira, a base de dados fica descarregável por qualquer pessoa: contas, resumos de palavras-passe e cofre incluídos.

    # déposer le dossier ; la racine web pointe sur public/, pas sur le dossier
  2. Escrever a configuração

    É o assistente que escreve a configuração, e fá-lo em último lugar: enquanto o ficheiro não existir, uma instalação interrompida não deixou nada atrás de si. Coloca nele uma chave própria da instância, que sela as assinaturas e cifra os segredos na base — guarde-a com o resto.

    cp config.sample.php config.php
    php -r "echo bin2hex(random_bytes(32));"   # session_secret
  3. Abrir as permissões de escrita

    O SQLite escreve ficheiros vizinhos da base: é a pasta que tem de ser gravável, não apenas o ficheiro. O resto do produto pode ficar apenas de leitura.

    chmod 770 data/     # le dossier, pas seulement la base
  4. Agendar a varredura

    Um site PHP só vive durante um pedido. A tarefa agendada fecha os contratos terminados, emite as faturas recorrentes, envia os webhooks e cria as cópias de segurança.

    * * * * * /usr/bin/php /var/www/toutadmin/tools/cron.php

Antes de abrir aos colegas

Uma cópia que sai do edifício

Faça uma já, enquanto a base é pequena, e configure o destino remoto. Um arquivo que fica no servidor que protege não protege nada.

Uma conta de ensaio sem permissões

Entre com ela e dê uma volta. É a única forma de ver a ferramenta como os seus colegas a verão — e a verificação que mais vezes se salta.

Dois administradores, não um

Se ativar a autenticação em dois passos e perder tanto o telemóvel como os códigos de recuperação, só outro administrador lhe pode reabrir a porta. Não existe porta das traseiras.

O tutorial completo está na documentação

Esta página dá o esqueleto. A documentação dá tudo o resto: configuração do servidor frontal, permissões exatas, certificados, reposição, atualização, resolução de problemas por sintoma — e os dois tutoriais por inteiro, um por edição.

Comece grátis e mude de plano quando crescer

Os cinco primeiros trabalhadores são gratuitos, sempre. Acima disso, 5 € por trabalhador e por mês. Nenhum cartão para experimentar.