Installer Wallos avec Docker

Guide d'installation de Wallos sous Docker.

Installer Wallos avec Docker
wallos docker

Au sommaire :

  • 1-Qu'est-ce que Wallos ?
  • 2-Prérequis
  • 3-Déploiement
  • 4-Configuration

1-Qu'est-ce que Wallos ?

Wallos est une application Docker codée en PHP qui va vous permettre de lister vos abonnements et frais mensuel, vous avertir via SMTP (de 1 à 7 jour à l’avance) lorsque vous serez prélevé sur votre compte, télécharger les icônes des entreprises auquel vous êtes abonné, gérer de multiples devises (en plus de convertir vos abonnements avec le taux du moment) et vous affiche le tout sous forme de statistiques pour que le tout soit plus lisible.

C'est très simple à mettre en place, très léger (10 Mo en RAM) et c'est exactement ce qu'il me fallait pour avoir une visualisation de mes dépenses.

Ça fait déjà parti des applications qui tournent en permanence sur mon serveur.

2-Prérequis

Pour déployer Wallos, vous devez disposer d'une machine virtuelle fonctionnant sous Ubuntu Server.

Création de la machine virtuelle :

Virtualisation avec Proxmox VE : Si vous partez de zéro, suivez mon guide détaillé pour virtualiser Ubuntu sur Proxmox VE avec des réglages optimisés.

Virtualiser Ubuntu Server sur Proxmox VE
Guide d’installation de Ubuntu Server sur Proxmox VE avec mes meilleurs réglages.

Automatisation avec Cloud-Init : Pour gagner du temps lors de la configuration, utilisez un template Cloud-Init. Cela permet d'automatiser et de simplifier l'initialisation de vos machines virtuelles. Retrouvez les instructions dans ce guide.

Initialiser vos machines virtuelles avec Cloud-init sur Proxmox VE
Guide d’installation de Cloud-Init qui va vous permettre d’automatiser vos déploiements

Installation des outils nécessaires :

Docker et Docker Compose : Une fois la machine virtuelle prête, installez Docker et Docker Compose, indispensables pour gérer et orchestrer vos conteneurs. Ce guide vous accompagnera dans l'installation.

Installer Docker
Guide d’installation de Docker.

Note : Habituellement, je partage ma configuration Traefik, mais j'ai rencontré un léger problème lors de la configuration. Dès que ce problème sera résolu, je mettrai à jour le tutoriel.

3-Déploiement

Commencez par créer un dossier "docker" à la racine du dossier utilisateur"

mkdir -p ~/docker

Créez un fichier nommé "compose.yml"

touch ~/docker/compose.yml

Ouvrez le fichier "compose.yml" et copiez cette configuration.

networks:
#défault network
  default:
    driver: bridge

services:
      
  wallos:
    image: bellamy/wallos:latest
    container_name: wallos
    environment:
      - PUID=${PUID}
      - PGID=${PGID}
      - TZ=${TZ}
    networks:
      - default
    ports:
      - 8282:80
    volumes:
      - ${APPDATA}/wallos/db:/var/www/html/db
      - ${APPDATA}/logos:/var/www/html/images/uploads/logos
    restart: unless-stopped
  • image : l'image officielle de Wallos dans sa dernière version
  • container_name : le nom du conteneur
  • environment : indiquez les variables de base des applications Linuxserver.io comme le PUID (utilisateur), le PGID (groupe) et la TZ (timezone)
  • network : le réseau par défaut
  • ports : 8282 (ne jamais utiliser les ports 80 et 443 dédiés respectivement aux renouvellement des certificats SSL et à l'accès de vos applications sur l'internet public)
  • volumes : indiquez le chemin pour la base de données et les logos qui seront téléchargés par l'application
  • restart : unless-stopped

Téléchargez l'image et déployez le conteneur.

docker compose pull && docker compose create

Puis démarrez le conteneur.

docker start wallos

Accédez à l'application via l'adresse IP locale, vous devriez tomber sur la page d'accueil.

4-Configuration

Indiquez les informations suivantes :

  • Username : nom d'utilisateur
  • Email : votre adresse mail
  • Password (un mot de passe robuste (utilisez le générateur de mots de passe de l'extension Bitwarden sur Chrome/Firefox)
  • Confirm Password : confirmez le mot de passe
  • Main Currency : dans notre cas ce sera l'euro (cette monnaie en décrépitude, l'Europe c'est la paix ils disaient, j'arrête j'arrête haha...)
  • Language : Anglais ou Français selon vos habitudes

Ensuite, connectez-vous avec vos identifiants.

Félicitation!!!! Vous accédez à l'application. Cliquez sur "Nouvel Abonnement".

  • Nom de l'abonnement : Sosh pour l'exemple. Pensez à cliquer sur l'icône de la loupe pour télécharger le logo).
  • Prix : le montant (vous pouvez également choisir la devise).
  • Cycle de facturation : si c'est mensuel, indiquez une fois par mois et le prochain paiement mais vous pouvez choisir quotidien, hebdomadaire ou annuel.
  • Méthode de paiement : j'utilise le plus souvent Paypal, Bank Transfert et Money (cash).
  • Catégorie : choisissez la catégorie ou bien allez la créer dans les paramètres.
  • Payé par : Mahmoud évidemment!!!!
  • Site web : facultatif.
  • Notes : mettre un rappel par exemple (facultatif).

Cliquez sur "Enregistrer".

On vois bien que l'abonnement est ajouté.

Vous pouvez également trier de la manière suivante.

Ensuite, cliquez sur "Paramètres".

Dans les paramètres d'affichage, cochez les deux cases pour calculer et afficher le prix mensuel pour tout vos abonnements et effectuer convertir vos paiements dans une autre devise dans votre devise principale.

Note : pour les paramètres SMTP, pensez à créer une adresse mail spécifiquement dédié à cet usage et à ne pas mettre la votre car comme indiqué le mot de passe est transmis et stocké en brut sans chiffrement.

  • Me prévenir : entre 1 et 7 jours
  • Adresse SMTP : le serveur SMTP de Outlook ou Gmail (smtp-mail.outlook.com ou smtp.gmail.com)
  • Nom d'utilisateur : votre adresse mail
  • Port : 587
  • Mot de passe SMTP : le mot de passe de votre adresse mail
  • De l'adresse courriel (facultatif) : l'adresse qui recevra le mail "test".

Je clique sur "Enregistrer" et sur "Test". Je reçois bien la notification.

Voilà un aperçu de la partie "Statistiques générales" qui vous affichent :

  • Les abonnements actifs
  • Les coûts mensuel
  • Le coût annuel
  • Le coût moyen mensuel de l'abonnement
  • Le coût d'abonnement le plus élevé
  • Le montant restant à payer ce mois-ci