{{tag>linux docker It-tools Dockge Loki}} ======Docker Miscellaneous===== =====IT-TOOLS===== Useful tools for developer and people working in IT. ++++docker-compose.yml| --- services: it-tools: image: 'corentinth/it-tools:latest' #ports: # - '8080:80' restart: unless-stopped container_name: it-tools networks: - proxy labels: - "traefik.enable=true" - "traefik.docker.network=proxy" - "traefik.http.routers.it-tools.entrypoints=http" - "traefik.http.routers.it-tools.rule=Host(`it-tools.local.kptree.net`)" #- "traefik.http.middlewares.it-tools-https-redirect.redirectscheme.scheme=https" #- "traefik.http.routers.it-tools.middlewares=it-tools-https-redirect" - "traefik.http.routers.it-tools.middlewares=secured@file" - "traefik.http.routers.it-tools-secure.entrypoints=https" - "traefik.http.routers.it-tools-secure.rule=Host(`it-tools.local.kptree.net`)" - "traefik.http.routers.it-tools-secure.tls=true" - "traefik.http.routers.it-tools-secure.tls.certresolver=hurricane" - "traefik.http.routers.it-tools-secure.service=it-tools" - "traefik.http.services.it-tools.loadbalancer.server.port=80" networks: proxy: external: true ++++ Remember to add URL to local DNS. ====References==== ++++| *Github *[[https://github.com/CorentinTh/it-tools|IT-Tools]] *[[https://github.com/JamesTurland/JimsGarage/tree/main/IT-Tools|JimsGarage IT-Tools]] ++++ =====CyberChef===== The Cyber Swiss Army Knife CyberChef is a simple, intuitive web app for carrying out all manner of "cyber" operations within a web browser. ++++docker-compose.yml| --- services: CyberChef: image: 'ghcr.io/gchq/cyberchef:latest' #ports: # - '8080:80' restart: unless-stopped container_name: cyber-chef networks: - proxy labels: - "traefik.enable=true" - "traefik.docker.network=proxy" - "traefik.http.routers.cyber-chef.entrypoints=http" - "traefik.http.routers.cyber-chef.rule=Host(`cyber-chef.local.kptree.net`)" #- "traefik.http.middlewares.cyber-chef-https-redirect.redirectscheme.scheme=https" #- "traefik.http.routers.cyber-chef.middlewares=cyber-chef-https-redirect" - "traefik.http.routers.dockge-secure.middlewares=secured@file" - "traefik.http.routers.cyber-chef-secure.entrypoints=https" - "traefik.http.routers.cyber-chef-secure.rule=Host(`cyber-chef.local.kptree.net`)" - "traefik.http.routers.cyber-chef-secure.tls=true" - "traefik.http.routers.cyber-chef-secure.tls.certresolver=hurricane" - "traefik.http.routers.cyber-chef-secure.service=cyber-chef" - "traefik.http.services.cyber-chef.loadbalancer.server.port=80" networks: proxy: external: true ++++ Remember to add URL to local DNS. ====References==== ++++| *Github *[[https://github.com/gchq/CyberChef|CyberChef]] ++++ =====Dockge===== A fancy, easy-to-use and reactive self-hosted docker compose.yaml stack-oriented manager. ++++docker-compose.yml| --- services: dockge: image: louislam/dockge:1 restart: unless-stopped # ports: # # Host Port : Container Port # - 5001:5001 volumes: - /var/run/docker.sock:/var/run/docker.sock - ./data:/app/data # If you want to use private registries, you need to share the auth file with Dockge: # - /root/.docker/:/root/.docker # Stacks Directory # ⚠️ READ IT CAREFULLY. If you did it wrong, your data could end up writing into a WRONG PATH. # ⚠️ 1. FULL path only. No relative path (MUST) # ⚠️ 2. Left Stacks Path === Right Stacks Path (MUST) - /mnt/docker_store:/mnt/docker_store environment: # Tell Dockge where is your stacks directory - DOCKGE_STACKS_DIR=/mnt/docker_store networks: - proxy labels: - "traefik.enable=true" - "traefik.docker.network=proxy" #- "traefik.http.routers.dockge.entrypoints=http" #- "traefik.http.routers.dockge.rule=Host(`dockge.local.kptree.net`)" #- "traefik.http.routers.dockge-secure.middlewares=https-redirectscheme@file" #- "traefik.http.routers.dockge-secure.middlewares=middlewares-secure-headers@file" - "traefik.http.routers.dockge-secure.middlewares=secured@file" - "traefik.http.routers.dockge-secure.entrypoints=https" - "traefik.http.routers.dockge-secure.rule=Host(`dockge.local.kptree.net`)" - "traefik.http.routers.dockge-secure.tls=true" - "traefik.http.routers.dockge-secure.tls.certresolver=hurricane" - "traefik.http.routers.dockge-secure.service=dockge" - "traefik.http.services.dockge.loadbalancer.server.port=5001" # make sure the loadbalancer is the last line!!! networks: proxy: external: true++++ Remember to add URL to local DNS. ====References==== ++++| *github *[[https://github.com/louislam/dockge|dockge]] *[[https://dockge.kuma.pet/||dockge kuma pet?]] ++++ =====Grafana===== Grafana is an open-source analytics platform that makes visualizing your data an easy process. The tool can even send you alerts based on the data it has processed. It has become a tool that is often utilized in monitoring stacks. ====References==== ++++| *[[https://grafana.com/|Grafana]] *[[https://grafana.com/docs/grafana/latest/introduction/|About]] *[[https://grafana.com/docs/grafana/latest/setup-grafana/installation/docker/|Run Grafana Docker image]] *[[https://grafana.com/docs/grafana/latest/setup-grafana/configure-docker/|Config Grafana Docker]] *[[https://grafana.com/grafana/dashboards/|Dashboards]] *[[https://grafana.com/grafana/dashboards/17346-traefik-official-standalone-dashboard/|trafik]] | [[https://grafana.com/solutions/traefik/monitor/?pg=dashboards&plcmt=traefik-official-standalone-dashboard|traefik]] *[[https://pimylifeup.com/grafana-docker/|Setting up Grafana using Docker Compose]] *[[https://medium.com/@syed_usman_ahmed/using-grafana-with-docker-part-1-2a5503bbc49b|Using Grafana with Docker Part 1]] | [[https://medium.com/@syed_usman_ahmed/using-grafana-with-docker-part-2-85883d833867|Deploy Grafana latest version with Docker — Part 2]] ++++ =====Loki - Logging===== Loki is Grafana’s log aggregation component. My first attempt at using Loki caused my Docker to fail!. I have not tried since. ====References==== ++++| *[[https://www.baeldung.com/ops/grafana-loki|Introduction to Grafana Loki]] *[[https://www.tech-couch.com/post/forwarding-docker-container-logs-to-grafana-loki|Forwarding docker container logs to Grafana Loki]] *[[https://daniel.es/blog/centralize-and-visualize-docker-logs-in-grafana-with-loki/|Centralize and visualize Docker logs in Grafana with Loki]] *[[https://grafana.com/docs/loki/latest/send-data/docker-driver/|Grafana Docker driver client]] *[[https://docs.docker.com/reference/cli/docker/plugin/enable/|docker plugin enable]] *[[https://github.com/grafana/loki/issues/974|docker plugin enable Loki gives an error #974]] ++++ =====watchtower===== With watchtower you can update the running version of your containerized app simply by pushing a new image to the Docker Hub or your own image registry. ++++watchtower can be run with| $ docker run --detach \ --name watchtower \ --volume /var/run/docker.sock:/var/run/docker.sock \ containrrr/watchtower ++++ ====reference==== *[[https://github.com/containrrr/watchtower|watchtower]] github page *Main [[https://containrrr.dev/watchtower/|watchtower]] web page *See watchtower [[https://containrrr.dev/watchtower/container-selection/|container selection]] on how to use labels in containers to make watchtower explicitly exclude, include or monitor only. *Linux handbook notes on [[https://linuxhandbook.com/watchtower/|watchtower]] <- docker_notes:nginx-php-notes|Back ^ docker_notes:index|Start page ^ |End->