Dynacat
Self-hosted dashboard built for people who want their information in one place.
References
Section titled “References”Directory structure
Section titled “Directory structure”Directorydynacat
Directoryconfig
- dynacat.yml (*)
- home.yml (*)
Directoryassets
- user.css
- compose.yml (*)
- .env (*)
Make directory
Section titled “Make directory”mkdir -p {{DOCKER_PATH_VAR}}/dynacat && cd {{DOCKER_PATH_VAR}}/dynacatcompose.yml
Section titled “compose.yml”nano compose.ymlservices: dynacat: container_name: dynacat image: panonim/dynacat restart: unless-stopped volumes: - ./config:/app/config - ./assets:/app/assets - /etc/localtime:/etc/localtime:ro # Optional server stats widget - /etc/os-release:/host/etc/os-release:ro # Optional docker containers widget # - /var/run/docker.sock:/var/run/docker.sock:ro ports: - 8282:8080 env_file: .envnano .envTZ={{TIME_ZONE_VAR}}ENABLE_EDITOR=falseLINKDING_URL=https://link.{{BASE_SUB_DOMAIN_VAR}}LINKDING_TOKEN=dynacat.yml
Section titled “dynacat.yml”nano ./config/dynacat.ymlserver: assets-path: /app/assets
theme: # Note: assets are cached by the browser, changes to the CSS file # will not be reflected until the browser cache is cleared (Ctrl+F5) # custom-css-file: /assets/user.css
pages: # It's not necessary to create a new file for each page and include it, you can simply # put its contents here, though multiple pages are easier to manage when separated !include: home.ymlhome.yml
Section titled “home.yml”nano ./config/home.yml- name: Home columns: - size: small widgets: - type: calendar first-day-of-week: sunday - type: clock hour-format: 12h timezones: - timezone: America/New_York label: New York - timezone: Europe/Madrid label: Madrid - timezone: Asia/Tokyo label: Tokyo - type: bookmarks groups: - links: - title: EchoLink url: https://echo.lan.huffmanks.com - title: Github url: https://github.com/huffmanks?tab=repositories - title: Tools url: https://tools.huffmanks.com # not working with domain, localhost or IP address # - type: dynawidgets # widget: linkding-dashboard # title: Linkding # cache: 30m # limit: 10 # options: # collapse-after: 5 # in-new-tab: true # layout: vertical - type: rss limit: 10 collapse-after: 3 cache: 12h feeds: - url: https://selfh.st/rss/ title: selfh.st limit: 3 - url: https://word.huffmanks.com/rss.xml title: Weekly Word limit: 3
- size: full widgets: - type: group widgets: - type: hacker-news - type: lobsters
- type: videos channels: - UCyU5wkjgQYGRB0hIHMwm2Sg # Syntax - UCkVfrGwV-iG9bSsgCbrNPxQ # Better Stack - UCbRP3c757lWg9M-U7TyEkXA # Theo - UCUyeluBRhGPCW4rPe_UvBZQ # Primeagen - UCXuqSBlHAE6Xw-yeJA0Tunw # Linus Tech Tips - UCBJycsmduvYEL83R_U4JriQ # Marques Brownlee
- type: group widgets: - type: reddit subreddit: selfhosted show-thumbnails: true - type: reddit subreddit: webdev show-thumbnails: true
- size: small widgets: - type: weather location: Greenville, South Carolina, United States units: imperial hour-format: 12h
- type: server-stats servers: - type: local name: Services
- type: monitor cache: 1m title: Monitor show-history: true sites: - title: AdGuard Home url: http://{{SERVER_IP_VAR}}:8080 icon: sh:adguard-home - title: Immich url: http://{{SERVER_IP_VAR}}:2283 icon: sh:immich # not working # - title: Jellyfin # url: http://{{SERVER_IP_VAR}}:8096 # icon: sh:jellyfin # method: HEAD
- type: markets markets: - symbol: SPY name: S&P 500 - symbol: QQQ name: Nasdaq 100 - symbol: DIA name: Dow Jones - symbol: GLD name: Gold - symbol: USO name: Crude OilStart container
Section titled “Start container”docker compose up -d