add
This commit is contained in:
10
Bind9/config/home-clcreative-de.zone
Normal file
10
Bind9/config/home-clcreative-de.zone
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
$ORIGIN .
|
||||||
|
$TTL 86400 ; 1 day
|
||||||
|
home.clcreative.de IN SOA ns.home.clcreative.de. home.clcreative.de. (
|
||||||
|
2001062618 ; serial
|
||||||
|
3600 ; refresh (1 hour)
|
||||||
|
3600 ; retry (1 hour)
|
||||||
|
2419200 ; expire (4 weeks)
|
||||||
|
3600 ; minimum (1 hour)
|
||||||
|
)
|
||||||
|
NS ns.home.clcreative.de.
|
39
Bind9/config/named.conf
Normal file
39
Bind9/config/named.conf
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
include "/etc/bind/named.conf.key";
|
||||||
|
|
||||||
|
controls {
|
||||||
|
inet 127.0.0.1 port 953
|
||||||
|
allow { 127.0.0.1; } keys { "tsig-key"; };
|
||||||
|
};
|
||||||
|
|
||||||
|
acl docker-1 {
|
||||||
|
172.17.0.0/16;
|
||||||
|
172.18.0.0/16;
|
||||||
|
172.19.0.0/16;
|
||||||
|
172.20.0.0/16;
|
||||||
|
172.21.0.0/16;
|
||||||
|
172.22.0.0/16;
|
||||||
|
172.23.0.0/16;
|
||||||
|
172.24.0.0/16;
|
||||||
|
};
|
||||||
|
|
||||||
|
acl dmz-prod-1 {
|
||||||
|
10.20.0.0/16;
|
||||||
|
};
|
||||||
|
|
||||||
|
acl lan-prod-1 {
|
||||||
|
10.10.0.0/16;
|
||||||
|
};
|
||||||
|
|
||||||
|
options {
|
||||||
|
forwarders {
|
||||||
|
1.1.1.1;
|
||||||
|
1.0.0.1;
|
||||||
|
};
|
||||||
|
allow-query { 127.0.0.1; docker-1; lan-prod-1; dmz-prod-1; };
|
||||||
|
};
|
||||||
|
|
||||||
|
zone "home.clcreative.de" IN {
|
||||||
|
type master;
|
||||||
|
file "/etc/bind/home-clcreative-de.zone";
|
||||||
|
update-policy { grant tsig-key zonesub any; };
|
||||||
|
};
|
7
Bind9/config/rndc.conf
Normal file
7
Bind9/config/rndc.conf
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
include "/etc/bind/named.conf.key";
|
||||||
|
|
||||||
|
options {
|
||||||
|
default-key "tsig-key";
|
||||||
|
default-server 127.0.0.1;
|
||||||
|
default-port 953;
|
||||||
|
};
|
12
Bind9/docker-compose.yaml
Normal file
12
Bind9/docker-compose.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
---
|
||||||
|
services:
|
||||||
|
bind9:
|
||||||
|
container_name: dns-prod-1
|
||||||
|
image: ubuntu/bind9:9.18-23.04_edge
|
||||||
|
environment:
|
||||||
|
- BIND9_USER=root
|
||||||
|
- TZ=Europe/Berlin
|
||||||
|
volumes:
|
||||||
|
- ./config/:/etc/bind:rw
|
||||||
|
network_mode: host
|
||||||
|
restart: unless-stopped
|
29
Cadvisor/docker-compose.yaml
Normal file
29
Cadvisor/docker-compose.yaml
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
---
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
external: true
|
||||||
|
backend:
|
||||||
|
external: true
|
||||||
|
services:
|
||||||
|
cadvisor:
|
||||||
|
image: gcr.io/cadvisor/cadvisor:v0.47.2
|
||||||
|
container_name: cadvisor-prod-1
|
||||||
|
devices:
|
||||||
|
- /dev/kmsg
|
||||||
|
privileged: true
|
||||||
|
volumes:
|
||||||
|
- /:/rootfs:ro
|
||||||
|
- /var/run:/var/run:ro
|
||||||
|
- /sys:/sys:ro
|
||||||
|
- /var/lib/docker/:/var/lib/docker:ro
|
||||||
|
- /dev/disk/:/dev/disk:ro
|
||||||
|
labels:
|
||||||
|
- traefik.enable=true
|
||||||
|
- traefik.http.routers.cadvisor-prod-1.entrypoints=websecure
|
||||||
|
- traefik.http.routers.cadvisor-prod-1.rule=Host(`cadvisor-prod-1.srv-prod-1.home.clcreative.de`)
|
||||||
|
- traefik.http.routers.cadvisor-prod-1.tls=true
|
||||||
|
- traefik.http.routers.cadvisor-prod-1.tls.certresolver=cloudflare
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
- backend
|
||||||
|
restart: unless-stopped
|
24
Connector/docker-compose.yaml
Normal file
24
Connector/docker-compose.yaml
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
---
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
external: true
|
||||||
|
backend:
|
||||||
|
external: true
|
||||||
|
services:
|
||||||
|
twingate:
|
||||||
|
container_name: connector-demo-1
|
||||||
|
image: "twingate/connector:latest"
|
||||||
|
environment:
|
||||||
|
- SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
|
||||||
|
- TWINGATE_API_ENDPOINT=/connector.stock
|
||||||
|
- TWINGATE_NETWORK=clcreative
|
||||||
|
- TWINGATE_DNS=10.20.0.1
|
||||||
|
- TWINGATE_ACCESS_TOKEN=${TWINGATE_ACCESS_TOKEN}
|
||||||
|
- TWINGATE_REFRESH_TOKEN=${TWINGATE_REFRESH_TOKEN}
|
||||||
|
- TWINGATE_LOG_LEVEL=3
|
||||||
|
sysctls:
|
||||||
|
net.ipv4.ping_group_range: "0 2147483647"
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
- backend
|
||||||
|
restart: unless-stopped
|
27
Dockge/docker-compose.yaml
Normal file
27
Dockge/docker-compose.yaml
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
---
|
||||||
|
services:
|
||||||
|
dockge:
|
||||||
|
container_name: dockge-demo-1
|
||||||
|
image: louislam/dockge:1.3.3
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
- dockge-data:/app/data
|
||||||
|
- /home/xcad:/home/xcad
|
||||||
|
environment:
|
||||||
|
- DOCKGE_STACKS_DIR=/home/xcad
|
||||||
|
labels:
|
||||||
|
- traefik.enable=true
|
||||||
|
- traefik.http.routers.dockge-demo-1-http.entrypoints=web
|
||||||
|
- traefik.http.routers.dockge-demo-1-http.rule=Host(`dockge-demo-1.srv-demo-1.home.clcreative.de`)
|
||||||
|
- traefik.http.routers.dockge-demo-1-https.entrypoints=websecure
|
||||||
|
- traefik.http.routers.dockge-demo-1-https.rule=Host(`dockge-demo-1.srv-demo-1.home.clcreative.de`)
|
||||||
|
- traefik.http.routers.dockge-demo-1-https.tls=true
|
||||||
|
- traefik.http.routers.dockge-demo-1-https.tls.certresolver=cloudflare
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
dockge-data:
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
external: true
|
32
Homepage/README.md
Normal file
32
Homepage/README.md
Normal file
@ -0,0 +1,32 @@
|
|||||||
|

|
||||||
|
|
||||||
|
# Homepage
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Installation
|
||||||
|
|
||||||
|
Pour utiliser Adminer tout seul
|
||||||
|
```bash
|
||||||
|
docker compose up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
Pour utiliser Adminer avec Traefik
|
||||||
|
```bash
|
||||||
|
docker compose -f docker-compose-traefik.yml up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
Pour utiliser Adminer avec Nginx
|
||||||
|
```bash
|
||||||
|
docker compose -f docker-compose-nginx.yml up -d
|
||||||
|
```
|
||||||
|
# Utilisation
|
||||||
|
|
||||||
|
## Accueil
|
||||||
|

|
||||||
|
|
||||||
|
# More info
|
||||||
|
- more information on the website [Tips-Of-Mine](https://www.tips-of-mine.fr/)
|
||||||
|
|
||||||
|
# Buy me a coffe
|
||||||
|
<a href='https://ko-fi.com/R5R2KNI3N' target='_blank'><img height='36' style='border:0px;height:36px;' src='https://storage.ko-fi.com/cdn/kofi4.png?v=3' border='0' alt='Buy Me a Coffee at ko-fi.com' /></a>
|
42
Homepage/config/bookmarks.yaml
Normal file
42
Homepage/config/bookmarks.yaml
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
---
|
||||||
|
- Repositories:
|
||||||
|
- Homelab:
|
||||||
|
- icon: si-github-#FFFFFF
|
||||||
|
href: https://github.com/christianlempa/homelab
|
||||||
|
- Boilerplates:
|
||||||
|
- icon: si-github-#FFFFFF
|
||||||
|
href: https://github.com/christianlempa/boilerplates
|
||||||
|
- Cheat-Sheets:
|
||||||
|
- icon: si-github-#FFFFFF
|
||||||
|
href: https://github.com/christianlempa/cheat-sheets
|
||||||
|
- Scripts:
|
||||||
|
- icon: si-github-#FFFFFF
|
||||||
|
href: https://github.com/christianlempa/scripts
|
||||||
|
|
||||||
|
- Cloud Services:
|
||||||
|
- Sophos Cloud:
|
||||||
|
- icon: /icons/cld.png
|
||||||
|
href: https://cloud.sophos.com
|
||||||
|
- Cloudflare:
|
||||||
|
- icon: cloudflare.png
|
||||||
|
href: https://dash.cloudflare.com
|
||||||
|
- Teleport:
|
||||||
|
- icon: teleport.png
|
||||||
|
href: https://clcreative.teleport.sh
|
||||||
|
- Twingate:
|
||||||
|
- icon: twingate.png
|
||||||
|
href: https://clcreative.twingate.com
|
||||||
|
- Netbird:
|
||||||
|
- icon: https://netbird.io/_next/static/media/netbird-icon.00225e97.svg
|
||||||
|
href: https://app.netbird.io
|
||||||
|
|
||||||
|
- Cloud Platforms:
|
||||||
|
- Microsoft Azure:
|
||||||
|
- icon: azure.png
|
||||||
|
href: https://portal.azure.com
|
||||||
|
- Digital Ocean:
|
||||||
|
- icon: si-digitalocean-#0080FF
|
||||||
|
href: https://cloud.digitalocean.com
|
||||||
|
- CIVO:
|
||||||
|
- icon: si-civo-#239DFF
|
||||||
|
href: https://www.civo.com
|
0
Homepage/config/custom.css
Normal file
0
Homepage/config/custom.css
Normal file
0
Homepage/config/custom.js
Normal file
0
Homepage/config/custom.js
Normal file
3
Homepage/config/docker.yaml
Normal file
3
Homepage/config/docker.yaml
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
---
|
||||||
|
srv-prod-1:
|
||||||
|
socket: /var/run/docker.sock
|
1
Homepage/config/kubernetes.yaml
Normal file
1
Homepage/config/kubernetes.yaml
Normal file
@ -0,0 +1 @@
|
|||||||
|
---
|
134
Homepage/config/services.yaml
Normal file
134
Homepage/config/services.yaml
Normal file
@ -0,0 +1,134 @@
|
|||||||
|
---
|
||||||
|
- Networking:
|
||||||
|
- FritzBox GW 1:
|
||||||
|
href: http://192.168.82.1
|
||||||
|
icon: avmfritzbox.png
|
||||||
|
description: gw-prod-1
|
||||||
|
siteMonitor: http://192.168.82.1
|
||||||
|
widget:
|
||||||
|
type: fritzbox
|
||||||
|
url: http://192.168.82.1
|
||||||
|
- FritzBox GW 2:
|
||||||
|
href: http://192.168.81.1
|
||||||
|
icon: avmfritzbox.png
|
||||||
|
description: gw-prod-2
|
||||||
|
siteMonitor: http://192.168.81.1
|
||||||
|
widget:
|
||||||
|
type: fritzbox
|
||||||
|
url: http://192.168.81.1
|
||||||
|
- Sophos XGS:
|
||||||
|
href: https://fw-prod-1.home.clcreative.de:4444
|
||||||
|
icon: /icons/fw.png
|
||||||
|
description: fw-prod-1
|
||||||
|
siteMonitor: https://fw-prod-1.home.clcreative.de
|
||||||
|
- Sophos Switch:
|
||||||
|
href: https://sw-prod-1.home.clcreative.de
|
||||||
|
icon: /icons/sw.png
|
||||||
|
description: sw-prod-1
|
||||||
|
siteMonitor: https://sw-prod-1.home.clcreative.de
|
||||||
|
|
||||||
|
- Infrastructure and Data:
|
||||||
|
- Proxmox:
|
||||||
|
href: https://prx-prod-2.home.clcreative.de:8006
|
||||||
|
icon: proxmox.png
|
||||||
|
description: prx-prod-2
|
||||||
|
siteMonitor: https://prx-prod-2.home.clcreative.de:8006
|
||||||
|
widget:
|
||||||
|
type: proxmox
|
||||||
|
url: https://prx-prod-2.home.clcreative.de:8006
|
||||||
|
username: {{HOMEPAGE_VAR_PROXMOX_USERNAME}}
|
||||||
|
password: {{HOMEPAGE_VAR_PROXMOX_PASSWORD}}
|
||||||
|
- TrueNAS Scale:
|
||||||
|
href: https://nas-prod-1.home.clcreative.de
|
||||||
|
icon: truenas-scale.png
|
||||||
|
description: nas-prod-1 on prx-prod-2
|
||||||
|
siteMonitor: https://nas-prod-1.home.clcreative.de
|
||||||
|
widget:
|
||||||
|
type: truenas
|
||||||
|
url: https://nas-prod-1.home.clcreative.de
|
||||||
|
key: {{HOMEPAGE_VAR_TRUENAS_KEY}}
|
||||||
|
enablePools: false
|
||||||
|
- InfluxDB:
|
||||||
|
href: https://ixdb-prod-1.srv-prod-2.home.clcreative.de/
|
||||||
|
icon: influxdb.png
|
||||||
|
description: ixdb-prod-1 on srv-prod-2
|
||||||
|
|
||||||
|
- Management:
|
||||||
|
- Portainer:
|
||||||
|
href: https://portainer-demo-1.srv-demo-1.home.clcreative.de
|
||||||
|
icon: portainer.png
|
||||||
|
description: portainer-demo-1 on srv-demo-1
|
||||||
|
widget:
|
||||||
|
type: portainer
|
||||||
|
url: https://portainer-demo-1.srv-demo-1.home.clcreative.de
|
||||||
|
env: 2
|
||||||
|
key: {{HOMEPAGE_VAR_PORTAINER_KEY}}
|
||||||
|
- Dockge:
|
||||||
|
href: https://dockge-demo-1.srv-demo-1.home.clcreative.de
|
||||||
|
icon: si-docker-#2496ED
|
||||||
|
description: dockge-demo-1 on srv-demo-1
|
||||||
|
|
||||||
|
- Monitoring:
|
||||||
|
- UptimeKuma:
|
||||||
|
href: https://uptimekuma-prod-1.srv-prod-7.home.clcreative.de
|
||||||
|
description: uptimekuma-prod-1 on srv-prod-7
|
||||||
|
icon: uptime-kuma.png
|
||||||
|
widget:
|
||||||
|
type: uptimekuma
|
||||||
|
url: https://uptimekuma-prod-1.srv-prod-7.home.clcreative.de
|
||||||
|
slug: publicservices
|
||||||
|
- Prometheus:
|
||||||
|
href: https://prometheus-prod-1.srv-prod-1.home.clcreative.de
|
||||||
|
description: prometheus-prod-1 on srv-prod-1
|
||||||
|
icon: prometheus.png
|
||||||
|
server: srv-prod-1
|
||||||
|
container: prometheus-prod-1
|
||||||
|
widget:
|
||||||
|
type: prometheus
|
||||||
|
url: https://prometheus-prod-1.srv-prod-1.home.clcreative.de
|
||||||
|
- Grafana:
|
||||||
|
href: https://grafana-prod-1.srv-prod-1.home.clcreative.de
|
||||||
|
description: grafana-prod-1 on srv-prod-1
|
||||||
|
icon: grafana.png
|
||||||
|
server: srv-prod-1
|
||||||
|
container: grafana-prod-1
|
||||||
|
|
||||||
|
- Security and Identity:
|
||||||
|
- Authentik:
|
||||||
|
href: https://authentik-prod-1.kube-prod-1.home.clcreative.de
|
||||||
|
description: authentik-prod-1 on kube-prod-1
|
||||||
|
icon: authentik.png
|
||||||
|
widget:
|
||||||
|
type: authentik
|
||||||
|
url: https://authentik-prod-1.kube-prod-1.home.clcreative.de
|
||||||
|
key: {{HOMEPAGE_VAR_AUTHENTIK_KEY}}
|
||||||
|
- Passbolt:
|
||||||
|
href: https://passbolt-demo-1.srv-prod-1.clcreative.de
|
||||||
|
description: passbolt-demo-1 on srv-prod-1
|
||||||
|
icon: passbolt.png
|
||||||
|
|
||||||
|
- Automation:
|
||||||
|
- Kestra:
|
||||||
|
href: https://kestra-demo-1.srv-prod-1.home.clcreative.de
|
||||||
|
description: kestra-demo-1 on srv-prod-1
|
||||||
|
icon: https://kestra-io.gallerycdn.vsassets.io/extensions/kestra-io/kestra/0.0.1/1692285562923/Microsoft.VisualStudio.Services.Icons.Default
|
||||||
|
|
||||||
|
- Ansible Semaphore:
|
||||||
|
href: https://ansiblesemaphore-prod-1.srv-prod-1.home.clcreative.de
|
||||||
|
description: ansiblesemaphore-prod-1 on srv-prod-1
|
||||||
|
icon: si-ansible-#EE0000
|
||||||
|
- ArgoCD:
|
||||||
|
href: https://argocd-prod-1.kube-prod-1.home.clcreative.de
|
||||||
|
description: argocd-prod-1 on kube-prod-1
|
||||||
|
icon: si-argo-#EF7B4D
|
||||||
|
|
||||||
|
- IoT and Smarthome:
|
||||||
|
- Home Assistant:
|
||||||
|
href: https://homeassistant-prod-1.srv-prod-7.home.clcreative.de
|
||||||
|
icon: home-assistant.png
|
||||||
|
description: homeassistant-prod-1 on srv-prod-7
|
||||||
|
widget:
|
||||||
|
type: homeassistant
|
||||||
|
url: https://homeassistant-prod-1.srv-prod-7.home.clcreative.de
|
||||||
|
key: {{HOMEPAGE_VAR_HOMEASSISTANT_KEY}}
|
||||||
|
custom:
|
31
Homepage/config/settings.yaml
Normal file
31
Homepage/config/settings.yaml
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
---
|
||||||
|
title: My Awesome Homepage
|
||||||
|
headerStyle: boxed
|
||||||
|
|
||||||
|
background:
|
||||||
|
image: https://images.unsplash.com/photo-1637825891028-564f672aa42c
|
||||||
|
blur: xl
|
||||||
|
brightness: 90
|
||||||
|
opacity: 60
|
||||||
|
|
||||||
|
cardBlur: sm
|
||||||
|
|
||||||
|
providers:
|
||||||
|
openweathermap: openweathermapapikey
|
||||||
|
weatherapi: weatherapiapikey
|
||||||
|
|
||||||
|
layout:
|
||||||
|
Networking:
|
||||||
|
icon: mdi-network-#FFFFFF
|
||||||
|
Infrastructure and Data:
|
||||||
|
icon: mdi-server-#FFFFFF
|
||||||
|
Management:
|
||||||
|
icon: mdi-auto-fix-#FFFFFF
|
||||||
|
Monitoring:
|
||||||
|
icon: mdi-list-status-#FFFFFF
|
||||||
|
Automation:
|
||||||
|
icon: mdi-cog-play-#FFFFFF
|
||||||
|
IoT and Smarthome:
|
||||||
|
icon: mdi-home-#FFFFFF
|
||||||
|
Security and Identity:
|
||||||
|
icon: mdi-shield-lock-#FFFFFF
|
15
Homepage/config/widgets.yaml
Normal file
15
Homepage/config/widgets.yaml
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
---
|
||||||
|
- resources:
|
||||||
|
cpu: true
|
||||||
|
memory: true
|
||||||
|
disk: /
|
||||||
|
|
||||||
|
- search:
|
||||||
|
provider: bing
|
||||||
|
target: _blank
|
||||||
|
|
||||||
|
- datetime:
|
||||||
|
text_size: xl
|
||||||
|
format:
|
||||||
|
timeStyle: short
|
||||||
|
hourCycle: h23
|
17
Homepage/docker-compose.yml
Normal file
17
Homepage/docker-compose.yml
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
version: "3.3"
|
||||||
|
services:
|
||||||
|
homepage:
|
||||||
|
container_name: Homepage-App
|
||||||
|
hostname: Homepage-App
|
||||||
|
image: ghcr.io/gethomepage/homepage:latest
|
||||||
|
ports:
|
||||||
|
- 3000:3000
|
||||||
|
volumes:
|
||||||
|
- ./config:/app/config
|
||||||
|
- ./images:/app/images
|
||||||
|
- ./icones:/app/icones
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock # (optional) For docker integrations, see alternative methods
|
||||||
|
environment:
|
||||||
|
PUID: $PUID
|
||||||
|
PGID: $PGID
|
||||||
|
restart: unless-stopped
|
30
Influxdb2/docker-compose.yaml
Normal file
30
Influxdb2/docker-compose.yaml
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
---
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
external: true
|
||||||
|
backend:
|
||||||
|
external: true
|
||||||
|
volumes:
|
||||||
|
influxdb2-data:
|
||||||
|
services:
|
||||||
|
influxdb:
|
||||||
|
container_name: ixdb-prod-1
|
||||||
|
image: influxdb:2.7.1-alpine
|
||||||
|
volumes:
|
||||||
|
- influxdb2-data:/var/lib/influxdb2
|
||||||
|
- ./etc:/etc/influxdb2
|
||||||
|
- ./ssl/ixdb-prod-1.crt:/etc/ssl/cert.pem
|
||||||
|
- ./ssl/ixdb-prod-1.key:/etc/ssl/cert-key.pem
|
||||||
|
command: influxd --tls-cert=/etc/ssl/cert.pem --tls-key=/etc/ssl/cert-key.pem
|
||||||
|
labels:
|
||||||
|
- traefik.enable=true
|
||||||
|
- traefik.http.services.ixdb-prod-1.loadbalancer.server.port=8086
|
||||||
|
- traefik.http.services.ixdb-prod-1.loadbalancer.server.scheme=https
|
||||||
|
- traefik.http.routers.ixdb-prod-1-https.entrypoints=websecure
|
||||||
|
- traefik.http.routers.ixdb-prod-1-https.rule=Host(`ixdb-prod-1.srv-prod-2.home.clcreative.de`)
|
||||||
|
- traefik.http.routers.ixdb-prod-1-https.tls=true
|
||||||
|
- traefik.http.routers.ixdb-prod-1-https.tls.certresolver=cloudflare
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
- backend
|
||||||
|
restart: unless-stopped
|
22
Kestra/kestra-demo-1/config/config.yaml
Normal file
22
Kestra/kestra-demo-1/config/config.yaml
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
datasources:
|
||||||
|
postgres:
|
||||||
|
url: jdbc:postgresql://postgres-demo-1:5432/kestra
|
||||||
|
driverClassName: org.postgresql.Driver
|
||||||
|
username: kestra
|
||||||
|
password: k3str4
|
||||||
|
kestra:
|
||||||
|
server:
|
||||||
|
basic-auth:
|
||||||
|
enabled: false
|
||||||
|
repository:
|
||||||
|
type: postgres
|
||||||
|
storage:
|
||||||
|
type: local
|
||||||
|
local:
|
||||||
|
base-path: "/app/storage"
|
||||||
|
queue:
|
||||||
|
type: postgres
|
||||||
|
tasks:
|
||||||
|
tmp-dir:
|
||||||
|
path: /tmp/kestra-wd/tmp
|
||||||
|
url: http://localhost:8080/
|
48
Kestra/kestra-demo-1/docker-compose.yaml
Normal file
48
Kestra/kestra-demo-1/docker-compose.yaml
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
external: true
|
||||||
|
volumes:
|
||||||
|
kestra-data:
|
||||||
|
driver: local
|
||||||
|
postgres-data:
|
||||||
|
driver: local
|
||||||
|
services:
|
||||||
|
postgres:
|
||||||
|
image: postgres
|
||||||
|
container_name: postgres-demo-1
|
||||||
|
volumes:
|
||||||
|
- postgres-data:/var/lib/postgresql/data
|
||||||
|
environment:
|
||||||
|
- POSTGRES_DB=${POSTGRES_DB}
|
||||||
|
- POSTGRES_USER=${POSTGRES_USER}
|
||||||
|
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD-SHELL", "pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER}"]
|
||||||
|
interval: 30s
|
||||||
|
timeout: 10s
|
||||||
|
retries: 10
|
||||||
|
restart: unless-stopped
|
||||||
|
kestra:
|
||||||
|
image: kestra/kestra:latest-full
|
||||||
|
container_name: kestra-demo-1
|
||||||
|
pull_policy: always
|
||||||
|
entrypoint: /bin/bash
|
||||||
|
user: "root"
|
||||||
|
command:
|
||||||
|
- -c
|
||||||
|
- /app/kestra server standalone --worker-thread=128 -c config.yaml
|
||||||
|
volumes:
|
||||||
|
- kestra-data:/app/storage
|
||||||
|
- ./config/config.yaml:/app/config.yaml:ro
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
- /tmp/kestra-wd:/tmp/kestra-wd
|
||||||
|
environment:
|
||||||
|
- KESTRA_DOCKERHUB_USERNAME=${KESTRA_DOCKERHUB_USERNAME}
|
||||||
|
- KESTRA_DOCKERHUB_PASSWORD=${KESTRA_DOCKERHUB_PASSWORD}
|
||||||
|
ports:
|
||||||
|
- 8280:8080
|
||||||
|
- 8281:8081
|
||||||
|
restart: unless-stopped
|
||||||
|
depends_on:
|
||||||
|
postgres:
|
||||||
|
condition: service_started
|
21
Kestra/pipelines/demo/build-docker-1.yaml
Normal file
21
Kestra/pipelines/demo/build-docker-1.yaml
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
id: build-docker-1
|
||||||
|
namespace: demo
|
||||||
|
|
||||||
|
tasks:
|
||||||
|
- id: git
|
||||||
|
type: io.kestra.core.tasks.flows.WorkingDirectory
|
||||||
|
tasks:
|
||||||
|
- id: clone
|
||||||
|
type: io.kestra.plugin.git.Clone
|
||||||
|
url: https://github.com/christianlempa/hackbox
|
||||||
|
branch: main
|
||||||
|
|
||||||
|
- id: build
|
||||||
|
type: io.kestra.plugin.docker.Build
|
||||||
|
dockerfile: "src/Dockerfile"
|
||||||
|
tags:
|
||||||
|
- registry.hub.docker.com/xcad2k/hackbox-test:latest
|
||||||
|
push: true
|
||||||
|
credentials:
|
||||||
|
username: "{{ envs.dockerhub_username }}"
|
||||||
|
password: "{{ envs.dockerhub_password }}"
|
30
Kestra/pipelines/demo/build-docker-2.yaml
Normal file
30
Kestra/pipelines/demo/build-docker-2.yaml
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
id: build-docker-2
|
||||||
|
namespace: demo
|
||||||
|
|
||||||
|
tasks:
|
||||||
|
- id: directory
|
||||||
|
type: io.kestra.core.tasks.flows.WorkingDirectory
|
||||||
|
tasks:
|
||||||
|
- id: createFiles
|
||||||
|
type: io.kestra.core.tasks.storages.LocalFiles
|
||||||
|
inputs:
|
||||||
|
Dockerfile: |
|
||||||
|
FROM alpine:latest
|
||||||
|
WORKDIR /app
|
||||||
|
COPY . /app
|
||||||
|
RUN apk add --update python3
|
||||||
|
CMD [ "python", "main.py"]
|
||||||
|
main.py: |
|
||||||
|
if __name__ == "__main__":
|
||||||
|
print("Hello from Docker!")
|
||||||
|
exit(0)
|
||||||
|
|
||||||
|
- id: build
|
||||||
|
type: io.kestra.plugin.docker.Build
|
||||||
|
dockerfile: "Dockerfile"
|
||||||
|
tags:
|
||||||
|
- registry.hub.docker.com/xcad2k/hello-docker:latest
|
||||||
|
push: true
|
||||||
|
credentials:
|
||||||
|
username: "{{ envs.dockerhub_username }}"
|
||||||
|
password: "{{ envs.dockerhub_password }}"
|
20
Mariadb/docker-compose.yaml
Normal file
20
Mariadb/docker-compose.yaml
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
---
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
external: true
|
||||||
|
backend:
|
||||||
|
external: true
|
||||||
|
volumes:
|
||||||
|
mariadb-data:
|
||||||
|
services:
|
||||||
|
mariadb:
|
||||||
|
container_name: db-prod-1
|
||||||
|
image: mariadb:11.0.3
|
||||||
|
ports:
|
||||||
|
- 3306:3306
|
||||||
|
volumes:
|
||||||
|
- mariadb-data:/var/lib/mysql
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
- backend
|
||||||
|
restart: unless-stopped
|
53
Passbolt/docker-compose.yaml
Normal file
53
Passbolt/docker-compose.yaml
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
---
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
external: true
|
||||||
|
backend:
|
||||||
|
external: true
|
||||||
|
volumes:
|
||||||
|
vol-1:
|
||||||
|
driver: local
|
||||||
|
driver_opts:
|
||||||
|
type: nfs
|
||||||
|
o: addr=nas-prod-1.home.clcreative.de,rw,vers=4.1
|
||||||
|
device: ":/mnt/store/app-pv/passbolt-demo-1-vol-1"
|
||||||
|
vol-2:
|
||||||
|
driver: local
|
||||||
|
driver_opts:
|
||||||
|
type: nfs
|
||||||
|
o: addr=nas-prod-1.home.clcreative.de,rw,vers=4.1
|
||||||
|
device: ":/mnt/store/app-pv/passbolt-demo-1-vol-2"
|
||||||
|
services:
|
||||||
|
passbolt:
|
||||||
|
container_name: passbolt-demo-1
|
||||||
|
image: passbolt/passbolt:4.2.0-1-ce
|
||||||
|
environment:
|
||||||
|
- APP_FULL_BASE_URL=https://passbolt-demo-1.srv-prod-1.home.clcreative.de
|
||||||
|
- DATASOURCES_DEFAULT_HOST=db-prod-1.home.clcreative.de
|
||||||
|
- DATASOURCES_DEFAULT_USERNAME=passbolt-demo-1-user
|
||||||
|
- DATASOURCES_DEFAULT_PASSWORD=${DATASOURCES_DEFAULT_PASSWORD}
|
||||||
|
- DATASOURCES_DEFAULT_DATABASE=passbolt_demo_1_db
|
||||||
|
- EMAIL_TRANSPORT_DEFAULT_HOST=smtp.office365.com
|
||||||
|
- EMAIL_TRANSPORT_DEFAULT_PORT=587
|
||||||
|
- EMAIL_TRANSPORT_DEFAULT_USERNAME=${EMAIL_TRANSPORT_DEFAULT_USERNAME}
|
||||||
|
- EMAIL_TRANSPORT_DEFAULT_PASSWORD=${EMAIL_TRANSPORT_DEFAULT_PASSWORD}
|
||||||
|
- EMAIL_TRANSPORT_DEFAULT_TLS=true
|
||||||
|
- EMAIL_DEFAULT_FROM=${EMAIL_DEFAULT_FROM}
|
||||||
|
volumes:
|
||||||
|
- vol-1:/etc/passbolt/gpg
|
||||||
|
- vol-2:/etc/passbolt/jwt
|
||||||
|
command: ["/usr/bin/wait-for.sh", "-t", "0", "db-prod-1.home.clcreative.de:3306", "--", "/docker-entrypoint.sh"]
|
||||||
|
labels:
|
||||||
|
traefik.enable: "true"
|
||||||
|
traefik.http.routers.passbolt-http.entrypoints: "web"
|
||||||
|
traefik.http.routers.passbolt-http.rule: "Host(`passbolt-demo-1.srv-prod-1.home.clcreative.de`)"
|
||||||
|
traefik.http.routers.passbolt-http.middlewares: "passbolt-demo-1-middleware@file"
|
||||||
|
traefik.http.routers.passbolt-https.middlewares: "passbolt-demo-1-middleware@file"
|
||||||
|
traefik.http.routers.passbolt-https.entrypoints: "websecure"
|
||||||
|
traefik.http.routers.passbolt-https.rule: "Host(`passbolt-demo-1.srv-prod-1.home.clcreative.de`)"
|
||||||
|
traefik.http.routers.passbolt-https.tls: "true"
|
||||||
|
traefik.http.routers.passbolt-https.tls.certresolver: "cloudflare"
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
- backend
|
||||||
|
restart: unless-stopped
|
@ -18,6 +18,7 @@ Voici la liste des l'ensembles des docker-compose d'application que j'utilise.
|
|||||||
| Data capture | [Graylog](https://git.tips-of-mine.fr/Tips-Of-Mine/Docker/src/branch/main/Graylog/ "Graylog") |||✅||| https://graylog.org |
|
| Data capture | [Graylog](https://git.tips-of-mine.fr/Tips-Of-Mine/Docker/src/branch/main/Graylog/ "Graylog") |||✅||| https://graylog.org |
|
||||||
| Remote | [Guacamole](https://git.tips-of-mine.fr/Tips-Of-Mine/Docker/src/branch/main/Guacamole/ "Guacamole") |||✅|✅|| https://guacamole.apache.org |
|
| Remote | [Guacamole](https://git.tips-of-mine.fr/Tips-Of-Mine/Docker/src/branch/main/Guacamole/ "Guacamole") |||✅|✅|| https://guacamole.apache.org |
|
||||||
| Repository | [Harbor](https://git.tips-of-mine.fr/Tips-Of-Mine/Docker/src/branch/main/Harbor/ "Harbor") |||||| https://goharbor.io |
|
| Repository | [Harbor](https://git.tips-of-mine.fr/Tips-Of-Mine/Docker/src/branch/main/Harbor/ "Harbor") |||||| https://goharbor.io |
|
||||||
|
| Customer | [Homepage](https://git.tips-of-mine.fr/Tips-Of-Mine/Docker/src/branch/main/Homepage/ "Homepage") |||||| https://gethomepage.dev |
|
||||||
| Stokage/Partage | [Immich](https://git.tips-of-mine.fr/Tips-Of-Mine/Docker/src/branch/main/Immich/ "Immich") |||||| https://immich.app |
|
| Stokage/Partage | [Immich](https://git.tips-of-mine.fr/Tips-Of-Mine/Docker/src/branch/main/Immich/ "Immich") |||||| https://immich.app |
|
||||||
| | [Jaeger](https://git.tips-of-mine.fr/Tips-Of-Mine/Docker/src/branch/main/Jaeger/ "Jaeger") |||||| https://www.jaegertracing.io |
|
| | [Jaeger](https://git.tips-of-mine.fr/Tips-Of-Mine/Docker/src/branch/main/Jaeger/ "Jaeger") |||||| https://www.jaegertracing.io |
|
||||||
| Stream | [Jellyfin](https://git.tips-of-mine.fr/Tips-Of-Mine/Docker/src/branch/main/Jellyfin/ "Jellyfin") |||||| https://jellyfin.org |
|
| Stream | [Jellyfin](https://git.tips-of-mine.fr/Tips-Of-Mine/Docker/src/branch/main/Jellyfin/ "Jellyfin") |||||| https://jellyfin.org |
|
||||||
|
22
Teleport/config/teleport.yaml
Normal file
22
Teleport/config/teleport.yaml
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
version: v3
|
||||||
|
teleport:
|
||||||
|
nodename: teleport-demo-1.srv-prod-1.home.clcreative.de
|
||||||
|
data_dir: /var/lib/teleport
|
||||||
|
log:
|
||||||
|
output: stderr
|
||||||
|
severity: INFO
|
||||||
|
format:
|
||||||
|
output: text
|
||||||
|
auth_service:
|
||||||
|
enabled: yes
|
||||||
|
listen_addr: 0.0.0.0:3025
|
||||||
|
proxy_listener_mode: multiplex
|
||||||
|
cluster_name: teleport-demo-1.srv-prod-1.home.clcreative.de
|
||||||
|
ssh_service:
|
||||||
|
enabled: no
|
||||||
|
proxy_service:
|
||||||
|
enabled: yes
|
||||||
|
web_listen_addr: 0.0.0.0:3080
|
||||||
|
public_addr: teleport-demo-1.srv-prod-1.home.clcreative.de
|
||||||
|
https_keypairs: []
|
||||||
|
acme: {}
|
29
Teleport/docker-compose.yaml
Normal file
29
Teleport/docker-compose.yaml
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
---
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
external: true
|
||||||
|
services:
|
||||||
|
teleport:
|
||||||
|
image: public.ecr.aws/gravitational/teleport-distroless-debug:15.1.4
|
||||||
|
container_name: teleport-demo-1
|
||||||
|
ports:
|
||||||
|
- "3080:3080"
|
||||||
|
- "3023:3023"
|
||||||
|
- "3024:3024"
|
||||||
|
- "3025:3025"
|
||||||
|
volumes:
|
||||||
|
- ./config:/etc/teleport
|
||||||
|
- ./data:/var/lib/teleport
|
||||||
|
labels:
|
||||||
|
traefik.enable: "true"
|
||||||
|
traefik.http.services.teleport-demo-1.loadbalancer.server.port: "3080"
|
||||||
|
traefik.http.services.teleport-demo-1.loadbalancer.server.scheme: "https"
|
||||||
|
traefik.http.routers.teleport-demo-1-http.entrypoints: "web"
|
||||||
|
traefik.http.routers.teleport-demo-1-http.rule: "Host(`teleport-demo-1.srv-prod-1.home.clcreative.de`)"
|
||||||
|
traefik.http.routers.teleport-demo-1-https.entrypoints: "websecure"
|
||||||
|
traefik.http.routers.teleport-demo-1-https.rule: "Host(`teleport-demo-1.srv-prod-1.home.clcreative.de`)"
|
||||||
|
traefik.http.routers.teleport-demo-1-https.tls: "true"
|
||||||
|
traefik.http.routers.teleport-demo-1-https.tls.certresolver: "cloudflare"
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
restart: unless-stopped
|
21
Uptime-Kuma/docker-compose.yaml
Normal file
21
Uptime-Kuma/docker-compose.yaml
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
---
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
external: true
|
||||||
|
services:
|
||||||
|
uptimekuma:
|
||||||
|
image: louislam/uptime-kuma:1.23.2-alpine
|
||||||
|
container_name: uptimekuma
|
||||||
|
volumes:
|
||||||
|
- ./data:/app/data
|
||||||
|
labels:
|
||||||
|
- traefik.enable=true
|
||||||
|
- traefik.http.routers.uptimekuma-prod-1-http.entrypoints=web
|
||||||
|
- traefik.http.routers.uptimekuma-prod-1-http.rule=Host(`uptimekuma-prod-1.srv-prod-7.home.clcreative.de`)
|
||||||
|
- traefik.http.routers.uptimekuma-prod-1-https.entrypoints=websecure
|
||||||
|
- traefik.http.routers.uptimekuma-prod-1-https.rule=Host(`uptimekuma-prod-1.srv-prod-7.home.clcreative.de`)
|
||||||
|
- traefik.http.routers.uptimekuma-prod-1-https.tls=true
|
||||||
|
- traefik.http.routers.uptimekuma-prod-1-https.tls.certresolver=cloudflare
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
restart: unless-stopped
|
26
netbird/docker-compose.yaml
Normal file
26
netbird/docker-compose.yaml
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
---
|
||||||
|
services:
|
||||||
|
netbird:
|
||||||
|
image: netbirdio/netbird:0.24.2
|
||||||
|
container_name: netbird-demo-1
|
||||||
|
hostname: netbird-demo-1.srv-demo-1.home.clcreative.de
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN
|
||||||
|
- SYS_ADMIN
|
||||||
|
- SYS_RESOURCE
|
||||||
|
environment:
|
||||||
|
- NB_SETUP_KEY=${SETUP_KEY}
|
||||||
|
volumes:
|
||||||
|
- netbird-client:/etc/netbird
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
- backend
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
netbird-client:
|
||||||
|
name: netbird-client
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
external: true
|
||||||
|
backend:
|
||||||
|
external: true
|
Reference in New Issue
Block a user