diff --git a/gitea/compose.yml b/gitea/compose.yml new file mode 100644 index 0000000..dc6426f --- /dev/null +++ b/gitea/compose.yml @@ -0,0 +1,46 @@ +version: "3" + +#networks: +# gitea: +# external: false + +services: + server: + image: gitea/gitea:latest + container_name: gitea + environment: + - USER_UID=1000 + - USER_GID=1000 + - GITEA__database__DB_TYPE=mysql + - GITEA__database__HOST=database:3306 + - GITEA__database__NAME=gitea + - GITEA__database__USER=gitea + - GITEA__database__PASSWD=giteapass123 + restart: unless-stopped +# networks: +# - gitea + volumes: + # /home/rcadmin/docker/gitea/ + - /home/rcadmin/docker/gitea/data:/data + - /home/rcadmin/docker/gitea/.ssh:/data/git/.ssh + - /etc/timezone:/etc/timezone:ro + - /etc/localtime:/etc/localtime:ro + ports: + - "3000:3000" + - "2222:22" + +# depends_on: +# - db + +# db: +# image: mariadb:latest +# restart: unless-stopped +# environment: +# - MYSQL_ROOT_PASSWORD=strongpassword +# - MYSQL_USER=gitea +# - MYSQL_PASSWORD=strongpassword +# - MYSQL_DATABASE=gitea +# networks: +# - gitea +# volumes: +# - ./mariadb:/var/lib/mysql1~version: "3" diff --git a/it-tools/docker-compose.yml b/it-tools/docker-compose.yml new file mode 100644 index 0000000..31f355a --- /dev/null +++ b/it-tools/docker-compose.yml @@ -0,0 +1,13 @@ +#name: it-tools +services: + it-tools: + image: corentinth/it-tools:latest + container_name: it-tools + restart: unless-stopped + ports: + - 9080:80 +# volumes: +# - /var/run/docker.sock:/var/run/docker.sock +# - ./portainer_data:/data + +#docker run -d --name it-tools --restart unless-stopped -p 8080:80 corentinth/it-tools:latest \ No newline at end of file diff --git a/portainer/docker-compose.yml b/portainer/docker-compose.yml new file mode 100644 index 0000000..9b9f10d --- /dev/null +++ b/portainer/docker-compose.yml @@ -0,0 +1,16 @@ +#name: +services: + portainer-ce: + ports: + - 8000:8000 + - 9443:9443 + container_name: portainer + restart: always + volumes: + - /var/run/docker.sock:/var/run/docker.sock + - ./portainer_data:/data + image: portainer/portainer-ce:lts +#volumes: +# portainer_data: +# external: true +# name: portainer_data diff --git a/portainer/portainer_data/backups/portainer.db.bak b/portainer/portainer_data/backups/portainer.db.bak new file mode 100644 index 0000000..a9125a4 Binary files /dev/null and b/portainer/portainer_data/backups/portainer.db.bak differ diff --git a/portainer/portainer_data/certs/cert.pem b/portainer/portainer_data/certs/cert.pem new file mode 100644 index 0000000..8592b1a --- /dev/null +++ b/portainer/portainer_data/certs/cert.pem @@ -0,0 +1,10 @@ +-----BEGIN CERTIFICATE----- +MIIBUTCB+KADAgECAhAeWh/z+sbEZFR7EMRqqkpQMAoGCCqGSM49BAMCMAAwHhcN +MjUwODEwMTc0OTQ2WhcNMzAwODEwMTc0OTQ2WjAAMFkwEwYHKoZIzj0CAQYIKoZI +zj0DAQcDQgAERhP2yEqa1WfaVnsUcGCdBIa8hXA+Dy0M5ub+IsRacMVh+qlympdx +fnTkgqmKD//TkkrItn0LK/N6y9pr+4ACuqNUMFIwDgYDVR0PAQH/BAQDAgWgMBMG +A1UdJQQMMAoGCCsGAQUFBwMBMAwGA1UdEwEB/wQCMAAwHQYDVR0RAQH/BBMwEYIJ +bG9jYWxob3N0hwQAAAAAMAoGCCqGSM49BAMCA0gAMEUCIQDfZrHJ55O3LmeqE3qb +tJwZwjfo6VoE5riN5I4FqpKcBwIgTQKgtTAKPKs640r8JZuHbILby6PNQ131keSa +ot2MqP8= +-----END CERTIFICATE----- diff --git a/portainer/portainer_data/certs/key.pem b/portainer/portainer_data/certs/key.pem new file mode 100644 index 0000000..0f788d0 --- /dev/null +++ b/portainer/portainer_data/certs/key.pem @@ -0,0 +1,5 @@ +-----BEGIN EC PRIVATE KEY----- +MHcCAQEEIBpvOD82fiEAct1Vaia3zDFs/FQCfe+Pn5pH8WClZgfToAoGCCqGSM49 +AwEHoUQDQgAERhP2yEqa1WfaVnsUcGCdBIa8hXA+Dy0M5ub+IsRacMVh+qlympdx +fnTkgqmKD//TkkrItn0LK/N6y9pr+4ACug== +-----END EC PRIVATE KEY----- diff --git a/portainer/portainer_data/chisel/private-key.pem b/portainer/portainer_data/chisel/private-key.pem new file mode 100644 index 0000000..67139d2 --- /dev/null +++ b/portainer/portainer_data/chisel/private-key.pem @@ -0,0 +1,5 @@ +-----BEGIN EC PRIVATE KEY----- +MHcCAQEEIK2QXHQLeO1S57yTgtluWzEZvQzYbBRpuZSV9CTJLjfdoAoGCCqGSM49 +AwEHoUQDQgAEWKhlkC0UhfVbSKwi0iDZzK4PG0z5iuBfTQZrnqfIvYnYqk+mRAms +kxfOv3CyS7wEZlaEK+O2D8HnLDlS/tvxpQ== +-----END EC PRIVATE KEY----- diff --git a/portainer/portainer_data/compose/1/docker-compose.yml b/portainer/portainer_data/compose/1/docker-compose.yml new file mode 100644 index 0000000..d9f2638 --- /dev/null +++ b/portainer/portainer_data/compose/1/docker-compose.yml @@ -0,0 +1,11 @@ +#version: "3" + +services: + tor-privoxy: + restart: always + image: dockage/tor-privoxy:latest + network_mode: "host" + ports: + - "9050:9050" # Tor proxy + - "9051:9051" # Tor control port + - "8118:8118" # Privoxy diff --git a/portainer/portainer_data/compose/2/docker-compose.yml b/portainer/portainer_data/compose/2/docker-compose.yml new file mode 100644 index 0000000..d1913bd --- /dev/null +++ b/portainer/portainer_data/compose/2/docker-compose.yml @@ -0,0 +1,19 @@ +--- +services: + qbittorrent: + image: lscr.io/linuxserver/qbittorrent:latest + container_name: qbittorrent + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Oslo + - WEBUI_PORT=8080 + - TORRENTING_PORT=6881 + volumes: + - c:/Docker/qbittorrent/appdata:/config + - c:/Docker/qbittorrent/downloads:/downloads #optional + ports: + - 8080:8080 + - 6881:6881 + - 6881:6881/udp + restart: unless-stopped diff --git a/portainer/portainer_data/compose/3/docker-compose.yml b/portainer/portainer_data/compose/3/docker-compose.yml new file mode 100644 index 0000000..4897f8e --- /dev/null +++ b/portainer/portainer_data/compose/3/docker-compose.yml @@ -0,0 +1,17 @@ +#version: "3" +services: + + shepherd: + #build: . + image: containrrr/shepherd + restart: always + + volumes: + - /var/run/docker.sock:/var/run/docker.sock +# deploy: +# placement: +# constraints: +# - node.role == manager + environment: + TZ: 'Europe/Oslo' + SLEEP_TIME: '180m' diff --git a/portainer/portainer_data/compose/4/docker-compose.yml b/portainer/portainer_data/compose/4/docker-compose.yml new file mode 100644 index 0000000..78418a6 --- /dev/null +++ b/portainer/portainer_data/compose/4/docker-compose.yml @@ -0,0 +1,19 @@ +services: + watchtower: + image: containrrr/watchtower + container_name: watchtower + restart: always + environment: + WATCHTOWER_SCHEDULE: "0 0 1 * * *" + TZ: Europe/Oslo + WATCHTOWER_CLEANUP: "true" +# WATCHTOWER_DEBUG: "true" +# WATCHTOWER_NOTIFICATIONS: "email" +# WATCHTOWER_NOTIFICATION_EMAIL_FROM: "cldocker01@cloud.local" +# WATCHTOWER_NOTIFICATION_EMAIL_TO: "pushover@mailrise.xyz" +# # you have to use a network alias here, if you use your own certificate +# WATCHTOWER_NOTIFICATION_EMAIL_SERVER: "10.1.149.19" +# WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PORT: "8025" +# WATCHTOWER_NOTIFICATION_EMAIL_DELAY: 2 + volumes: + - /var/run/docker.sock:/var/run/docker.sock \ No newline at end of file diff --git a/portainer/portainer_data/compose/5/docker-compose.yml b/portainer/portainer_data/compose/5/docker-compose.yml new file mode 100644 index 0000000..1e0b4af --- /dev/null +++ b/portainer/portainer_data/compose/5/docker-compose.yml @@ -0,0 +1,8 @@ +#name: it-tools +services: + it-tools: + image: corentinth/it-tools:latest + container_name: it-tools + restart: unless-stopped + ports: + - 9080:80 diff --git a/portainer/portainer_data/docker_config/config.json b/portainer/portainer_data/docker_config/config.json new file mode 100644 index 0000000..7a9523e --- /dev/null +++ b/portainer/portainer_data/docker_config/config.json @@ -0,0 +1 @@ +{"HttpHeaders":{"X-PortainerAgent-ManagerOperation":"1","X-PortainerAgent-PublicKey":"3059301306072a8648ce3d020106082a8648ce3d03010703420004acff8368a2b18bbf274715ee7c724e55ca05e44cda34e43a09e9fa133fd1422b2239bc7d7525a56467577948a8fcd367a6c848cff79b6a904a2da016e00b2fe8","X-PortainerAgent-Signature":"bYBEZTxcRentN6roke2ctbLTgnEJanuq8sAyJ2jHp190RwmRdPAGK1dOPT8g3EBYBMxiX0TVYqfCGvbc6p9JyQ"}} \ No newline at end of file diff --git a/portainer/portainer_data/portainer.db b/portainer/portainer_data/portainer.db new file mode 100644 index 0000000..6296d5e Binary files /dev/null and b/portainer/portainer_data/portainer.db differ diff --git a/portainer/portainer_data/portainer.key b/portainer/portainer_data/portainer.key new file mode 100644 index 0000000..1634ce5 --- /dev/null +++ b/portainer/portainer_data/portainer.key @@ -0,0 +1,5 @@ +-----BEGIN EC PRIVATE KEY----- +MHcCAQEEICDDAIYq/mZqEcs7q1YHfr7m30zMd/LKohW6C+wnXmy5oAoGCCqGSM49 +AwEHoUQDQgAErP+DaKKxi78nRxXufHJOVcoF5EzaNOQ6Cen6Ez/RQisiObx9dSWl +ZGdXeUio/NNnpshIz/ebapBKLaAW4Asv6A== +-----END EC PRIVATE KEY----- diff --git a/portainer/portainer_data/portainer.pub b/portainer/portainer_data/portainer.pub new file mode 100644 index 0000000..70e235f --- /dev/null +++ b/portainer/portainer_data/portainer.pub @@ -0,0 +1,4 @@ +-----BEGIN ECDSA PUBLIC KEY----- +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAErP+DaKKxi78nRxXufHJOVcoF5Eza +NOQ6Cen6Ez/RQisiObx9dSWlZGdXeUio/NNnpshIz/ebapBKLaAW4Asv6A== +-----END ECDSA PUBLIC KEY----- diff --git a/qbittorrent/docker-compose.yml b/qbittorrent/docker-compose.yml new file mode 100644 index 0000000..06b8aca --- /dev/null +++ b/qbittorrent/docker-compose.yml @@ -0,0 +1,19 @@ +--- +services: + qbittorrent: + image: lscr.io/linuxserver/qbittorrent:latest + container_name: qbittorrent + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Oslo + - WEBUI_PORT=8080 + - TORRENTING_PORT=6881 + volumes: + - ./appdata:/config + - ./downloads:/downloads #optional + ports: + - 8080:8080 + - 6881:6881 + - 6881:6881/udp + restart: unless-stopped diff --git a/shepherd/docker-compose.yml b/shepherd/docker-compose.yml new file mode 100644 index 0000000..5246294 --- /dev/null +++ b/shepherd/docker-compose.yml @@ -0,0 +1,15 @@ +#version: "3" +services: + + shepherd: + #build: . + image: containrrr/shepherd + volumes: + - /var/run/docker.sock:/var/run/docker.sock + deploy: + placement: + constraints: + - node.role == manager + environment: + TZ: 'Europe/Oslo' + SLEEP_TIME: '180m' diff --git a/tor-privoxy/docker-compose.yml b/tor-privoxy/docker-compose.yml new file mode 100644 index 0000000..d9f2638 --- /dev/null +++ b/tor-privoxy/docker-compose.yml @@ -0,0 +1,11 @@ +#version: "3" + +services: + tor-privoxy: + restart: always + image: dockage/tor-privoxy:latest + network_mode: "host" + ports: + - "9050:9050" # Tor proxy + - "9051:9051" # Tor control port + - "8118:8118" # Privoxy diff --git a/vaultwarden/.env b/vaultwarden/.env new file mode 100644 index 0000000..7a3aa19 --- /dev/null +++ b/vaultwarden/.env @@ -0,0 +1,24 @@ +#General Settings +ADMIN_TOKEN= # randomly generated string of characters, for example running openssl rand -base64 48 +#//Refer https://github.com/dani-garcia/vaultwarden/wiki/Enabling-admin-page#secure-the-admin_token + +WEBSOCKET_ENABLED=true +SIGNUPS_ALLOWED=true ##change to false once create the admin account +#DOMAIN=https://bitwarden.example.com #replace example.com with your domain +DOMAIN=https://bitwarden.example.com #replace example.com with your domain + +# SMTP server configuration +#SMTP_HOST=smtp-relay.sendinblue.com +#SMTP_FROM=user@example.com ##replace example.com with your domain +#SMTP_TIMEOUT=15 +#SMTP_USERNAME=user@example.com ##sendinblue user +#SMTP_PASSWORD=sendinblue password +#SMTP_SECURITY=starttls # Options: off, force_tls, starttls +#SMTP_PORT=587 + +## Choose the type of secure connection for SMTP. The default is "starttls". +## The available options are: +## - "starttls": The default port is 587. +## - "force_tls": The default port is 465. +## - "off": The default port is 25. +## Ports 587 (submission) and 25 (smtp) are standard without encryption and with encryption via STARTTLS (Explicit TLS). Port 465 (submissions) is used for encrypted submission (Implicit TLS). diff --git a/vaultwarden/docker-compose.yml b/vaultwarden/docker-compose.yml new file mode 100644 index 0000000..533d5bd --- /dev/null +++ b/vaultwarden/docker-compose.yml @@ -0,0 +1,29 @@ +version: "3" +services: + vaultwarden: + image: vaultwarden/server:latest + container_name: vaultwarden + restart: unless-stopped + ports: + - 9445:80 #map any custom port to use (replace 9445 not 80) + volumes: + - ./bitwarden:/data:rw + environment: +# - ROCKET_TLS={certs="/ssl/certs/certs.pem",key="/ssl/private/key.pem"} // Environment variable is specific to the Rocket web server + - ADMIN_TOKEN=${ADMIN_TOKEN} + - WEBSOCKET_ENABLED=true + - SIGNUPS_ALLOWED=false + - SMTP_HOST=${SMTP_HOST} + - SMTP_FROM=${SMTP_FROM} + - SMTP_PORT=${SMTP_PORT} + - SMTP_SECURITY=${SMTP_SECURITY} + - SMTP_TIMEOUT=${SMTP_TIMEOUT} + - SMTP_USERNAME=${SMTP_USERNAME} + - SMTP_PASSWORD=${SMTP_PASSWORD} + - DOMAIN=${DOMAIN} + +#uncomment below network part if you are using Nginx Proxy Manager, or you can remove the same +#networks: +# default: +# external: +# name: nginx-proxy-network diff --git a/watchtower/docker-compose.yml b/watchtower/docker-compose.yml new file mode 100644 index 0000000..78418a6 --- /dev/null +++ b/watchtower/docker-compose.yml @@ -0,0 +1,19 @@ +services: + watchtower: + image: containrrr/watchtower + container_name: watchtower + restart: always + environment: + WATCHTOWER_SCHEDULE: "0 0 1 * * *" + TZ: Europe/Oslo + WATCHTOWER_CLEANUP: "true" +# WATCHTOWER_DEBUG: "true" +# WATCHTOWER_NOTIFICATIONS: "email" +# WATCHTOWER_NOTIFICATION_EMAIL_FROM: "cldocker01@cloud.local" +# WATCHTOWER_NOTIFICATION_EMAIL_TO: "pushover@mailrise.xyz" +# # you have to use a network alias here, if you use your own certificate +# WATCHTOWER_NOTIFICATION_EMAIL_SERVER: "10.1.149.19" +# WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PORT: "8025" +# WATCHTOWER_NOTIFICATION_EMAIL_DELAY: 2 + volumes: + - /var/run/docker.sock:/var/run/docker.sock \ No newline at end of file