Introdução

O Firefly III é uma aplicação de código aberto para gerenciamento financeiro pessoal, amplamente adotada por quem busca controle e privacidade sobre seus dados. Neste artigo, você aprenderá a instalar o Firefly III manualmente (sem Docker) em uma instância da LetsCloud, aproveitando os recursos escaláveis da plataforma para manter suas finanças organizadas, seguras e sob total controle.

Objetivos

O objetivo deste tutorial é orientar usuários que desejam instalar e configurar o Firefly III em uma instância da LetsCloud sem o uso de Docker. A instalação será realizada manualmente, oferecendo maior controle e flexibilidade na gestão do ambiente, utilizando uma stack baseada em Linux, PHP e MariaDB. Este guia é ideal para desenvolvedores, profissionais de infraestrutura e entusiastas que buscam autonomia para gerenciar suas finanças pessoais de forma segura e auto-hospedada.

Requisitos

Antes de começar, você precisará de:

  • Um plano ativo da LetsCloud
  • Uma instância Linux (recomendado: Ubuntu 24.04 LTS)
  • Acesso root (ou sudo)
  • Nome de domínio (opcional, mas recomendado)
  • Servidor Web Nginx
  • PHP 8.1 ou superior com extensões necessárias
  • MySQL/MariaDB
  • Composer
  • Git

Passo a Passo de Instalação

Atualize seu sistema

$

sudo apt update && sudo apt upgrade -y

Instale as dependências

$

sudo apt install php php-cli php-common php-mbstring php-xml php-bcmath php-curl php-mysql php-tokenizer php-zip unzip curl git composer nginx mariadb-server -y

Configure o banco de dados

$

sudo mysql -u root

mysql>mysql>mysql>mysql>mysql>

CREATE DATABASE firefly CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'fireflyuser'@'localhost' IDENTIFIED BY 'senha_segura'; GRANT ALL PRIVILEGES ON firefly.* TO 'fireflyuser'@'localhost'; FLUSH PRIVILEGES; EXIT;

Clone o Firefly III

$$$$

cd /var/www/ sudo git clone https://github.com/firefly-iii/firefly-iii.git cd firefly-iii sudo git checkout main

Configure o ambiente

$$

cp .env.example .env nano .env

Altere as variáveis:

.env

APP_KEY=base64:...
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=firefly
DB_USERNAME=fireflyuser
DB_PASSWORD=senha_segura

Gere a chave da aplicação

php artisan key:generate

Instale as dependências e configure permissões

$$$$

composer install --no-dev --optimize-autoloader php artisan migrate --seed sudo chown -R www-data:www-data /var/www/firefly-iii sudo chmod -R 755 /var/www/firefly-iii/storage

Configure o Nginx

$

sudo nano /etc/nginx/sites-available/firefly

Conteúdo do arquivo:

firefly

server { listen 80; server_name seu_dominio.com;

root /var/www/firefly-iii/public;
index index.php;

location / {
    try_files $uri $uri/ /index.php?$query_string;
}

location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php8.1-fpm.sock;
}

location ~ /\.ht {
    deny all;
}

}

Habilite o site:

$$$

sudo ln -s /etc/nginx/sites-available/firefly /etc/nginx/sites-enabled/ sudo nginx -t sudo systemctl reload nginx

Acesso

Agora, acesse o Firefly III pelo IP da instância ou pelo domínio configurado:

http://<seu-ip-ou-dominio>

Dica de Segurança

Recomenda-se configurar HTTPS com Let's Encrypt utilizando Certbot:

$$

sudo apt install certbot python3-certbot-nginx -y sudo certbot --nginx

Conclusão

Com a LetsCloud, você tem a liberdade de criar ambientes personalizados como este, com controle total sobre segurança, escalabilidade e personalização. O Firefly III é uma excelente escolha para gerenciar finanças pessoais ou até mesmo em pequenos negócios.

Read more about: UbuntuOperating SystemPT-BR