diff --git a/.gitignore b/.gitignore index 772ea72..581ff52 100644 --- a/.gitignore +++ b/.gitignore @@ -36,4 +36,7 @@ dump.rdb # Package Manager Auth .npmrc -.yarnrc \ No newline at end of file +.yarnrc + +# Logs +*.log diff --git a/docker_compose/homepage/config/bookmarks.yaml b/docker_compose/homepage/config/bookmarks.yaml new file mode 100644 index 0000000..e03bf58 --- /dev/null +++ b/docker_compose/homepage/config/bookmarks.yaml @@ -0,0 +1,18 @@ +--- +# For configuration options and examples, please see: +# https://gethomepage.dev/configs/bookmarks + +# - Developer: +# - Github: +# - abbr: GH +# href: https://github.com/ + +# - Social: +# - Reddit: +# - abbr: RE +# href: https://reddit.com/ + +# - Entertainment: +# - YouTube: +# - abbr: YT +# href: https://youtube.com/ diff --git a/docker_compose/homepage/config/custom.css b/docker_compose/homepage/config/custom.css new file mode 100644 index 0000000..b141546 --- /dev/null +++ b/docker_compose/homepage/config/custom.css @@ -0,0 +1,13 @@ +.backdrop-blur-xl { + background-color: rgba(0, 0, 0, 0.815) !important; +} + +@media (hover: hover) { + .dark\:hover\:text-theme-300:is(.dark *):hover { + color: rgb(9, 255, 0); + } + service-card { + background-color: rgba(9, 255, 0, 0.616); + } +} + diff --git a/docker_compose/homepage/config/custom.js b/docker_compose/homepage/config/custom.js new file mode 100644 index 0000000..e69de29 diff --git a/docker_compose/homepage/config/docker.yaml b/docker_compose/homepage/config/docker.yaml new file mode 100644 index 0000000..2f4c4e3 --- /dev/null +++ b/docker_compose/homepage/config/docker.yaml @@ -0,0 +1,10 @@ +--- +# For configuration options and examples, please see: +# https://gethomepage.dev/configs/docker/ + +# my-docker: +# host: 127.0.0.1 +# port: 2375 + +# my-docker: +# socket: /var/run/docker.sock diff --git a/docker_compose/homepage/config/kubernetes.yaml b/docker_compose/homepage/config/kubernetes.yaml new file mode 100644 index 0000000..aca6e82 --- /dev/null +++ b/docker_compose/homepage/config/kubernetes.yaml @@ -0,0 +1,2 @@ +--- +# sample kubernetes config diff --git a/docker_compose/homepage/config/proxmox.yaml b/docker_compose/homepage/config/proxmox.yaml new file mode 100644 index 0000000..90aacd7 --- /dev/null +++ b/docker_compose/homepage/config/proxmox.yaml @@ -0,0 +1,5 @@ +--- +# pve: +# url: https://proxmox.host.or.ip:8006 +# token: username@pam!Token ID +# secret: secret diff --git a/docker_compose/homepage/config/services.yaml b/docker_compose/homepage/config/services.yaml new file mode 100644 index 0000000..b21fb9a --- /dev/null +++ b/docker_compose/homepage/config/services.yaml @@ -0,0 +1,255 @@ +--- +# For configuration options and examples, please see: +# https://gethomepage.dev/latest/configs/services +# icons found here https://github.com/walkxcode/dashboard-icons + +- Devices & Network: + - Proxmox: + icon: proxmox.svg + href: "http://10.0.0.142:8006/" + target: _self + description: laptop-proxmox + ping: 10.0.0.142 + widget: + type: proxmox + url: https://10.0.0.142:8006 + username: root@pam!dash + password: {{HOMEPAGE_VAR_proxmox_password}} + node: laptop-proxmox # optional + - TrueNas: + icon: truenas.svg + href: "http://truenas/" + target: _self + description: TrueNas + ping: truenas + widget: + type: truenas + url: http://truenas + username: {{HOMEPAGE_VAR_truenas_username}} # not required if using api key + password: {{HOMEPAGE_VAR_truenas_password}} # not required if using api key + enablePools: true # optional, defaults to false + nasType: scale # defaults to scale, must be set to 'core' if using enablePools with TrueNAS Cor + - Router: + icon: router.svg + href: "http://router/" + target: _self + description: NAS + ping: router + - Pi-Hole: + icon: pi-hole.svg + href: "http://pihole/admin" + target: _self + description: pihole + ping: pihole + widget: + type: pihole + url: http://pi.hole + version: 6 # required if running v6 or higher, defaults to 5 + key: {{HOMEPAGE_VAR_pihole_apikey}} + - pterodactyl: + icon: pterodactyl.svg + href: "http://games.wompmacho.com/" + target: _self + description: docker + ping: games.wompmacho.com + widget: + type: pterodactyl + url: https://games.wompmacho.com + key: {{HOMEPAGE_VAR_pterodactyl_apikey}} +- Arr: + - Jellyfin: + icon: jellyfin.svg + href: "https://jellyfin.wompmacho.com/" + target: _self + description: media server + widget: + type: jellyfin + url: https://jellyfin.wompmacho.com + key: {{HOMEPAGE_VAR_jellyfin_apikey}} + enableBlocks: true # optional, defaults to false + enableNowPlaying: true # optional, defaults to true + enableUser: true # optional, defaults to false + showEpisodeNumber: true # optional, defaults to false + expandOneStreamToTwoRows: false # optional, defaults to true + - jellyseerr: + icon: jellyseerr.svg + href: "http://jellyseerr/" + target: _self + description: jellyseerr + widget: + type: jellyseerr + url: https://jellyseerr/ + key: {{HOMEPAGE_VAR_jellyseerr_apikey}} + - qBittorrent: + icon: https://upload.wikimedia.org/wikipedia/commons/6/66/New_qBittorrent_Logo.svg + href: "http://torrent/" + target: _self + description: qBittorrent + widget: + type: qbittorrent + url: http://10.0.0.190:8181 + username: {{HOMEPAGE_VAR_qbittorrent_username}} + password: {{HOMEPAGE_VAR_qbittorrent_upassword}} + - audiobookshelf: + icon: audiobookshelf.svg + href: "https://audiobookshelf.wompmacho.com/" + target: _self + description: audiobookshelf + widget: + type: audiobookshelf + url: http://10.0.0.190:13378 + key: {{HOMEPAGE_VAR_audiobookshelf_apikey}} + - radarr: + icon: radarr.svg + href: "http://radarr/" + target: _self + description: radarr + ping: radarr + widget: + type: radarr + url: http://truenas:30025 + key: {{HOMEPAGE_VAR_radarr_apikey}} + enableQueue: true # optional, defaults to false + - sonarr: + icon: sonarr.svg + href: "http://sonarr/" + target: _self + description: sonarr + ping: sonarr + widget: + type: sonarr + url: http://truenas:30027 + key: {{HOMEPAGE_VAR_sonarr_apikey}} + enableQueue: true # optional, defaults to false + - readarr: + icon: readarr.svg + href: "http://readarr/" + target: _self + description: readarr + ping: readarr + widget: + type: readarr + url: http://truenas:30045 + key: {{HOMEPAGE_VAR_readarr_apikey}} + - bazarr: + icon: bazarr.svg + href: "http://bazarr/" + target: _self + description: bazarr + ping: bazarr + widget: + type: bazarr + url: http://truenas:30046 + key: {{HOMEPAGE_VAR_bazarr_apikey}} + - prowlarr: + icon: prowlarr.svg + href: "http://prowlarr/" + target: _self + description: prowlarr + ping: prowlarr + widget: + type: prowlarr + url: http://truenas:30050 + key: {{HOMEPAGE_VAR_prowlarr_apikey}} +- Containers: + - vaultwarden: + icon: vaultwarden.svg + href: "https://vaultwarden.wompmacho.com" + target: _self + description: vaultwarden + - nginx-proxy: + icon: nginx.svg + href: "http://nginx:81" + target: _self + description: nginx-proxy + - immich: + icon: https://immich.app/_app/immutable/assets/immich-logo-futo-dark.UAIWaLuX.svg + href: "https://immich.wompmacho.com/" + target: _self + description: immich + - code-server: + icon: mdi-microsoft-visual-studio-code + href: "https://dev.wompmacho.com/" + target: _self + description: code-server + - Portainer: + icon: https://docs.portainer.io/~gitbook/image?url=https%3A%2F%2F2279730396-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Forganizations%252F-MgDK9ndL1-o2MHHFiXo%252Fsites%252Fsite_gbGqX%252Ficon%252FFDKzZiw3rNqZ8FuFTT64%252FPortainer%2520-%2520P%2520Icon%2520SQUARE%2520-%2520Purple%2520%2526%2520Graphite.png%3Falt%3Dmedia%26token%3Dafbf7bd8-b9ce-4722-8101-90499e52f7fb&width=32&dpr=1&quality=100&sign=933f7d15&sv=2 + href: "http://portainer/" + target: _self + description: docker managment + - Hugo (Public): + icon: https://gohugo.io/images/hugo-logo-wide.svg + href: "https://wiki.wompmacho.com/" + target: _self + description: public wiki + - Hugo (Private): + icon: mdi-lock + href: "http://private/" + target: _self + description: private wiki + - frigate: + icon: frigate.svg + href: "http://frigate/" + target: _self + description: frigate + - LinkStack: + icon: https://linkstack.org/wp-content/uploads/2023/04/logo-animated.svg + href: "https://wompmacho.com/login" + target: _self + description: LinkStack + - sure: + icon: http://sure/assets/logomark-color-92ed1e7e.svg + href: "http://sure/" + target: _self + description: sure finance app + - paperless: + icon: https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/paperless-ngx.png + href: "http://paperless/" + target: _self + description: paperless-ngx + - open-webui: + icon: http://gemma/static/favicon.png + href: "http://gemma/" + target: _self + description: open-webui + - calibre: + icon: https://upload.wikimedia.org/wikipedia/commons/c/cf/Calibre_logo_3.png + href: "http://calibre/" + target: _self + description: calibre + - gitea: + icon: https://git.wompmacho.com/assets/img/logo.svg + href: "https://git.wompmacho.com/" + target: _self + description: gitea + - dozzle: + icon: https://dozzle.dev/logo.svg + href: "http://dozzle/" + target: _self + description: dozzle + - navidrome: + type: navidrome + icon: https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/navidrome.svg + href: "http://music/" + target: _self + description: music + - nicotine: + icon: https://nicotine-plus.org/data/icons/icon.svg + href: "http://nicotine/" + target: _self + description: music + - Picard: + icon: https://picard.musicbrainz.org/static/img/picard-logo.svg + href: "http://picard/" + target: _self + description: music tagger + - Reaper-Web: + icon: https://img.icons8.com/?size=100&id=105751&format=png&color=000000 + href: "http://reaper/" + target: _self + description: reaper in docker + - Slopsmith-Web: + icon: https://cdn2.steamgriddb.com/icon/dfb61b74af460c2fd68bb8266f9f0814/32/256x256.png + href: "https://slopsmith/" + target: _self + description: slopsmith in docker \ No newline at end of file diff --git a/docker_compose/homepage/config/settings.yaml b/docker_compose/homepage/config/settings.yaml new file mode 100644 index 0000000..058fd91 --- /dev/null +++ b/docker_compose/homepage/config/settings.yaml @@ -0,0 +1,34 @@ +title: Home +background: + image: /images/background_40890255.jpg + #blur: sm # sm, "", md, xl... see https://tailwindcss.com/docs/backdrop-blur + saturate: 100 # 0, 50, 100... see https://tailwindcss.com/docs/backdrop-saturate + brightness: 50 # 0, 50, 75... see https://tailwindcss.com/docs/backdrop-brightness + opacity: 100 # 0-100 +cardBlur: xl # sm, "", md, etc... see https://tailwindcss.com/docs/backdrop-blur +favicon: https://www.svgrepo.com/show/22031/home-icon-silhouette.svg +theme: dark # or light +color: cyan +headerStyle: underlined # default style +#fullWidth: true +providers: + finnhub: {{HOMEPAGE_VAR_finnhub}} +useEqualHeights: false +layout: + Devices & Network: + useEqualHeights: true + style: row + columns: 5 + Media: + useEqualHeights: true + style: row + columns: 4 + Containers: + style: row + columns: 8 + Arr: + useEqualHeights: true + style: row + columns: 5 +showStats: true +disableCollapse: true \ No newline at end of file diff --git a/docker_compose/homepage/config/widgets.yaml b/docker_compose/homepage/config/widgets.yaml new file mode 100644 index 0000000..1709f79 --- /dev/null +++ b/docker_compose/homepage/config/widgets.yaml @@ -0,0 +1,45 @@ +--- +# For configuration options and examples, please see: +# https://gethomepage.dev/configs/service-widgets +- resources: + cpu: true + memory: true + disk: / + cputemp: true + tempmin: 0 # optional, minimum cpu temp + tempmax: 100 # optional, maximum cpu temp + uptime: true + units: imperial # only used by cpu temp + refresh: 3000 # optional, in ms + diskUnits: bytes # optional, bytes (default) or bbytes. Only applies to disk +- openmeteo: + label: Charleston # optional + latitude: 32.7766 + longitude: -79.930903 + timezone: America/New_York # optional + units: imperial # or imperial + cache: 5 # Time in minutes to cache API responses, to stay within limits + format: # optional, Intl.NumberFormat options + maximumFractionDigits: 1 +- search: + provider: google # google, duckduckgo, bing, baidu, brave or custom + focus: true # Optional, will set focus to the search bar on page load + showSearchSuggestions: true # Optional, will show search suggestions. Defaults to false + target: _self # One of _self, _blank, _parent or _top +- datetime: + text_size: xl + format: + timeStyle: short +- stocks: + provider: finnhub + color: true # optional, defaults to true + cache: 1 # optional, default caches results for 1 minute + watchlist: + - NVDA + - AMD + - AAPL + - GOOG + - GOOGL + - ARM + - SCHD + - VOO \ No newline at end of file diff --git a/docker_compose/homepage/docker-compose.yaml b/docker_compose/homepage/docker-compose.yaml index 6e12128..4ee5a90 100644 --- a/docker_compose/homepage/docker-compose.yaml +++ b/docker_compose/homepage/docker-compose.yaml @@ -11,10 +11,16 @@ services: env_file: - .env volumes: - - ${HOMEPAGE_DIR}/config:/app/config - - ${HOMEPAGE_DIR}/images:/app/public/images + - ./config:/app/config + - ./images:/app/public/images - /var/run/docker.sock:/var/run/docker.sock:ro # docker socket ports: - - 7676:3000 + - ${HOMEPAGE_PORT}:3000 restart: unless-stopped - + labels: + # Nginx Proxy Manager Automation + - "npm.proxy.domains=homepage" + - "npm.proxy.port=${HOMEPAGE_PORT}" + - "npm.proxy.scheme=http" + # Pi-hole Automation (Point to Docker Host/Proxy IP) + - "pihole.custom-record=[[\"homepage\", \"${DOCKER_HOST_IP}\"]]" diff --git a/docker_compose/homepage/images/background_40890255.jpg b/docker_compose/homepage/images/background_40890255.jpg new file mode 100644 index 0000000..4f7bc7e Binary files /dev/null and b/docker_compose/homepage/images/background_40890255.jpg differ