diff --git a/homeassistant/docker-compose.yml b/homeassistant/docker-compose.yml new file mode 100644 index 0000000..42b3bb5 --- /dev/null +++ b/homeassistant/docker-compose.yml @@ -0,0 +1,13 @@ +version: '3.5' +services: + homeassistant: + container_name: homeassistant + restart: always + image: ghcr.io/home-assistant/home-assistant:stable + network_mode: host + privileged: true + environment: + - TZ=Europe/Berlin + volumes: + - /opt/docker/homeassistant/config:/config + diff --git a/lxdware/docker-compose.yml b/lxdware/docker-compose.yml new file mode 100644 index 0000000..4ee08c5 --- /dev/null +++ b/lxdware/docker-compose.yml @@ -0,0 +1,9 @@ +services: + lxdware: + image: lxdware/dashboard:latest + restart: always + ports: + - '9001:80' + volumes: + - /opt/docker/lxdware/data:/var/lxdware + - /etc/timezone:/etc/timezone:ro diff --git a/munkireport/docker-compose.yml b/munkireport/docker-compose.yml new file mode 100644 index 0000000..e0a60fd --- /dev/null +++ b/munkireport/docker-compose.yml @@ -0,0 +1,49 @@ +version: '3' +services: + munkireport: + image: ghcr.io/munkireport/munkireport-php:5.x + restart: always + container_name: munkireport + environment: + - MODULES=applications, appusage, ard, bluetooth, caching, certificate, comment, devtools, directory_service, disk_report, displays_info, event, extensions, fan_temps, filevault_escrow, filevault_status, findmymac, firewall, +firmware_escrow, fonts, gpu, gsx, homebrew, homebrew_info, ibridge, installhistory, iventory, localadmin, machine, managedinstalls, mdm_status, munki_facts, munkiinfo, munkireport, munkireportinfo, network, network_shares, power, +printer, profile, reportdata, sccm_status, security, smart_stats, softwareupdate, supported_os, tag, timemachine, usage_stats, usb, user_sessions, users, warranty, wifi, icloud, browser_extensions, ios_devices, launchdaemons, +kernel_panics, memory, pci, tcc, thunderbolt + - SITENAME=Munkireport + - CONNECTION_DRIVER=mysql + - CONNECTION_HOST=db + - CONNECTION_PORT=3306 + - CONNECTION_DATABASE= + - CONNECTION_USERNAME= + - CONNECTION_PASSWORD= + - AUTH_METHODS=LOCAL + - PUID=1000 + - PGID=1000 + - CLIENT_PASSPHRASES= + - WEBHOST=https:// + - TZ=Europe/Berlin + depends_on: + - db + volumes: + - /opt/docker/munkireport/db/:/var/munkireport/app/db + - /opt/docker/munkireport/user//:/var/munkireport/local/users + networks: + - default + db: + image: mariadb:latest + restart: always + environment: + - MYSQL_ROOT_PASSWORD= + - MYSQL_DATABASE=munkireport + - MYSQL_USER=munkireport + - MYSQL_PASSWORD= + - PUID=1000 + - PGID=1000 + - TZ=Europe/Berlin + volumes: + - /opt/docker/munkireport/db/:/var/lib/mysql + +networks: + default: + name: www + external: true diff --git a/nginxproxymanager/docker-compose.yml b/nginxproxymanager/docker-compose.yml new file mode 100644 index 0000000..9f09d56 --- /dev/null +++ b/nginxproxymanager/docker-compose.yml @@ -0,0 +1,21 @@ +version: "3" +services: + app: + image: 'jc21/nginx-proxy-manager:latest' + restart: always + ports: + - '80:80' + - '443:443' + - '81:81' + volumes: + - /opt/docker/npm/data:/data + - /opt/docker/npm/letsencrypt:/etc/letsencrypt + container_name: nginx-proxy-manager + networks: + - default + +networks: + default: + name: www + external: true + diff --git a/pihole/docker-compose.yml b/pihole/docker-compose.yml new file mode 100644 index 0000000..031aef0 --- /dev/null +++ b/pihole/docker-compose.yml @@ -0,0 +1,34 @@ +version: "3" + +services: + pihole: + container_name: pihole + image: jacklul/pihole:latest + ports: + - "53:53/tcp" + - "53:53/udp" + - "67:67/udp" + - "81:80/tcp" + environment: + TZ: 'Europe/Berlin' + WEBPASSWORD: '' + DNSMASQ_LISTENING: 'all' + PIHOLE_DNS_: 'unbound' + REV_SERVER: 'true' + REV_SERVER_DOMAIN: '' + REV_SERVER_TARGET: '192.168.178.1' + REV_SERVER_CIDR: '192.168.178.0/24' + volumes: + - '/opt/docker/pihole/pihole-etc/:/etc/pihole/' + - '/opt/docker/pihole/pihole-dnsmasq.d/:/etc/dnsmasq.d/' + - '/opt/docker/pihole/pihole-updatelists/:/etc/pihole-updatelists/' + dns: + - 127.0.0.1 + restart: always + depends_on: + - "unbound" + + unbound: + container_name: unbound + image: klutchell/unbound:latest + restart: always diff --git a/portainer/docker-run.txt b/portainer/docker-run.txt new file mode 100644 index 0000000..8d41c9b --- /dev/null +++ b/portainer/docker-run.txt @@ -0,0 +1,7 @@ +docker run -d \ + -p 9001:9001 \ + --name portainer_agent \ + --restart=always \ + -v /var/run/docker.sock:/var/run/docker.sock \ + -v /var/lib/docker/volumes:/var/lib/docker/volumes \ + portainer/agent:latest diff --git a/rustdesk/docker-compose.yml b/rustdesk/docker-compose.yml new file mode 100644 index 0000000..04fe8e1 --- /dev/null +++ b/rustdesk/docker-compose.yml @@ -0,0 +1,36 @@ +version: '3' + +networks: + rustdesk-net: + external: false + +services: + hbbs: + container_name: hbbs + ports: + - 21115:21115 + - 21116:21116 + - 21116:21116/udp + - 21118:21118 + image: rustdesk/rustdesk-server:latest + command: hbbs -r rustdesk.domain.de:21117 + volumes: + - /opt/docker/rustdesk/hbbs:/root + networks: + - rustdesk-net + depends_on: + - hbbr + restart: always + + hbbr: + container_name: hbbr + ports: + - 21117:21117 + - 21119:21119 + image: rustdesk/rustdesk-server:latest + command: hbbr + volumes: + - /opt/docker/rustdesk/hbbr:/root + networks: + - rustdesk-net + restart: always diff --git a/snipeit/docker-compose.yml b/snipeit/docker-compose.yml new file mode 100644 index 0000000..eb9c364 --- /dev/null +++ b/snipeit/docker-compose.yml @@ -0,0 +1,50 @@ +version: "3" +services: + mysql: + image: mariadb + container_name: snipe_mysql_db + restart: always + volumes: + - /opt/docker/snipeit/snipeitdb:/var/lib/mysql + environment: + - TZ=Europe/Berlin + - MYSQL_ROOT_PASSWORD= + - MYSQL_USER=snipedb + - MYSQL_PASSWORD= + - MYSQL_DATABASE=snipedb + + snipeit: + image: linuxserver/snipe-it:latest + container_name: snipe-it + restart: always + depends_on: + - mysql + volumes: + - /opt/docker/snipeit/snipeit:/config + environment: + - APP_URL=https:// + - MYSQL_PORT_3306_TCP_ADDR=mysql + - MYSQL_PORT_3306_TCP_PORT=3306 + - MYSQL_DATABASE=snipedb + - MYSQL_USER=snipedb + - MYSQL_PASSWORD= + - APP_LOCALE=de + - PHP_UPLOAD_LIMIT=500 + - MAIL_PORT_587_TCP_ADDR= + - MAIL_PORT_587_TCP_PORT= + - MAIL_ENV_FROM_ADDR= + - MAIL_ENV_FROM_NAME=Asset Management + - MAIL_ENV_USERNAME= + - MAIL_ENV_PASSWORD= + - MAIL_ENV_ENCRYPTION=tls + - APP_ENV=production + - TZ=Europe/Berlin + - MAIL_AUTO_EMBED_METHOD=base64 + - MAIL_AUTO_EMBED=true + networks: + - default + +networks: + default: + name: www + external: true diff --git a/snowflakeproxy/docker-compose.yml b/snowflakeproxy/docker-compose.yml new file mode 100644 index 0000000..2f1581c --- /dev/null +++ b/snowflakeproxy/docker-compose.yml @@ -0,0 +1,9 @@ +version: "3.8" +services: + snowflake-proxy: + network_mode: host + image: thetorproject/snowflake-proxy + container_name: snowflake-proxy + restart: always + command: [ "-broker" , "https://snowflake-broker.torproject.net/" ] + diff --git a/uptimekuma/docker-compose.yml b/uptimekuma/docker-compose.yml new file mode 100644 index 0000000..69219a2 --- /dev/null +++ b/uptimekuma/docker-compose.yml @@ -0,0 +1,15 @@ +version: '3' +services: + app: + image: 'louislam/uptime-kuma:latest' + restart: always + container_name: uptimekuma + volumes: + - /opt/docker/uptimekuma/data:/app/data + networks: + - default + +networks: + default: + name: www + external: true diff --git a/wallabag/docker-compose.yml b/wallabag/docker-compose.yml new file mode 100644 index 0000000..bc2c9b4 --- /dev/null +++ b/wallabag/docker-compose.yml @@ -0,0 +1,50 @@ +version: '3' +services: + wallabag: + image: wallabag/wallabag + environment: + - MYSQL_ROOT_PASSWORD= + - SYMFONY__ENV__DATABASE_DRIVER=pdo_mysql + - SYMFONY__ENV__DATABASE_HOST=db + - SYMFONY__ENV__DATABASE_PORT=3306 + - SYMFONY__ENV__DATABASE_NAME=wallabag + - SYMFONY__ENV__DATABASE_USER=wallabag + - SYMFONY__ENV__DATABASE_PASSWORD=wallapass + - SYMFONY__ENV__DATABASE_CHARSET=utf8mb4 + - SYMFONY__ENV__MAILER_HOST= + - SYMFONY__ENV__MAILER_USER= + - SYMFONY__ENV__MAILER_PASSWORD= + - SYMFONY__ENV__FROM_EMAIL= + - SYMFONY__ENV__DOMAIN_NAME=https:// + - SYMFONY__ENV__SERVER_NAME="Your wallabag instance" + ports: + - "8105:80" + volumes: + - /opt/wallabag/images:/var/www/wallabag/web/assets/images + healthcheck: + test: ["CMD", "wget" ,"--no-verbose", "--tries=1", "--spider", "http://localhost"] + interval: 1m + timeout: 3s + depends_on: + - db + - redis + restart: always + db: + image: mariadb + environment: + - MYSQL_ROOT_PASSWORD= + volumes: + - /opt/wallabag/data:/var/lib/mysql + healthcheck: + test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"] + interval: 20s + timeout: 3s + restart: always + redis: + image: redis:alpine + restart: always + healthcheck: + test: ["CMD", "redis-cli", "ping"] + interval: 20s + timeout: 3s + diff --git a/watchtower/docker-compose.yml b/watchtower/docker-compose.yml new file mode 100644 index 0000000..f1dfbb1 --- /dev/null +++ b/watchtower/docker-compose.yml @@ -0,0 +1,22 @@ +services: + watchtower: + image: containrrr/watchtower + restart: always + volumes: + - /var/run/docker.sock:/var/run/docker.sock + - /etc/timezone:/etc/timezone:ro + environment: + - WATCHTOWER_CLEANUP=true + - WATCHTOWER_INCLUDE_RESTARTING=true + - WATCHTOWER_ROLLING_RESTART=true + - WATCHTOWER_TIMEOUT=30s + - WATCHTOWER_SCHEDULE=0 30 3 * * * + - WATCHTOWER_NOTIFICATIONS=email + - WATCHTOWER_NOTIFICATION_EMAIL_FROM= + - WATCHTOWER_NOTIFICATION_EMAIL_TO= + - WATCHTOWER_NOTIFICATION_EMAIL_SERVER= + - WATCHTOWER_NOTIFICATION_EMAIL_SERVER_USER= + - WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PASSWORD= + - WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PORT= + - WATCHTOWER_NOTIFICATION_EMAIL_SERVER_TLS_SKIP_VERIFY=true + - WATCHTOWER_LABEL_ENABLE=true