diff --git a/docker-compose/README.md b/docker-compose/README.md new file mode 100644 index 0000000..5f7f4be --- /dev/null +++ b/docker-compose/README.md @@ -0,0 +1,21 @@ +# Docker-Compose Boilerplates and Templates + +## Index + +- **Authelia** - +- **Duplicati** - +- **Grafana** - +- **Homer** - +- **Influxdb** - +- **Jellyfin** - +- **Nextcloud** - +- **Nginxproxymanager** - +- **Pihole** - +- **Plex** - +- **Portainer** - +- **Prometheus** - +- **SWAG** - +- **Teleport** - +- **Traefik** - +- **Watchtower** - +- **Whoami** - diff --git a/docker-compose/duplicati/README.md b/docker-compose/duplicati/README.md new file mode 100644 index 0000000..756a350 --- /dev/null +++ b/docker-compose/duplicati/README.md @@ -0,0 +1 @@ +TODO: #16 Insert Duplicati Readme and backup scripts \ No newline at end of file diff --git a/docker-compose/homer/README.md b/docker-compose/homer/README.md new file mode 100644 index 0000000..32ecf40 --- /dev/null +++ b/docker-compose/homer/README.md @@ -0,0 +1,26 @@ +# Installation + +## Deployment + +1. Copy the configuration file from the `assets` folder into your project's asset folder. +2. Copy the `docker-compose.yml` template into your project folder and start the container. + +## Configuration + +Edit the configuration file according to the examples and documentation. + +*For more info visit:* [Official Homer Documentation](https://github.com/bastienwirtz/homer/blob/main/docs/configuration.md) + +# Best-Practices & Post-Installation + +## Disable HTTP + +Although Homer is not using any authentication data that needs to be explicitly encrypted, it's recommended to use HTTPS whenever it's possible. + +### Use a Reverse Proxy + +- [ ] Use a Reverse Proxy to securely expose administrative services. + +# Additional Referfences + +[GitHub Project](https://github.com/bastienwirtz/homer) \ No newline at end of file diff --git a/docker-compose/homer/assets/example.config.yml b/docker-compose/homer/assets/example.config.yml new file mode 100644 index 0000000..f5aec99 --- /dev/null +++ b/docker-compose/homer/assets/example.config.yml @@ -0,0 +1,82 @@ +--- +# Homepage configuration +# See https://fontawesome.com/icons for icons options + +title: "Demo dashboard" +subtitle: "Homer" +logo: "logo.png" +# icon: "fas fa-skull-crossbones" # Optional icon + +header: true +footer: '

Created with with bulma, vuejs & font awesome // Fork me on

' # set false if you want to hide it. + +# Optional theme customization +theme: default +colors: + light: + highlight-primary: "#3367d6" + highlight-secondary: "#4285f4" + highlight-hover: "#5a95f5" + background: "#f5f5f5" + card-background: "#ffffff" + text: "#363636" + text-header: "#ffffff" + text-title: "#303030" + text-subtitle: "#424242" + card-shadow: rgba(0, 0, 0, 0.1) + link-hover: "#363636" + dark: + highlight-primary: "#3367d6" + highlight-secondary: "#4285f4" + highlight-hover: "#5a95f5" + background: "#131313" + card-background: "#2b2b2b" + text: "#eaeaea" + text-header: "#ffffff" + text-title: "#fafafa" + text-subtitle: "#f5f5f5" + card-shadow: rgba(0, 0, 0, 0.4) + link-hover: "#ffdd57" + +# Optional message +message: + #url: https://b4bz.io + style: "is-dark" # See https://bulma.io/documentation/components/message/#colors for styling options. + title: "Demo !" + icon: "fa fa-grin" + content: "This is a dummy homepage demo.
Find more information on github.com/bastienwirtz/homer" + +# Optional navbar +# links: [] # Allows for navbar (dark mode, layout, and search) without any links +links: + - name: "Contribute" + icon: "fab fa-github" + url: "https://github.com/bastienwirtz/homer" + target: "_blank" # optional html a tag target attribute + - name: "Wiki" + icon: "fas fa-book" + url: "https://www.wikipedia.org/" + # this will link to a second homer page that will load config from additionnal-page.yml and keep default config values as in config.yml file + # see url field and assets/additionnal-page.yml.dist used in this example: + - name: "another page!" + icon: "fas fa-file-alt" + url: "#additionnal-page" + +# Services +# First level array represent a group. +# Leave only a "items" key if not using group (group name, icon & tagstyle are optional, section separation will not be displayed). +services: + - name: "Applications" + icon: "fas fa-cloud" + items: + - name: "Awesome app" + logo: "assets/tools/sample.png" + subtitle: "Bookmark example" + tag: "app" + url: "https://www.reddit.com/r/selfhosted/" + target: "_blank" # optional html a tag target attribute + - name: "Another one" + logo: "assets/tools/sample2.png" + subtitle: "Another application" + tag: "app" + url: "#" \ No newline at end of file diff --git a/docker-compose/homer/assets/example.custom.css b/docker-compose/homer/assets/example.custom.css new file mode 100644 index 0000000..0102bdb --- /dev/null +++ b/docker-compose/homer/assets/example.custom.css @@ -0,0 +1,8 @@ +@charset "UTF-8"; + +/* Custom card colors */ +/* Use with `class:` property of services in config.yml */ +body #app .card.green { + background-color: #006600; + color: #00ff00; +} \ No newline at end of file diff --git a/docker-compose/homer/assets/example2.config.yml b/docker-compose/homer/assets/example2.config.yml new file mode 100644 index 0000000..5540af7 --- /dev/null +++ b/docker-compose/homer/assets/example2.config.yml @@ -0,0 +1,64 @@ +--- +# Homepage configuration +# See https://fontawesome.com/icons for icons options + +title: "Hello beautiful!" +subtitle: "App dashboard" +logo: false +# icon: "fas fa-skull-crossbones" Optional icon + +header: true + +# Optional theme customization +theme: sui +colors: + light: + highlight-primary: transparent + highlight-secondary: transparent + highlight-hover: "#4a4a4a" + text-subtitle: "#424242" + dark: + background: "#2B2C56" + highlight-primary: transparent + highlight-secondary: transparent + highlight-hover: "#200b35" + text-subtitle: "#6375e8" + +# Optional navbar +# links: [] # Allows for navbar (dark mode, layout, and search) without any links +links: [] + +# Services +# First level array represent a group. +# Leave only a "items" key if not using group (group name, icon & tagstyle are optional, section separation will not be displayed). +services: + - name: "APPLICATIONS" + items: + - name: "Jenkins" + logo: "assets/tools/jenkins.png" + subtitle: "Continuous integration server" + url: "https://jenkins.io/" + - name: "RabbitMQ Management" + logo: "assets/tools/rabbitmq.png" + subtitle: "Manage & monitor RabbitMQ server" + # Optional tagstyle + # Same styling options as the optional message. + tagstyle: "is-success" + url: "https://www.rabbitmq.com/" + - name: "M/Monit" + logo: "assets/tools/monit.png" + subtitle: "Monitor & manage all monit enabled hosts" + url: "https://mmonit.com/monit/" + - name: "Grafana" + logo: "assets/tools/grafana.png" + subtitle: "Metric analytics & dashboards" + url: "https://grafana.com/" + - name: "Kibana" + logo: "assets/tools/elastic.png" + subtitle: "Explore & visualize logs" + url: "https://www.elastic.co/products/kibana" + - name: "Website monitoring" + logo: "assets/tools/pingdom.png" + subtitle: "Pingdom public reports overview" + tag: "CI" + url: "https://www.pingdom.com/" \ No newline at end of file diff --git a/docker-compose/homer/docker-compose.yml b/docker-compose/homer/docker-compose.yml new file mode 100644 index 0000000..4bbf3a3 --- /dev/null +++ b/docker-compose/homer/docker-compose.yml @@ -0,0 +1,11 @@ +version: '3' + +services: + homer: + image: b4bz/homer:latest + container_name: homer + ports: + - "8080:8080" + volumes: + - /etc/homer/assets/:/www/assets + restart: unless-stopped diff --git a/docker-compose/nextcloud/README.md b/docker-compose/nextcloud/README.md new file mode 100644 index 0000000..8fa4b7f --- /dev/null +++ b/docker-compose/nextcloud/README.md @@ -0,0 +1 @@ +TODO: #17 Insert nextcloud readme \ No newline at end of file diff --git a/docker-compose/pihole/README.md b/docker-compose/pihole/README.md new file mode 100644 index 0000000..7662040 --- /dev/null +++ b/docker-compose/pihole/README.md @@ -0,0 +1 @@ +TODO: #18 Insertz Pihole readme \ No newline at end of file diff --git a/docker-compose/pihole/pihole.yaml b/docker-compose/pihole/pihole.yaml index 297665b..1cdc4c2 100644 --- a/docker-compose/pihole/pihole.yaml +++ b/docker-compose/pihole/pihole.yaml @@ -1,8 +1,6 @@ ---- version: '3' services: - pihole: container_name: pihole image: pihole/pihole:latest @@ -14,7 +12,7 @@ services: - "443:443/tcp" environment: TZ: 'Europe/Berlin' - WEBPASSWORD: 'testtest' + WEBPASSWORD: 'your-secret-password' volumes: - etcd:/etc/pihole - dnsmasq:/etc/dnsmasq.d diff --git a/docker-compose/teleport/README..md b/docker-compose/teleport/README..md new file mode 100644 index 0000000..5a4c324 --- /dev/null +++ b/docker-compose/teleport/README..md @@ -0,0 +1 @@ +TODO: #19 Insert teleport readme \ No newline at end of file diff --git a/docker-compose/traefik/README.md b/docker-compose/traefik/README.md index 6e67228..9a202e7 100644 --- a/docker-compose/traefik/README.md +++ b/docker-compose/traefik/README.md @@ -1,5 +1,7 @@ # Installation +TODO: #21 Improve traefik docu + ## Data Persistence ... Storing Data in the `/etc/traefik` directory on the host, passing through... ```yaml diff --git a/docker-compose/uptimekuma/README.md b/docker-compose/uptimekuma/README.md new file mode 100644 index 0000000..e69de29 diff --git a/docker-compose/uptimekuma/docker-compose.yml b/docker-compose/uptimekuma/docker-compose.yml new file mode 100644 index 0000000..f5777df --- /dev/null +++ b/docker-compose/uptimekuma/docker-compose.yml @@ -0,0 +1,16 @@ + +version: '3' + +volumes: + uptimekuma-data: + driver: local + +services: + uptimekuma: + image: louislam/uptime-kuma:latest + container_name: uptimekuma + ports: + - "3001:3001" + volumes: + - uptimekuma-data:/app/data + restart: unless-stopped diff --git a/docker-compose/whoami/README.md b/docker-compose/whoami/README.md index c53c72d..95a76ce 100644 --- a/docker-compose/whoami/README.md +++ b/docker-compose/whoami/README.md @@ -1 +1 @@ -# TODO: ... \ No newline at end of file +# TODO: #20 Insert whoami readme \ No newline at end of file