diff --git a/.gitignore b/.gitignore index 00d6757..c7c4980 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ music/ data/ immich/library -immich/postgres \ No newline at end of file +immich/postgres +yams/config \ No newline at end of file diff --git a/autorestic/.autorestic b/autorestic/.autorestic deleted file mode 100644 index feaf1bd..0000000 --- a/autorestic/.autorestic +++ /dev/null @@ -1,18 +0,0 @@ -version: 2 - -backends: - aws_s3: - type: s3 - path: s3.amazonaws.com/284a418918ee0b6d99972d836ddd6840 - env: - AWS_ACCESS_KEY_ID: AKIA4XIDYLVKXZWMVHWI - AWS_SECRET_ACCESS_KEY: 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 - -location: - hoarder_meilisearch_data: - from: hoarder_meilisearch_data - type: volume - to: - - aws_s3 - - diff --git a/autorestic/autorestic.yaml b/autorestic/autorestic.yaml deleted file mode 100644 index 0b40f2c..0000000 --- a/autorestic/autorestic.yaml +++ /dev/null @@ -1,18 +0,0 @@ -version: 2 - -backends: - aws_s3: - type: s3 - path: s3.amazonaws.com/284a418918ee0b6d99972d836ddd6840 - env: - AWS_ACCESS_KEY_ID: AKIA4XIDYLVKXZWMVHWI - AWS_SECRET_ACCESS_KEY: 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 - -# location: -# hoarder_meilisearch_data: -# from: hoarder_meilisearch_data -# type: volume -# to: -# - aws_s3 - - diff --git a/autorestic/config.yaml b/autorestic/config.yaml index 7977a6a..dca5ee2 100644 --- a/autorestic/config.yaml +++ b/autorestic/config.yaml @@ -10,6 +10,14 @@ backends: AWS_SECRET_ACCESS_KEY: ARVHEzmsqB7DEy7kOIwNPUPC9rSl5DtmhsH1XgNc locations: + local_files: + from: + - /immich/library + # - /home/geezo/docker_containers/navidrome/music + # - /home/geezo/media + to: + - aws_s3 + hoarder_meilisearch: from: hoarder_meilisearch type: volume @@ -53,5 +61,23 @@ locations: nextcloud_nextcloud: from: nextcloud_nextcloud type: volume + to: + - aws_s3 + + immich_model-cache: + from: immich_model-cache + type: volume + to: + - aws_s3 + + vaultwarden_vaultwarden_data: + from: vaultwarden_vaultwarden_data + type: volume + to: + - aws_s3 + + pinchflat_pinchflat_data: + from: pinchflat_pinchflat_data + type: volume to: - aws_s3 \ No newline at end of file diff --git a/autorestic/docker-compose.yml b/autorestic/docker-compose.yml new file mode 100644 index 0000000..12eb0a0 --- /dev/null +++ b/autorestic/docker-compose.yml @@ -0,0 +1,13 @@ +version: '3.9' + +services: + autorestic: + image: cupcakearmy/autorestic + container_name: autorestic + privileged: true + volumes: + - /home/geezo/docker_containers/autorestic:/data + - /home/geezo/docker_containers/immich:/immich + - /var/run/docker.sock:/var/run/docker.sock + command: autorestic backup -va -c /data/config.yaml + restart: no \ No newline at end of file diff --git a/glance/glance.yml b/glance/glance.yml index 01b80c1..6fe918e 100644 --- a/glance/glance.yml +++ b/glance/glance.yml @@ -209,7 +209,7 @@ pages: # - symbol: RDDT # name: Reddit - - name: The World + - name: News columns: - size: small widgets: @@ -217,125 +217,50 @@ pages: - size: full widgets: - # #### Local/US - # - type: videos - # channels: - # - UCR-DXc1voovS8nhAvccRZhg # Jeff Geerling - # - UCv6J_jJa8GJqFwQNgNrMuww # ServeTheHome - # - UCOk-gHyjcWZNj3Br4oxwh0A # Techno Tim - type: group widgets: - - type: reddit - subreddit: news - show-thumbnails: true - - type: reddit - subreddit: politics - show-thumbnails: true - #### GeoPolitics + - type: rss + title: Local News + style: horizontal-cards + feeds: + - url: https://rss.app/feeds/zGtl0lQuVVN1ew1Y.xml + title: Google News + - type: rss + title: US News + style: horizontal-cards + feeds: + - url: https://rss.app/feeds/mG6VlfoOqmynqgbT.xml + title: Google News + - type: rss + title: World News + style: horizontal-cards + feeds: + - url: https://rss.app/feeds/8l0pnQ0Vny9DxtaR.xml + title: Google News + + - type: videos + style: grid-cards channels: - UCsy9I56PY3IngCf_VGjunMQ # Zeihan - - type: group - widgets: - - type: reddit - subreddit: geopolitics - show-thumbnails: true - - type: reddit - subreddit: worldnews - show-thumbnails: true - + - UCC3ehuUksTyQ7bbjGntmx3Q #Perun - - # - size: small - # widgets: - # - type: weather - # location: London, United Kingdom - - # - type: markets - # markets: - # - symbol: SPY - # name: S&P 500 - # - symbol: BTC-USD - # name: Bitcoin - # - symbol: NVDA - # name: NVIDIA - # - symbol: AAPL - # name: Apple - # - symbol: MSFT - # name: Microsoft - # - symbol: GOOGL - # name: Google - # - symbol: AMD - # name: AMD - # - symbol: RDDT - # name: Reddit - - - - - - - # - name: Self-Hosted + # - name: Finance # columns: # - size: small # widgets: # - type: calendar - # - type: rss - # limit: 10 - # collapse-after: 3 - # cache: 3h - # feeds: - # - url: https://ciechanow.ski/atom.xml - # - url: https://www.joshwcomeau.com/rss.xml - # title: Josh Comeau - # - url: https://samwho.dev/rss.xml - # - url: https://awesomekling.github.io/feed.xml - # - url: https://ishadeed.com/feed.xml - # title: Ahmad Shadeed - - # - type: twitch-channels - # channels: - # - theprimeagen - # - cohhcarnage - # - christitustech - # - blurbs - # - asmongold - # - jembawls - - # - size: full - # widgets: - # - type: hacker-news - - # - type: videos - # channels: - # - UCR-DXc1voovS8nhAvccRZhg # Jeff Geerling - # - UCv6J_jJa8GJqFwQNgNrMuww # ServeTheHome - # - UCOk-gHyjcWZNj3Br4oxwh0A # Techno Tim - - # - type: reddit - # subreddit: selfhosted + # - name: Well-Being + # columns: # - size: small # widgets: - # - type: weather - # location: London, United Kingdom + # - type: calendar - # - type: markets - # markets: - # - symbol: SPY - # name: S&P 500 - # - symbol: BTC-USD - # name: Bitcoin - # - symbol: NVDA - # name: NVIDIA - # - symbol: AAPL - # name: Apple - # - symbol: MSFT - # name: Microsoft - # - symbol: GOOGL - # name: Google - # - symbol: AMD - # name: AMD - # - symbol: RDDT - # name: Reddit + + # - name: Spirituality + # columns: + # - size: small + # widgets: + # - type: calendar diff --git a/olivetin/config.yaml b/olivetin/config.yaml index 48e5bdb..a4bd365 100644 --- a/olivetin/config.yaml +++ b/olivetin/config.yaml @@ -1,6 +1,9 @@ actions: - title: backup containers - shell: "docker run --rm -d --privileged -v /home/geezo/docker_containers/autorestic:/data -v /var/run/docker.sock:/var/run/docker.sock cupcakearmy/autorestic autorestic backup -va -c /data/config.yaml" + shell: "docker compose -f /autorestic/docker-compose.yml up" icon: execOnCron: - - "@daily" \ No newline at end of file + - "@daily" + + + diff --git a/olivetin/docker-compose.yml b/olivetin/docker-compose.yml index 8c6a0f1..aee1795 100644 --- a/olivetin/docker-compose.yml +++ b/olivetin/docker-compose.yml @@ -5,6 +5,7 @@ services: volumes: - ./:/config # replace host path or volume as needed - /var/run/docker.sock:/var/run/docker.sock + - /home/geezo/docker_containers/autorestic:/autorestic ports: - "1004:1337" restart: unless-stopped diff --git a/pinchflat/docker-compose.yml b/pinchflat/docker-compose.yml new file mode 100644 index 0000000..fa9b552 --- /dev/null +++ b/pinchflat/docker-compose.yml @@ -0,0 +1,13 @@ +services: + pinchflat: + image: ghcr.io/kieraneglin/pinchflat:latest + environment: + # Set the timezone to your local timezone + - TZ=America/New_York + ports: + - '1009:8945' + volumes: + - pinchflat_data:/config + - /home/geezo/media/youtube:/downloads +volumes: + pinchflat_data: \ No newline at end of file diff --git a/yams/.env b/yams/.env new file mode 100644 index 0000000..6d4f805 --- /dev/null +++ b/yams/.env @@ -0,0 +1,12 @@ +# Base configuration +PUID=1000 +PGID=1000 +MEDIA_DIRECTORY=/home/geezo/media +INSTALL_DIRECTORY=/home/geezo/docker_containers/yams +MEDIA_SERVICE=jellyfin + +# VPN configuration +VPN_ENABLED=y +VPN_SERVICE=protonvpn +VPN_USER=HDC6uEpJubO3yP3e+pmp +VPN_PASSWORD=GkN2ktNbpaJEuZpP5HOcYa652DnZvSE3 diff --git a/yams/docker-compose.yml b/yams/docker-compose.yml new file mode 100644 index 0000000..7b24810 --- /dev/null +++ b/yams/docker-compose.yml @@ -0,0 +1,185 @@ +services: + # jellyfin is used to serve your media to the client devices + jellyfin: + image: lscr.io/linuxserver/${MEDIA_SERVICE} + container_name: ${MEDIA_SERVICE} + #network_mode: host # plex + environment: + - PUID=${PUID} + - PGID=${PGID} + - VERSION=docker + volumes: + - /etc/localtime:/etc/localtime:ro + - ${MEDIA_DIRECTORY}:/data + - ${INSTALL_DIRECTORY}/config/${MEDIA_SERVICE}:/config + ports: # plex + - 2000:8096 # plex + restart: unless-stopped + + # qBitorrent is used to download torrents + qbittorrent: + image: lscr.io/linuxserver/qbittorrent + container_name: qbittorrent + environment: + - PUID=${PUID} + - PGID=${PGID} + - WEBUI_PORT=2001 + volumes: + - /etc/localtime:/etc/localtime:ro + - ${MEDIA_DIRECTORY}:/data + - ${INSTALL_DIRECTORY}/config/qbittorrent:/config + restart: unless-stopped + # ports: # qbittorrent + # - 8081:8081 # qbittorrent + network_mode: "service:gluetun" + depends_on: + gluetun: + condition: service_healthy + + # SABnzbd is used to download from usenet + sabnzbd: + image: lscr.io/linuxserver/sabnzbd:latest + container_name: sabnzbd + environment: + - PUID=${PUID} + - PGID=${PGID} + - TZ=America/Montevideo + volumes: + - /etc/localtime:/etc/localtime:ro + - ${MEDIA_DIRECTORY}:/data + - ${INSTALL_DIRECTORY}/config/sabnzbd:/config + #ports: # sabnzbd + #- 8080:8080 # sabnzbd + restart: unless-stopped + network_mode: "service:gluetun" + + # Sonarr is used to query, add downloads to the download queue and index TV shows + # https://sonarr.tv/ + sonarr: + image: lscr.io/linuxserver/sonarr + container_name: sonarr + environment: + - PUID=${PUID} + - PGID=${PGID} + volumes: + - /etc/localtime:/etc/localtime:ro + - ${MEDIA_DIRECTORY}:/data + - ${INSTALL_DIRECTORY}/config/sonarr:/config + ports: + - 2003:8989 + restart: unless-stopped + + # Radarr is used to query, add downloads to the download queue and index Movies + # https://radarr.video/ + radarr: + image: lscr.io/linuxserver/radarr + container_name: radarr + environment: + - PUID=${PUID} + - PGID=${PGID} + volumes: + - /etc/localtime:/etc/localtime:ro + - ${MEDIA_DIRECTORY}:/data + - ${INSTALL_DIRECTORY}/config/radarr:/config + ports: + - 2004:7878 + restart: unless-stopped + + # Lidarr is used to query, add downloads to the download queue and index Music + # https://lidarr.audio/ + # lidarr: + # image: lscr.io/linuxserver/lidarr + # container_name: lidarr + # environment: + # - PUID=${PUID} + # - PGID=${PGID} + # volumes: + # - /etc/localtime:/etc/localtime:ro + # - ${MEDIA_DIRECTORY}:/data + # - ${INSTALL_DIRECTORY}/config/lidarr:/config + # ports: + # - 2006:8686 + # restart: unless-stopped + + # Readarr is used to query, add downloads to the download queue and index Audio and Ebooks + # https://readarr.com/ + readarr: + image: lscr.io/linuxserver/readarr:develop + container_name: readarr + environment: + - PUID=${PUID} + - PGID=${PGID} + volumes: + - /etc/localtime:/etc/localtime:ro + - ${MEDIA_DIRECTORY}:/data + - ${INSTALL_DIRECTORY}/config/readarr:/config + ports: + - 2007:8787 + restart: unless-stopped + + # Bazarr is used to download and categorize subtitles + # https://www.bazarr.media/ + bazarr: + image: lscr.io/linuxserver/bazarr + container_name: bazarr + environment: + - PUID=${PUID} + - PGID=${PGID} + volumes: + - /etc/localtime:/etc/localtime:ro + - ${MEDIA_DIRECTORY}:/data + - ${INSTALL_DIRECTORY}/config/bazarr:/config + ports: + - 2008:6767 + restart: unless-stopped + + # Prowlarr is our torrent indexer/searcher. Sonarr/Radarr use Prowlarr as a source + # https://prowlarr.com/ + prowlarr: + image: lscr.io/linuxserver/prowlarr + container_name: prowlarr + environment: + - PUID=${PUID} + - PGID=${PGID} + volumes: + - /etc/localtime:/etc/localtime:ro + - ${INSTALL_DIRECTORY}/config/prowlarr:/config + ports: + - 2009:9696 + restart: unless-stopped + + # Gluetun is our VPN, so you can download torrents safely + gluetun: + image: qmcgaw/gluetun:v3 + container_name: gluetun + cap_add: + - NET_ADMIN + devices: + - /dev/net/tun:/dev/net/tun + ports: + - 8888:8888/tcp # HTTP proxy + - 8388:8388/tcp # Shadowsocks + - 8388:8388/udp # Shadowsocks + - 8003:8000/tcp # Admin + - 2002:8080/tcp # maps to sabnzbd + - 2001:2001/tcp # maps to qbittorrent + environment: + - VPN_SERVICE_PROVIDER=${VPN_SERVICE} + - VPN_TYPE=openvpn + - OPENVPN_USER=${VPN_USER} + - OPENVPN_PASSWORD=${VPN_PASSWORD} + - OPENVPN_CIPHERS=AES-256-GCM + - PORT_FORWARD_ONLY=on + - VPN_PORT_FORWARDING=on + restart: unless-stopped + + + # Watchtower is going to keep our instances updated + watchtower: + image: containrrr/watchtower + container_name: watchtower + environment: + - WATCHTOWER_CLEANUP=true + volumes: + - /var/run/docker.sock:/var/run/docker.sock + restart: unless-stopped \ No newline at end of file