How to set up Mastodon using Docker Compose

Prérequis#

  • Docker et Docker Compose installés
  • Un nom de domaine pointant vers votre serveur

1. Créer le répertoire du projet#

mkdir mastodon
cd mastodon

2. Créer le fichier Docker Compose#

Créez un fichier docker-compose.yml :

version: '3'
services:
  db:
    restart: always
    image: postgres:14-alpine
    shm_size: 256mb
    networks:
      - internal_network
    healthcheck:
      test: ['CMD', 'pg_isready', '-U', 'postgres']
    volumes:
      - postgres_data:/var/lib/postgresql/data
    environment:
      - POSTGRES_HOST_AUTH_METHOD=trust

  redis:
    restart: always
    image: redis:7-alpine
    networks:
      - internal_network
    healthcheck:
      test: ['CMD', 'redis-cli', 'ping']
    volumes:
      - redis_data:/data

  web:
    restart: always
    image: tootsuite/mastodon:latest
    networks:
      - external_network
      - internal_network
    healthcheck:
      test: ['CMD-SHELL', 'wget -q --spider http://localhost:3000/health || exit 1']
      timeout: 10s
    depends_on:
      - db
      - redis
    environment:
      - DB_HOST=db
      - DB_USER=postgres
      - DB_NAME=postgres
      - DB_PASS=
      - REDIS_HOST=redis
      - LOCAL_DOMAIN=your-domain.com
      - SINGLE_USER_MODE=false
      - SMTP_SERVER=smtp.mailgun.org
      - SMTP_PORT=587
      - SMTP_LOGIN=your-smtp-login
      - SMTP_PASSWORD=your-smtp-password
      - SMTP_FROM_ADDRESS=notifications@your-domain.com
    volumes:
      - ./public/system:/mastodon/public/system
    ports:
      - "3000:3000"
    command: bash -c "rm -f /mastodon/tmp/pids/server.pid && bundle exec rails s -p 3000"

  streaming:
    restart: always
    image: tootsuite/mastodon:latest
    networks:
      - external_network
      - internal_network
    depends_on:
      - db
      - redis
    environment:
      - DB_HOST=db
      - DB_USER=postgres
      - DB_NAME=postgres
      - DB_PASS=
      - REDIS_HOST=redis
      - LOCAL_DOMAIN=your-domain.com
    volumes:
      - ./public/system:/mastodon/public/system
    ports:
      - "4000:4000"
    command: node ./streaming

  sidekiq:
    restart: always
    image: tootsuite/mastodon:latest
    networks:
      - internal_network
    depends_on:
      - db
      - redis
    environment:
      - DB_HOST=db
      - DB_USER=postgres
      - DB_NAME=postgres
      - DB_PASS=
      - REDIS_HOST=redis
      - LOCAL_DOMAIN=your-domain.com
    volumes:
      - ./public/system:/mastodon/public/system
    command: bundle exec sidekiq

networks:
  external_network:
  internal_network:
    internal: true

volumes:
  postgres_data:
  redis_data:

3. Créer le fichier d’environnement#

Créez un fichier .env.production avec vos paramètres :

Key Life Advice from People in Their 40s to Those in Their 20s

Conseils essentiels sur la vie de personnes dans la quarantaine à celles dans la vingtaine#

Santé physique & soins personnels#

  • Prenez soin de vos dents – c’est la seule paire que vous aurez jamais
  • Prenez soin de vos genoux et de votre dos
  • Étirez-vous chaque jour, ou du moins plus que jamais – restez souple, car une fois la souplesse perdue, il est presque impossible de la retrouver
  • N’attendez pas d’être en forme – commencez à vous exercer maintenant, de la manière qui vous plaît
  • Utilisez une crème solaire et buvez beaucoup d’eau

Santé mentale & perception de soi#

  • Arrêtez de vous soucier de ce que pensent les autres – c’était l’un des points les plus soulignés
  • Vous n’êtes pas spécial, personne ne s’intéresse à ce que vous faites, et plus tôt vous l’accepterez, plus tôt vous pourrez être en paix avec vous-même
  • Ne vous prenez pas trop au sérieux – vous allez probablement regarder en arrière dix ans plus tard, légèrement honteux de la profondeur que vous pensiez avoir
  • Il est normal et sain de rester en silence – posez votre téléphone et simplement être

Temps & perspective sur la vie#

  • Le temps passe très vite – ne perdez pas une journée
  • Pourchassez vos rêves ! Vous ne voulez pas avoir 80 ans et regretter de ne pas avoir voyagé ou poursuivi votre passion
  • Vous n’avez pas autant de temps que vous le pensez – faites quelque chose chaque jour, même si c’est juste pour vous-même

Comparaisons sociales & calendriers de vie#

  • Ne tombez pas dans le piège de croire que tout le monde de votre âge a quelque chose que vous n’avez pas
  • Une fois sorti de l’école, il n’y a plus de calendriers – vous n’êtes pas censé faire quoi que ce soit à un moment précis de votre vie
  • Ne vous inquiétez pas de l’école secondaire – une fois terminée, personne ne s’en soucie, sauf pour obtenir votre diplôme

Relations & vie sociale#

  • Choisissez vos amis avec sagesse – ne gardez pas des amis qui vous abattent, qui ne vous appellent que quand ils ont besoin de quelque chose, ou qui freinent votre évolution
  • Demandez-le – que ce soit la personne qui fait battre votre cœur ou la augmentation de salaire que vous méritez, les choses ne viendront pas toutes seules

Sagesse financière#

  • Épargnez de l’argent et investissez – les investissements doublent environ tous les dix ans
  • Faire quelque chose qui vous plaît comme métier est plus gratifiant que faire quelque chose qui rapporte énormément

Croissance personnelle#

  • Échouez davantage – l’échec n’est pas une catastrophe, mais une partie du processus d’amélioration
  • Désintoxiquez-vous des mensonges sociétaux et examinez vos croyances en profondeur
  • Apprenez à vivre dans le présent – le passé n’est que mémoire et le futur, une imagination

Source : commentaires Reddit

Comparison of WHPH and Super Productivity Apps

WHPH (Work Hard Play Hard)#

Fonctionnalités principales :

  • Gestion des tâches : organisez et suivez efficacement vos tâches quotidiennes
  • Suivi des habitudes : développez et maintenez de bonnes habitudes avec un suivi de progression
  • Suivi de l’utilisation des applications : surveillez le temps passé sur différentes applications
  • Optimisation du temps : analysez vos habitudes d’utilisation du temps et améliorez votre productivité
  • Synchronisation optionnelle des données entre vos appareils desktop et mobiles via votre réseau local
  • Disponible pour Android, Windows et Linux

Confidentialité et synchronisation :

How to test AA and AAA batteries using a multimeter

  1. Tournez le sélecteur sur un réglage de tension plus élevé - Essayez le réglage “200” dans la section tension continue (V⎓). Cela permet de mesurer des tensions allant jusqu’à 200 V.

  2. Vérifiez vos connexions - Assurez-vous que :

    • La sonde noire est fermement insérée dans le port “COM”
    • La sonde rouge est fermement insérée dans le port “VΩmA”
    • Vous avez un bon contact avec les bornes de la batterie
  3. Vérifiez l’orientation de la batterie - Assurez-vous de toucher :

Iceraven and Ironfox browser comparison

Iceraven et IronFox sont deux navigateurs open source pour Android, offrant chacun des fonctionnalités de confidentialité et de personnalisation, mais avec des points d’accentuation et des publics cibles différents.

Fonctionnalités principales#

FonctionnalitéIceravenIronFox
Confidentialité & TélématiqueTélématique réduit, personnalisable123Renforcée pour la confidentialité, tout télématique supprimé456
Compléments/ExtensionsPrise en charge étendue, plus de choix que Firefox standard178Prise en charge des extensions Firefox Android6
Personnalisationabout:config, plus d’options proches de celles du bureau127Confidentialité avancée par défaut, interface simplifiée456
Vitesse & PerformanceComparable à Brave/Chrome ; optimisé en ressources89Léger, légèrement plus rapide que Firefox standard6
Objectif principalPersonnalisation, extensions et fonctionnalités pour utilisateurs avancés12Confidentialité, déblocage et anti-surveillance465
Mises à jourPilotées par la communauté, plus lentes mais constantes210Actives, réactives aux problèmes signalés par les utilisateurs54
Canaux officielsVersions APK sur Github, non disponibles sur Play Store128F-Droid/Accrescent, Github, non disponible sur Play Store46
  • Basé sur Firefox stable pour Android, avec un accent sur une plus grande disponibilité de compléments et des options de configuration comme about:config1112.
  • Attire les utilisateurs souhaitant reproduire l’expérience de personnalisation et les plugins de Firefox bureau sur mobile111.
  • Les versions et mises à jour sont gérées via Github et non distribuées via la Play Store128.
  • Certains commentaires soulignent l’absence de garanties de sécurité ; à utiliser principalement par des utilisateurs avancés familiers avec l’intérieur du navigateur12.
  • Dérivé de Mull (lui-même une version Firefox axée sur la confidentialité), avec suppression agressive du suivi et de la télématique456.
  • Priorise la confidentialité de l’utilisateur, bloque la télématique par défaut, et inclut des paramètres stricts de protection contre le suivi46.
  • Garde des fonctionnalités comme Firefox Sync ; désactive ou restreint les fonctionnalités pouvant révéler des données (comme WebGL, sauf activation manuelle)46.
  • Distribué via des magasins d’applications alternatifs comme F-Droid, Accrescent, et Github ; non disponible sur Play Store46.
  • Certaines fonctionnalités avancées de confidentialité peuvent entraîner des incompatibilités avec certains sites web, notamment ceux qui dépendent de fonctionnalités désactivées par défaut par IronFox4.

Résumé#

Iceraven convient idéalement aux utilisateurs souhaitant un navigateur “puissance” avec une personnalisation approfondie et une large bibliothèque d’extensions, rappelant ainsi l’esprit de Firefox bureau1117. IronFox est le meilleur choix pour les utilisateurs qui placent la confidentialité au premier plan, cherchant un navigateur basé sur Firefox qui supprime automatiquement la télématique et les fonctionnalités inutiles pour une expérience légère et sécurisée54612. Les deux offrent plus de contrôle et de confidentialité que Firefox standard pour Android, mais Iceraven se concentre sur la flexibilité tandis qu’IronFox met l’accent sur le renforcement de la confidentialité. 1314151617181920

Implementing TOGAF using SCRUM methodology

Mise en œuvre de TOGAF en utilisant la méthodologie SCRUM#

Mettre en œuvre TOGAF (The Open Group Architecture Framework) à l’aide de Scrum consiste à combiner l’approche structurée et globale de TOGAF avec le modèle d’élaboration itérative et agile de Scrum. Voici un guide étape par étape pour y parvenir :


1. Comprendre la synergie entre TOGAF et Scrum#

  • TOGAF offre un cadre de haut niveau pour l’architecture d’entreprise (EA), avec des phases telles que ADM (Architecture Development Method).
  • Scrum est une méthodologie agile pour le développement logiciel ou produit itératif, basée sur des Sprints, des backlogs et des équipes pluridisciplinaires.
  • Objectif : Utiliser Scrum pour exécuter les phases de TOGAF de manière incrémentale tout en maintenant une agilité.

2. Mapper les phases ADM de TOGAF aux Sprints Scrum#

Au lieu d’exécuter TOGAF de façon linéaire, diviser les phases en cycles itératifs (Sprints) :

Things to do and questions to ask when starting a new contract

Avant de commencer un contrat, prenez en compte les éléments suivants :

  • Un contrôle BPSS est-il nécessaire ?
  • Un contrôle DBS est-il nécessaire ?
  • La date de début dépend-elle de la fourniture d’un ordinateur portable par le client et de sa configuration ?

Signes d’alerte et leçons apprises

  • Soyez vigilant lorsque :
    • Les revues de code sont effectuées par une personne qui ne travaille pas activement avec vous ou qui ne travaille qu’en partie avec vous.
    • L’organisation utilise ServiceNow pour les demandes de projet au lieu de tickets de support ou de changement.
    • Aucune tâche opérationnelle n’est réalisée au sein de la squad ou de l’équipe.
    • Le chef ingénieur n’est pas impliqué sur votre projet.
  • Meilleures pratiques :
    • Découvrez tous les projets en cours avant de vous concentrer sur l’un d’eux.
    • Créez une tâche Jira d’onboarding si possible.
    • Organisez des réunions 1 à 1 avec tous les membres de l’équipe.
    • Concentrez-vous sur l’impact positif et la construction de relations au travail plutôt que sur la simple performance.

Questions à poser au client

Consulting Framework

Pour déterminer la viabilité d’un projet de conseil, prenez en compte les facteurs suivants :

  1. Le client peut-il facilement trouver une solution en ligne ?
  • Idéalement, la réponse devrait être « non », ce qui indique que le problème nécessite une expertise spécialisée.
  1. Quels sont les conséquences d’une solution infructueuse ?
  • Le coût de l’échec doit être important, mais pas catastrophique. Cela peut inclure des pertes financières, des dommages à la réputation ou des perturbations opérationnelles.
  1. En combien de temps pouvez-vous livrer une solution ?
  • Plus vous pouvez livrer rapidement une solution fonctionnelle, mieux c’est. Cela démontre votre valeur pour le client et aide à instaurer la confiance.
  1. Avez-vous confiance en votre capacité à livrer une excellente solution ?
  • Vous devez être absolument certain de votre capacité à livrer une solution de haute qualité. Tout doute pourrait remettre en question la confiance du client et rendre la conclusion de l’accord plus difficile.

Book Binding

La reliure est une excellente activité à adopter ! Voici certains avantages :

  • Vous pouvez créer des cadeaux personnalisés pour vos amis et votre famille.
  • C’est une activité saine qui peut améliorer votre santé mentale.
  • La reliure vous permet de rester en lien avec les autres, que ce soit en fabriquant des cadeaux ou en rejoignant une communauté de reliereurs.

Matériel et fournitures que j’utilise#

50Pcs Bandes de colle chaude 285mm Faites à la carte Collante thermique pour la reliure | eBay

Incomplete notes on Personal Finance

Notes sur les stratégies budgétaires, les objectifs d’épargne, les investissements : actions, obligations, immobilier, planification de la retraite, etc., et la littératie financière : gestion personnelle, impôts, assurance, planification financière.

  • Quantified Self :

    • Sources de revenus (salaire, travail indépendant, investissements)
    • Dépenses (fixes et variables)
    • Affectation budgétaire (alimentation, services publics, loisirs, etc.)
    • Taux d’épargne
    • Paiements d’endettement (cartes de crédit, prêts, hypothèques)
    • Notation de crédit
    • Calcul du patrimoine net
    • Valeur du portefeuille d’investissement
    • Apports aux investissements
    • Rendements ou pertes d’investissement
    • Progrès des économies de retraite
    • Solde du fonds d’urgence
    • Primes d’assurance payées
    • Activités liées aux impôts (dates limites de déclaration, documents requis)
    • Progrès vers les objectifs financiers
    • Stratégies d’économie d’argent mises en œuvre
    • Gestion du flux de trésorerie
    • Donations ou charité effectuées
    • Services d’abonnement (coût, fréquence d’utilisation)
    • Mesures de réduction des coûts prises (ex. négociation des factures, annulation d’abonnements inutilisés)
    • Revenus générés
    • Dépenses suivies
    • Budget respecté
    • Économies accumulées
    • Investissements réalisés
    • Endettement remboursé
    • Notation de crédit suivie
    • Objectifs financiers définis
    • Progrès vers l’indépendance financière
    • Planification de retraite entreprise
    • Fonds d’urgence maintenu
    • Couverture d’assurance évaluée
    • Impôts déclarés
    • Planification successorale envisagée
    • Efforts pour améliorer la littératie financière
    • Don ou charité pratiqués
    • Difficultés financières surmontées
    • Jours marquants financiers célébrés
  • Investir dans des actions, des fonds communs ou d’autres actifs.