Posts

Mastodon and Docker Compose
reading time: 2 minutes

Docker Compose

I use Traefik as my reverse proxy. Here is a snippet of my Docker Compose file for Mastodon:

######################
# Mastodon           #
######################
  mastodon-db:
    image: postgres:14-alpine
    container_name: mastodon-db
    shm_size: 256mb
    environment:
      - UID=${PUID}
      - GID=${PGID}
      - TZ=${TZ}
      - POSTGRES_HOST_AUTH_METHOD=trust
    volumes:
      - /root/docker/appdata/mastodon/dbdata:/var/lib/postgresql/data
    labels:
      - "com.centurylinklabs.watchtower.enable=true"
    restart: unless-stopped
  mastodon-redis:
    image: redis:7-alpine
    container_name: mastodon-redis
    environment:
      - UID=${PUID}
      - GID=${PGID}
      - TZ=${TZ}
    volumes:
      - /root/docker/appdata/mastodon/redis:/data
    labels:
      - "com.centurylinklabs.watchtower.enable=true"
    restart: unless-stopped
  mastodon-web:
    image: tootsuite/mastodon
    container_name: mastodon-web
    command: bash -c "rm -f /mastodon/tmp/pids/server.pid; bundle exec rails s -p 3000"
    env_file:
      - .mastodon.env
    environment:
      - UID=${PUID}
      - GID=${PGID}
      - TZ=${TZ}
    volumes:
      - /root/docker/appdata/mastodon/public/system:/mastodon/public/system
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.mastodon-web.rule=Host(`toot.onitato.com`)"
      - "traefik.http.routers.mastodon-web.entrypoints=https"
      - "traefik.http.routers.mastodon-web.tls=true"
      - "traefik.http.routers.mastodon-web.tls.certresolver=letsencrypt"
      - "traefik.http.routers.mastodon-web.middlewares=authelia@docker"
      - "com.centurylinklabs.watchtower.enable=true"
    ports:
      - "3000:3000"
    restart: unless-stopped
    depends_on:
      - traefik
      - mastodon-redis
      - mastodon-db
  mastodon-streaming:
    image: tootsuite/mastodon
    container_name: mastodon-streaming
    command: node ./streaming
    env_file:
      - .mastodon.env
    environment:
      - UID=${PUID}
      - GID=${PGID}
      - TZ=${TZ}
    labels:
      - "traefik.enable=true"
      - "traefik.http.services.mastodon-web.loadbalancer.server.port=4000"
      - "traefik.http.routers.mastodon-streaming.rule=(Host(`toot.onitato.com`) && PathPrefix(`/api/v1/streaming`))"
      - "traefik.http.routers.mastodon-streaming.entrypoints=https"
      - "traefik.http.routers.mastodon-streaming.tls=true"
      - "traefik.http.routers.mastodon-streaming.tls.certresolver=letsencrypt"
      - "traefik.http.routers.mastodon-streaming.middlewares=authelia@docker"
      - "com.centurylinklabs.watchtower.enable=true"
    ports:
      - "4000:4000"
    restart: unless-stopped
    depends_on:
      - traefik
      - mastodon-redis
      - mastodon-db
  mastodon-sidekiq:
    image: tootsuite/mastodon
    container_name: mastodon-sidekiq
    command: bundle exec sidekiq
    env_file:
      - .mastodon.env
    environment:
      - UID=${PUID}
      - GID=${PGID}
      - TZ=${TZ}
    volumes:
      - /root/docker/appdata/mastodon/public/system:/mastodon/public/system
    labels:
      - "com.centurylinklabs.watchtower.enable=true"
    restart: unless-stopped
    depends_on:
      - mastodon-redis
      - mastodon-db

mastodon.env

mastodon.env was generated using these instructions:

Extra Life 2022
reading time: 1 minute

What is Extra Life?

I’ve pledged to play games and raise funds for kids at my local children’s hospital. Please visit my Extra Life Page to make a donation. Your donation is tax-deductible and will make miracles happen for families who desperately need them.

Watch

Visit my Twitch Stream and Follow my channel so you are notified when I go live on Game Day, November 5th, 2022.

F-150 Lightning Event
reading time: 4 minutes

Welcome and Registration Tent

I was invited to the Ford F-150 Lightning event here in Denver, CO. I got to ride along in the new Lightning and get an up close and personal look. They also had an E-Transit on site as well.

Test Ride

Let’s start with the most exciting part. After registration, I walked straight over to the test ride tent. Unfortunately, I was prohibited from recording anything inside the vehicle during the test ride. Here’s the video of the others taking a test ride:

Hush Little Baby
reading time: 1 minute

My own special version of Hush Little Baby.

Hush little baby, don’t say a word.
Daddy’s gonna buy you a mockingbird.

If that mockingbird doesn’t sing,
daddy’s gonna buy you a golden ring.

If that golden ring turns brass,
daddy’s gonna buy you a looking glass.

If that looking glass does break,
daddy’s gonna buy you some roller skates.

If those roller skates make you fall,
daddy’s gonna buy you a bouncy ball.