Instalação · 7 min read · Nov 22, 2025
Como Instalar o SolidInvoice no Ubuntu 22.04

SolidInvoice é uma solução de faturamento gratuita, simples e elegante baseada em PHP. É projetada para pequenas empresas gerenciarem suas operações de faturamento diárias. O SolidInvoice fornece uma API RESTful para integração e oferece vários canais de notificação, como mensagens de texto, e-mails ou HipChat.
Este guia mostrará como instalar o SolidInvoice em um servidor Ubuntu 22.04. Você configurará o SolidInvoice com a pilha LAMP e protegerá a instalação com Certbot e letsencrypt.
Pré-requisitos
Antes de começar, certifique-se de que você tem:
- Um servidor Ubuntu 22.04.
- Um usuário não-root com privilégios sudo.
- Um nome de domínio apontado para um endereço IP do servidor.
Instalando dependências
O SolidInvoice é um aplicativo de fatura de código aberto escrito em PHP e MySQL. Para instalá-lo, você deve instalar a pilha LAMP em seu sistema Ubuntu. Neste primeiro passo, você instalará a pilha LAMP a partir do repositório padrão do Ubuntu.
Atualize o índice de pacotes do Ubuntu com o comando abaixo.
sudo apt updateAgora instale as dependências da pilha LAMP (Linux, Apache, MySQL/MariaDB e PHP) usando o seguinte comando. Neste exemplo, você usará o PHP 8.x padrão para a instalação do SolidInvoice.
sudo apt install apache2 mariadb-server mariadb-client php php-curl php-common php-mbstring php-json php-mysql php-opcache php-bcmath php-intl php-gd php-xml php-soap php-zip php-apcuDigite Y para confirmar a instalação.

Após a instalação ser concluída, execute o seguinte comando para verificar o status dos serviços Apache e MariaDB para garantir que ambos os serviços estão em execução.
sudo systemctl status apache2
sudo systemctl status mysqlSe o Apache ou MariaDB estiverem em execução, você verá uma saída active(running).

Por fim, verifique a versão do PHP com o comando abaixo. Você verá o PHP 8.x instalado em seu sistema Ubuntu.
php -vConfigurando o servidor MariaDB
Após instalar a pilha LAMP, você precisa configurar a instalação do seu servidor MariaDB. Primeiro, você protegerá o servidor MariaDB, depois criará um novo banco de dados e usuário que o SolidInvoice usará.
Para proteger a instalação do servidor MariaDB, insira o seguinte:
sudo mariadb-secure-installationNo processo, digite Y para confirmar as alterações no MariaDB, ou N para rejeitá-las. Abaixo estão as configurações do servidor MariaDB que você será solicitado:
- A instalação padrão do MariaDB vem sem uma senha, pressione ENTER quando solicitado pela senha.
- Agora insira Y para configurar a senha root do MariaDB. Em seguida, digite a nova senha para o MariaDB e repita a senha.
- Insira Y para remover o usuário anônimo da sua instalação do MariaDB.
- Insira Y novamente quando solicitado para desabilitar o login remoto para o usuário root do MariaDB.
- Insira Y para remover o banco de dados de teste padrão do seu MariaDB.
- Por fim, insira Y para recarregar os privilégios da tabela e aplicar novas alterações.
Agora que você protegeu o MariaDB, insira o seguinte para fazer login no MariaDB como o usuário root padrão. Insira sua senha root do MariaDB quando solicitado.
sudo mariadb -u root -pUma vez logado, execute as seguintes consultas para criar um novo banco de dados solidinvoicedb, um usuário solidinvoice, com a senha p4ssword. Certifique-se de alterar os detalhes com suas informações, esses detalhes do banco de dados serão usados pelo SolidInvoice.
CREATE DATABASE solidinvoicedb;
CREATE USER solidinvoice@localhost IDENTIFIED BY 'p4ssword';
GRANT ALL PRIVILEGES ON solidinvoicedb.* TO solidinvoice@localhost;
FLUSH PRIVILEGES;
Agora execute a consulta abaixo para verificar os privilégios do usuário solidinvoice. Certifique-se de que o usuário solidinvoice pode acessar o banco de dados solidinvoicedb.
SHOW GRANTS FOR solidinvoice@localhost;Por fim, digite quit para sair do servidor MariaDB.

Configurando o PHP
Com o servidor MariaDB protegido e configurado, você configurará sua instalação do PHP. Neste caso, você precisa modificar o arquivo de configuração padrão do PHP php.ini.
Abra o arquivo de configuração padrão do PHP /etc/php/8.1/apache2/php.ini usando o editor nano.
sudo nano /etc/php/8.1/apache2/php.iniAltere as configurações padrão do PHP com o seguinte, e certifique-se de ajustar o memory_limit e date.timezone com o seu ambiente de servidor.
date.timezone = Europe/Amsterdam
memory_limit=512M
upload_max_filesize=64M
post_max_size=120M
max_execution_time=120Salve o arquivo e saia.
Agora reinicie o serviço Apache para aplicar suas modificações ao PHP com o seguinte comando.
sudo systemctl restart apache2Baixando o SolidInvoice
Agora que você tem o MariaDB e o PHP configurados, você pode baixar o código-fonte do SolidInvoice e configurar a instalação com as permissões e propriedade adequadas.
Vá até o diretório /var/www e baixe o código-fonte do SolidInvoice usando wget. Verifique a página de lançamentos do SolidInvoice para obter a versão mais recente.
cd /var/www/
wget https://github.com/SolidInvoice/SolidInvoice/releases/download/2.2.5/SolidInvoice-2.2.5.zipExtraia o código-fonte do SolidInvoice para o diretório solidinvoice e altere a propriedade para o usuário www-data. Assim, o diretório DocumentRoot ou Web-root para a instalação do SolidInvoice será /var/www/solidinvoice.
unzip SolidInvoice-2.2.5.zip -d solidinvoice
sudo chown -R www-data:www-data /var/www/solidinvoiceAgora execute o comando abaixo para garantir que o usuário www-data pode escrever em alguns diretórios e arquivos do SolidInvoice.
sudo chmod u+rw /var/www/solidinvoice/app/cache
sudo chmod u+rw /var/www/solidinvoice/app/logs
sudo chmod u+rw /var/www/solidinvoice/var/cache
sudo chmod u+rw /var/www/solidinvoice/var/logssudo chmod u+rw /var/www/solidinvoice/web/upload
sudo chmod u+rw /var/www/solidinvoice/app/config/parameters.ymlConfigurando o host virtual do Apache
Depois de configurar o diretório DocumentRoot para o SolidInvoice, você precisa criar um novo host virtual do Apache que será usado para executar a instalação. Portanto, certifique-se de que você preparou seu nome de domínio para o SolidInvoice.
Primeiro, execute o comando abaixo para habilitar o módulo rewrite no Apache.
sudo a2enmod rewriteCrie uma nova configuração de host virtual do Apache /etc/apache2/sites-available/solidinvoice.conf usando o comando do editor nano abaixo.
sudo nano /etc/apache2/sites-available/solidinvoice.confInsira a seguinte configuração e certifique-se de alterar a opção ServerName com seu domínio de destino.
ServerName invoice.howtoforge.local
ServerAlias www.invoice.howtoforge.local
DocumentRoot /var/www/solidinvoice/public
# habilitar as reescritas .htaccess
AllowOverride All
Order allow,deny
Allow from All
ErrorLog /var/log/apache2/solidinvoice.error.log
CustomLog /var/log/apache2/solidinvoice.access.log combined
Salve o arquivo e saia do editor.
Agora insira o seguinte comando para ativar o arquivo de host virtual solidinvoice.conf e verificar sua sintaxe do Apache. Se você tiver uma sintaxe adequada, verá uma saída ‘Syntax OK‘.
sudo a2ensite solidinvoice.conf
sudo apachectl configtestPor fim, insira o comando abaixo para reiniciar o Apache e aplicar o novo arquivo de host virtual solidinvoice.conf. Uma vez executado, seu SolidInvoice deve estar em execução.
sudo systemctl restart apache2
Protegendo o SolidInvoice com HTTPS
Neste exemplo, você protegerá o SolidInvoice com certificados SSl/TLS via Certbot e letsencrypt. Portanto, agora você instalará o Certbot e gerará certificados SSL/TLS para o seu nome de domínio SolidInvoice.
Primeiro, instale o Certbot e o plugin Certbot Apache com o seguinte comando. Digite Y para confirmar a instalação.
sudo apt install certbot python3-certbot-apacheUma vez que a instalação esteja completa, gere certificados SSL/TLS usando o seguinte comando certbot. Certifique-se de alterar as informações do nome de domínio e endereço de e-mail com seus detalhes.
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d howtoforge.localApós o processo ser concluído, seus certificados SSL/TLS devem estar disponíveis no diretório /etc/letsencrypt/live/domain.com. Além disso, sua instalação do SolidInvoice deve estar protegida com HTTPS automaticamente.
Instalando o SolidInvoice
Abra seu navegador da web e visite seu nome de domínio, como https://invoice.howtoforge.local/. Na Verificação dos Requisitos do Sistema, certifique-se de que tudo está OK, então clique em Próximo para confirmar.

Selecione o driver do banco de dados para MySQL e insira os detalhes do seu banco de dados MariaDB e usuário para o SolidInvoice. Uma vez feito, clique em Próximo novamente.

Agora você pode ver o esquema do banco de dados para o SolidInvoice sendo criado, clique em Próximo para continuar.

Para as Configurações do Sistema, selecione o idioma padrão como inglês e insira os detalhes do seu usuário administrador, e-mail e senha. Em seguida, clique em Próximo novamente para confirmar.

Uma vez que a instalação esteja completa, você verá a saída ‘Você instalou o SolidInvoice com sucesso!‘ e instruções adicionais para criar um cron job.

Volte ao terminal do servidor e crie um novo cron job para o usuário www-data com o comando abaixo.
sudo crontab -u www-data -eCole o script do crontab da página, depois salve e feche o arquivo.
* * * * * php /var/www/solidinvoice/bin/console cron:run -e prod -nVolte ao seu navegador da web e clique em Entrar agora.

Agora você será solicitado a criar o nome da sua empresa e a moeda padrão. Clique em Criar para confirmar.

Se tudo correr bem, você deve ver o painel do SolidInvoice como o seguinte.

Conclusão
Parabéns! Você instalou o SolidInvoice no servidor Ubuntu 22.04. Você tem o SolidInvoice em execução com a pilha LAMP (Apache, MySQL/MariaDB e PHP) no Ubuntu e protegeu sua instalação com HTTPS via Letsencrypt. Agora você pode adicionar novos componentes, como o servidor SMTP ao SolidInvoice e usá-lo.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.