Compare commits
355 Commits
Author | SHA1 | Date |
---|---|---|
Renovate Bot | 6f197dca68 | |
Michael Grote | a430c21f64 | |
Michael Grote | 04f5ff37e1 | |
Michael Grote | 1c30a6ba9d | |
Michael Grote | 1933c08743 | |
Michael Grote | cc23b5c7af | |
Michael Grote | c4e25c5b01 | |
Renovate Bot | 103ec7b2b4 | |
Renovate Bot | d8ce46bf2f | |
Renovate Bot | 2c452216ae | |
Renovate Bot | 170137646f | |
Renovate Bot | b0976790f9 | |
Renovate Bot | 0d340c2406 | |
Renovate Bot | 6894fbaa20 | |
Renovate Bot | 835a7b4349 | |
Renovate Bot | 64a7bc5abf | |
Michael Grote | e84e8e2bf9 | |
Renovate Bot | af06bad983 | |
Michael Grote | 2110866cde | |
Renovate Bot | 15a45c166c | |
Renovate Bot | 86611d370c | |
Renovate Bot | 6b4e8d8126 | |
Michael Grote | c1c8e0a770 | |
Michael Grote | 1c78c0b234 | |
Michael Grote | 52713efe27 | |
Michael Grote | fc27ef24c9 | |
Michael Grote | 4be06aff78 | |
Michael Grote | 951737e9dd | |
Michael Grote | cc52a1aeb3 | |
Michael Grote | bf261f06a7 | |
Michael Grote | ddf0cfd360 | |
Michael Grote | 98b346166a | |
Michael Grote | a34e9376ac | |
Michael Grote | 966f9328dc | |
Michael Grote | 82d1f00b19 | |
Michael Grote | c55594417e | |
Michael Grote | a25f80278c | |
Michael Grote | 5436e47ad8 | |
Michael Grote | c470e1573d | |
Renovate Bot | d4a6e3e5de | |
Michael Grote | dc88f9cce0 | |
Michael Grote | f80fd726eb | |
Renovate Bot | d0e1089918 | |
Renovate Bot | 6abb119165 | |
Renovate Bot | 6b6e4898b8 | |
Renovate Bot | f4fc28d99f | |
Michael Grote | 0f98546add | |
Renovate Bot | 048e31e195 | |
Renovate Bot | aa85ff189a | |
Renovate Bot | 117a36b3c7 | |
Renovate Bot | 78cc040716 | |
Renovate Bot | 5704035a77 | |
Renovate Bot | e88cee7ede | |
Renovate Bot | 29f05eb42f | |
Renovate Bot | 69d3ebe3cd | |
Renovate Bot | 620c4ac6c5 | |
Renovate Bot | 0ad2bb26d9 | |
Renovate Bot | 8d8afe8d83 | |
Renovate Bot | 7a05bd4050 | |
Renovate Bot | b1bbe26751 | |
Michael Grote | a48da392af | |
Michael Grote | 533f0a3fb5 | |
Renovate Bot | 5fec01689e | |
Renovate Bot | 7260127742 | |
Renovate Bot | 909d0d60bc | |
Renovate Bot | 7fabe29018 | |
Renovate Bot | 6475a286b9 | |
Renovate Bot | ec9de81ac3 | |
Renovate Bot | 32803819bc | |
Renovate Bot | 20051da900 | |
Renovate Bot | ae01eb0866 | |
Renovate Bot | 17291f9650 | |
Renovate Bot | dd0a503574 | |
Renovate Bot | 5792317af9 | |
Michael Grote | 1763fdf1b6 | |
Renovate Bot | d255126da5 | |
Renovate Bot | 17b8191102 | |
Michael Grote | bdfaed952e | |
Michael Grote | 106db6c320 | |
Renovate Bot | 62c19ddd60 | |
Renovate Bot | 9ceb938708 | |
Michael Grote | 9d30eef8de | |
Renovate Bot | a2331652dc | |
Renovate Bot | bd3104caea | |
Renovate Bot | 99228a967d | |
Renovate Bot | 5fa6ce896a | |
Renovate Bot | 7440b4c7f9 | |
Renovate Bot | 125f576f45 | |
Renovate Bot | 9def72062e | |
Michael Grote | 5e6034bf59 | |
Michael Grote | 2e249095b8 | |
Michael Grote | b9fe4cc8b3 | |
Michael Grote | e732ebf535 | |
Renovate Bot | e995a34d49 | |
Michael Grote | dda0d457e1 | |
Renovate Bot | 2671f7aaa9 | |
Renovate Bot | 72bc4733c7 | |
Michael Grote | eaab918404 | |
Michael Grote | 1f3a31ff24 | |
Renovate Bot | 1ce258bd73 | |
Renovate Bot | 9a800d951c | |
Renovate Bot | ba1f612fa6 | |
Renovate Bot | a833fa69a4 | |
Renovate Bot | bf921ac97b | |
Renovate Bot | d7ffb42345 | |
Renovate Bot | 26bad02163 | |
Renovate Bot | 23dc9530e8 | |
Renovate Bot | 9c81e8b410 | |
Renovate Bot | f25f92a1ee | |
Renovate Bot | 40cb593166 | |
Renovate Bot | 61b9438fe9 | |
Renovate Bot | 0fa741121c | |
Renovate Bot | 34e6d1ba9e | |
Renovate Bot | 72a2cc948a | |
Renovate Bot | 99a549d29e | |
Michael Grote | 288cb98f1a | |
Michael Grote | b0272ef3a7 | |
Michael Grote | 0f94bf7f50 | |
Renovate Bot | f21f3ff114 | |
Renovate Bot | 900c579794 | |
Renovate Bot | aa3a6f9b28 | |
Renovate Bot | c6fc94c646 | |
Renovate Bot | 0201ff7995 | |
Renovate Bot | d2c35673e1 | |
Renovate Bot | efc8871fd4 | |
Renovate Bot | 7f47f637c3 | |
Renovate Bot | 1f08dffcb4 | |
Renovate Bot | 57db63d936 | |
Renovate Bot | 94899ff4c5 | |
Renovate Bot | 7323ea0cc3 | |
Renovate Bot | d094daa875 | |
Renovate Bot | 978d26fa77 | |
Michael Grote | e0542bf162 | |
Michael Grote | 5806011b25 | |
Renovate Bot | e3d31c746d | |
Michael Grote | d466a8a703 | |
Michael Grote | 8d48b93616 | |
Michael Grote | dd5f55005f | |
Renovate Bot | 41dbd2a389 | |
Renovate Bot | cc36c3621f | |
Renovate Bot | b5c613d3c7 | |
Renovate Bot | d2c133e406 | |
Renovate Bot | 73cfc54d54 | |
Renovate Bot | 06e407963e | |
Renovate Bot | 921913c2ca | |
Renovate Bot | 0e322ff036 | |
Renovate Bot | 3048c1c89b | |
Renovate Bot | f76506f6b6 | |
Renovate Bot | b053b90c22 | |
Renovate Bot | 34603b5631 | |
Renovate Bot | 6153bef243 | |
Michael Grote | 3326f43d33 | |
Renovate Bot | cda0d03ee7 | |
Renovate Bot | 858a88e7b1 | |
Michael Grote | c656c6b2c7 | |
Renovate Bot | 83e12401c2 | |
Michael Grote | 32fe00c0b6 | |
Renovate Bot | f32e2d377d | |
Renovate Bot | 0a09a24b6a | |
Renovate Bot | a4f9aa2481 | |
Renovate Bot | d728d336d1 | |
Renovate Bot | 7d01f960ff | |
Renovate Bot | 730fcee200 | |
Renovate Bot | df7bfb0266 | |
Renovate Bot | 2b64072782 | |
Renovate Bot | e4a8dad2a0 | |
Renovate Bot | b11d014871 | |
Renovate Bot | 02fac77011 | |
Renovate Bot | 08d43b519c | |
Renovate Bot | 0331c4030c | |
Renovate Bot | d42424048c | |
Renovate Bot | 473c9ad8d1 | |
Renovate Bot | 65e719ca40 | |
Renovate Bot | 0c0c33d84b | |
Renovate Bot | 1b48ba9559 | |
Renovate Bot | 62ca22a471 | |
Renovate Bot | 007a1c6e54 | |
Renovate Bot | 5d9f108662 | |
Renovate Bot | 4451e8e915 | |
Renovate Bot | 441d05f8c4 | |
Renovate Bot | 38f4e4b47b | |
Renovate Bot | 77b9870b87 | |
Renovate Bot | 7c6fb2f6b6 | |
Renovate Bot | 073a0818e9 | |
Renovate Bot | d775299f3d | |
Michael Grote | 19b45dd3a0 | |
Michael Grote | e6b47dfefe | |
Michael Grote | a36b1bfb97 | |
Renovate Bot | b2b41fb4fa | |
Renovate Bot | 812e1e761e | |
Michael Grote | f09c2a61a3 | |
Michael Grote | 21c16b4081 | |
Michael Grote | fa5c45c7be | |
Renovate Bot | 76c734b99d | |
Michael Grote | c6bc77d853 | |
Renovate Bot | bfe7569c2c | |
Renovate Bot | 8d27e45137 | |
Michael Grote | e722f20c65 | |
Renovate Bot | 90fa6e060d | |
Renovate Bot | 7a5303ab00 | |
Renovate Bot | 6e72dd3f9a | |
Renovate Bot | 555f1bd129 | |
Michael Grote | b775397fd5 | |
Renovate Bot | e9fb77dec4 | |
Renovate Bot | 246cc033d0 | |
Renovate Bot | 11eb880284 | |
Renovate Bot | 227fc06297 | |
Renovate Bot | 6adb20f569 | |
Renovate Bot | ed10c86ca1 | |
Renovate Bot | 47e4a045f5 | |
Renovate Bot | 6bdca2b59a | |
Renovate Bot | 8a95809329 | |
Renovate Bot | 18691b2002 | |
Renovate Bot | 6677836dda | |
Michael Grote | 566b316024 | |
Michael Grote | 71db37edef | |
Michael Grote | 65fb6fcc37 | |
Renovate Bot | cd603b54f3 | |
Renovate Bot | f9c351a34f | |
Renovate Bot | c25baeef10 | |
Renovate Bot | 89afcfad75 | |
Renovate Bot | fc37e87bb3 | |
Renovate Bot | 3d077271b5 | |
Renovate Bot | 64eb899e69 | |
Renovate Bot | b0ac91b25f | |
Renovate Bot | 34382f8f4a | |
Renovate Bot | e3df6561e2 | |
Renovate Bot | 27f1a5dead | |
Renovate Bot | 038eb2e8b8 | |
Michael Grote | 639f961190 | |
Michael Grote | 612e5abff6 | |
Renovate Bot | f0270411fd | |
Renovate Bot | ae07f7b8e9 | |
Renovate Bot | 3aad4ea588 | |
Michael Grote | 37a04a3780 | |
Michael Grote | 93323ac51f | |
Michael Grote | 9841c0b8f8 | |
Michael Grote | db9284fe1c | |
Michael Grote | 5f58b33a33 | |
Michael Grote | a02e2bfefe | |
Renovate Bot | 633889b5ca | |
Renovate Bot | 6101a5b84d | |
Renovate Bot | 2c20b5cbf4 | |
Renovate Bot | c32445b554 | |
Renovate Bot | d337a8e548 | |
Renovate Bot | f7e30de13f | |
Renovate Bot | 5ce02e6e5e | |
Renovate Bot | 8d53348b3c | |
Renovate Bot | b1c346e1c2 | |
Renovate Bot | cb0b34dfa0 | |
Renovate Bot | 780814373a | |
Michael Grote | dc43a27d29 | |
Michael Grote | 6ebbb85f63 | |
Renovate Bot | b1216eedd8 | |
Renovate Bot | 8c7a893fdc | |
Michael Grote | 9ac9ae6298 | |
Renovate Bot | d6e5867488 | |
Renovate Bot | 76bd7aa6b7 | |
Michael Grote | 6f999aa798 | |
Renovate Bot | 1f773a4727 | |
Renovate Bot | b2da2db831 | |
Renovate Bot | 2a5ffc7943 | |
Michael Grote | 1f8282898b | |
Renovate Bot | c21856b919 | |
Renovate Bot | 7a76b33d15 | |
Michael Grote | df05e01c2d | |
Renovate Bot | 03721296b3 | |
Renovate Bot | 067889482c | |
Renovate Bot | 574c205d0b | |
Renovate Bot | 959949e382 | |
Michael Grote | 7dd225b473 | |
Renovate Bot | b93c42f201 | |
Renovate Bot | 37f267887c | |
Michael Grote | 8e6ad348bd | |
Michael Grote | c5721ecab3 | |
Renovate Bot | b3d68b05f1 | |
Renovate Bot | 47c5af145c | |
Renovate Bot | 584c5d01b2 | |
Renovate Bot | 274314c49c | |
Renovate Bot | 3fcf2e7db3 | |
Renovate Bot | 946d8e17f7 | |
Renovate Bot | ced4ad92d0 | |
Renovate Bot | d04335553b | |
Renovate Bot | 494c1953a7 | |
Renovate Bot | 3803d94a43 | |
Renovate Bot | 5277792006 | |
Renovate Bot | c91a029c36 | |
Renovate Bot | c83a911052 | |
Renovate Bot | bc5327f1c9 | |
Renovate Bot | 11c66ebb0a | |
Michael Grote | d943c9372a | |
Michael Grote | 47b00dca68 | |
Renovate Bot | e3ea288caf | |
Renovate Bot | 91b68f6b17 | |
Renovate Bot | b352dde4a3 | |
Michael Grote | 712cc32db1 | |
Michael Grote | 7169c251d3 | |
Renovate Bot | a65abe6236 | |
Renovate Bot | 8a85d023b9 | |
Renovate Bot | 901a046fb2 | |
Michael Grote | 154a6d6c41 | |
Michael Grote | 170e788c9b | |
Michael Grote | 3d73e3eabf | |
Michael Grote | 28517eaa33 | |
Michael Grote | 7d118f1193 | |
Michael Grote | 8a8ef50dea | |
Michael Grote | 49d66e7cf0 | |
Michael Grote | 5e1b9e88a5 | |
Michael Grote | 49cc411e2b | |
Michael Grote | 87ecbf6353 | |
Michael Grote | 6157fa5d48 | |
Michael Grote | 8d507e1470 | |
Michael Grote | 78bb96160b | |
Michael Grote | 7f2eb65658 | |
Michael Grote | 0d9d1814c4 | |
Michael Grote | d6bb2cfae4 | |
Michael Grote | 33faf8b188 | |
Michael Grote | bc754e8b42 | |
Michael Grote | 688c305de9 | |
Michael Grote | 48df9a2074 | |
Michael Grote | 955f7dbbf7 | |
Michael Grote | 36e57f1532 | |
Michael Grote | 3e4ff01fee | |
Michael Grote | d5071e72a7 | |
Michael Grote | 32d3b7fde4 | |
Michael Grote | cde39970eb | |
Michael Grote | a091463e8e | |
Michael Grote | f201aaef06 | |
Michael Grote | 7b8f61c750 | |
Michael Grote | 8fe2c55d25 | |
Michael Grote | f301138080 | |
Michael Grote | 44206a1b30 | |
Michael Grote | 9fd733b4ec | |
Michael Grote | 391ba0dee5 | |
Michael Grote | 2ba138ab1c | |
Michael Grote | 3e23d1e62e | |
Michael Grote | 4a507b9dc6 | |
Michael Grote | 92eb30ccb3 | |
Michael Grote | b61a027163 | |
Michael Grote | e8d7c61ff2 | |
Michael Grote | 9e0a06079e | |
Michael Grote | 4129af2b83 | |
Michael Grote | 31a903c556 | |
Michael Grote | 1840add9b1 | |
Michael Grote | d3a9241d12 | |
Michael Grote | 7c0c860600 | |
Michael Grote | 55f002f828 | |
Michael Grote | f4db26b373 | |
Michael Grote | 5a76e15608 | |
Michael Grote | b951001484 | |
Michael Grote | ccbc980198 | |
Michael Grote | 41170511de | |
Michael Grote | 04a75ae752 | |
Michael Grote | 30fbc6367a | |
Michael Grote | 5a0830ffc5 |
|
@ -12,15 +12,14 @@ exclude_paths:
|
|||
- .gitlab-ci.yml
|
||||
- friedhof/
|
||||
- playbooks/on-off
|
||||
- roles/geerlingguy-ansible-role-pip
|
||||
- roles/pyratlabs-ansible-role-k3s
|
||||
- roles/robertdebock-ansible-role-bootstrap
|
||||
- roles/gantsign-ansible-role-ctop
|
||||
- roles/geerlingguy-ansible-role-docker
|
||||
- roles/geerlingguy-ansible-role-helm
|
||||
- roles/geerlingguy-ansible-role-nfs
|
||||
- roles/hifis-net-ansible-role-unattended-upgrades
|
||||
- roles/mrlesmithjr-ansible-manage-lvm
|
||||
- roles/oefenweb-ansible-ufw
|
||||
- roles/pandemonium1986-ansible-role-k9s
|
||||
- roles/pyratlabs-ansible-role-gitea
|
||||
- roles/ansible-role-pip
|
||||
- roles/ansible-role-bootstrap
|
||||
- roles/ansible_role_ctop
|
||||
- roles/ansible-role-docker
|
||||
- roles/ansible-role-helm
|
||||
- roles/ansible-role-nfs
|
||||
- roles/ansible-role-unattended-upgrades
|
||||
- roles/ansible-manage-lvm
|
||||
- roles/ansible-ufw
|
||||
- roles/ansible_role_gitea
|
||||
- roles/ansible-role-postgresql
|
||||
|
|
34
.drone.yml
|
@ -1,34 +0,0 @@
|
|||
---
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: gitleaks
|
||||
|
||||
steps:
|
||||
- name: gitleaks
|
||||
image: plugins/gitleaks
|
||||
settings:
|
||||
path: .
|
||||
when:
|
||||
event:
|
||||
exclude:
|
||||
- tag
|
||||
|
||||
---
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: ansible-lint
|
||||
steps:
|
||||
- name: ansible-lint
|
||||
image: quay.io/ansible/creator-ee
|
||||
commands:
|
||||
- ansible-lint --version
|
||||
- echo $ANSIBLE_VAULT_PASSWORD > ./vault-pass.yml
|
||||
- ansible-galaxy install -r requirements.yml
|
||||
- ansible-lint --force-color --format pep8
|
||||
when:
|
||||
event:
|
||||
exclude:
|
||||
- tag
|
||||
environment:
|
||||
ANSIBLE_VAULT_PASSWORD:
|
||||
from_secret: vault-pass
|
|
@ -2,16 +2,19 @@
|
|||
vault-pass.yml
|
||||
id_ed25519
|
||||
id_ed25519.pub
|
||||
roles/geerlingguy-ansible-role-pip
|
||||
roles/pyratlabs-ansible-role-k3s
|
||||
roles/robertdebock-ansible-role-bootstrap
|
||||
roles/gantsign-ansible-role-ctop
|
||||
roles/geerlingguy-ansible-role-docker
|
||||
roles/geerlingguy-ansible-role-helm
|
||||
roles/geerlingguy-ansible-role-nfs
|
||||
roles/hifis-net-ansible-role-unattended-upgrades
|
||||
roles/mrlesmithjr-ansible-manage-lvm
|
||||
roles/oefenweb-ansible-ufw
|
||||
roles/ansible-role-pip
|
||||
roles/ansible-role-k3s
|
||||
roles/ansible-role-bootstrap
|
||||
roles/ansible_role_ctop
|
||||
roles/ansible-role-docker
|
||||
roles/ansible-role-helm
|
||||
roles/ansible-role-nfs
|
||||
roles/ansible_role_gitea
|
||||
roles/ansible-role-unattended-upgrades
|
||||
roles/ansible-manage-lvm
|
||||
roles/ansible-ufw
|
||||
roles/pandemonium1986-ansible-role-k9s
|
||||
roles/pyratlabs-ansible-role-gitea
|
||||
roles/ansible_role_gitea
|
||||
collections/
|
||||
plugins/lookup/__pycache__/
|
||||
roles/ansible-role-postgresql
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
---
|
||||
depends_on:
|
||||
- gitleaks
|
||||
|
||||
steps:
|
||||
ansible-lint:
|
||||
image: quay.io/ansible/creator-ee:v24.2.0
|
||||
commands:
|
||||
- ansible-lint --version
|
||||
- echo $${VAULTPASS} > ./vault-pass.yml # nach des Secret in Großschreibung
|
||||
- ansible-galaxy install -r requirements.yaml
|
||||
- ansible-lint --force-color --format pep8
|
||||
# https://woodpecker-ci.org/docs/usage/secrets#use-secrets-in-commands
|
||||
secrets: [vaultpass]
|
||||
when:
|
||||
- event: [push, pull_request, cron]
|
||||
evaluate: 'CI_COMMIT_AUTHOR_EMAIL != "renovate@mgrote.net"'
|
||||
...
|
|
@ -0,0 +1,10 @@
|
|||
---
|
||||
steps:
|
||||
gitleaks:
|
||||
image: zricethezav/gitleaks:v8.18.2
|
||||
commands:
|
||||
- gitleaks detect --no-git --verbose --source $CI_WORKSPACE
|
||||
when:
|
||||
- event: [push, pull_request, cron]
|
||||
evaluate: 'CI_COMMIT_AUTHOR_EMAIL != "renovate@mgrote.net"'
|
||||
...
|
|
@ -1 +1,3 @@
|
|||
# ansible_heimserver
|
||||
|
||||
[![status-badge](https://ci.mgrote.net/api/badges/2/status.svg)](https://ci.mgrote.net/repos/2)
|
||||
|
|
|
@ -4,7 +4,7 @@ nocows = 1
|
|||
retry_files_enabled = False
|
||||
roles_path = ./roles
|
||||
lookup_plugins = ./plugins/lookup
|
||||
collections_paths = ./collections
|
||||
collections_path = ./collections
|
||||
private_key_file = ./id_ed25519
|
||||
vault_password_file = vault-pass.yml
|
||||
gathering = smart
|
||||
|
|
|
@ -1,54 +0,0 @@
|
|||
version: '3.3'
|
||||
services:
|
||||
# server
|
||||
drone:
|
||||
volumes:
|
||||
- 'data:/data'
|
||||
environment:
|
||||
DRONE_GITEA_SERVER: https://git.mgrote.net
|
||||
DRONE_GITEA_CLIENT_ID: f8f0db2a-0089-4e23-9f5a-a5e52f20d765
|
||||
DRONE_GITEA_CLIENT_SECRET: {{ lookup('keepass', 'drone_gitea_client_secret', 'password') }}
|
||||
DRONE_RPC_SECRET: {{ lookup('keepass', 'drone_rpc_secret', 'password') }}
|
||||
DRONE_SERVER_HOST: docker10.grote.lan:81
|
||||
DRONE_SERVER_PROTO: http
|
||||
DRONE_USER_CREATE: username:mg,admin:true # Gitea-Nutzer "mg" als Admin
|
||||
#DRONE_LOGS_DEBUG: true
|
||||
ports:
|
||||
- '81:80'
|
||||
- '444:443'
|
||||
restart: always
|
||||
container_name: drone-server
|
||||
image: 'drone/drone:2'
|
||||
networks:
|
||||
- intern
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
|
||||
# runner
|
||||
drone-runner-docker:
|
||||
volumes:
|
||||
- '/var/run/docker.sock:/var/run/docker.sock'
|
||||
environment:
|
||||
DRONE_RPC_PROTO: http
|
||||
# container-name des servers
|
||||
DRONE_RPC_HOST: drone-server
|
||||
DRONE_RPC_SECRET: {{ lookup('keepass', 'drone_rpc_secret', 'password') }}
|
||||
DRONE_RUNNER_CAPACITY: 8
|
||||
DRONE_RUNNER_NAME: drone-runner
|
||||
ports:
|
||||
- '3000:3000'
|
||||
restart: always
|
||||
container_name: drone-runner
|
||||
image: 'drone/drone-runner-docker:latest'
|
||||
networks:
|
||||
- intern
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
com.centurylinklabs.watchtower.depends-on: drone-server
|
||||
|
||||
######## Volumes ########
|
||||
volumes:
|
||||
data:
|
||||
######## Networks ########
|
||||
networks:
|
||||
intern: # hier kommunizieren Runner + Server
|
|
@ -1,174 +0,0 @@
|
|||
@charset "UTF-8";
|
||||
|
||||
|
||||
/* Catppuccin theme for Homer */
|
||||
|
||||
#app.theme-default.is-dark {
|
||||
--catppuccin-base: #303446;
|
||||
--catppuccin-surface0: #414559;
|
||||
--catppuccin-text: #c6d0f5;
|
||||
--catppuccin-surface2: #626880;
|
||||
--catppuccin-teal: #81c8be;
|
||||
--catppuccin-green: #a6d189;
|
||||
--catppuccin-peach: #ef9f76;
|
||||
--catppuccin-pink: #f4b8e4;
|
||||
--catppuccin-mauve: #ca9ee6;
|
||||
--catppuccin-red: #e78284;
|
||||
--catppuccin-yellow: #e5c890;
|
||||
|
||||
--highlight-primary: transparent;
|
||||
--highlight-secondary: var(--catppuccin-surface0);
|
||||
--highlight-hover: var(--catppuccin-surface0);
|
||||
--background: var(--catppuccin-base);
|
||||
--highlight-hover: var(--catppuccin-surface0);
|
||||
--card-background: var(--catppuccin-surface0);
|
||||
--text: var(--catppuccin-text);
|
||||
--text-header: var(--catppuccin-text);
|
||||
--text-title: var(--catppuccin-text);
|
||||
--text-subtitle: var(--catppuccin-teal);
|
||||
--link: var(--catppuccin-green);
|
||||
--link-hover: var(--catppuccin-green);
|
||||
}
|
||||
|
||||
/* Header */
|
||||
|
||||
/* Comment the following section out if you want no header image. Also, set --highlight-primary to var(--catppuccin-surface0). */
|
||||
|
||||
#app.theme-default.is-dark #bighead {
|
||||
background-image: url('../assets/images/romb.png');
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .logo {
|
||||
color: var(--catppuccin-mauve);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .first-line .headline {
|
||||
color: var(--catppuccin-yellow);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .navbar-start i {
|
||||
color: var(--catppuccin-teal);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark [title='Auto-switch'] {
|
||||
color: var(--catppuccin-mauve);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark [title='Dark theme'] {
|
||||
color: var(--catppuccin-peach);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .navbar-item .fa-columns {
|
||||
color: var(--catppuccin-green);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .navbar-item .fa-list {
|
||||
color: var(--catppuccin-teal);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .search-bar .search-label:before {
|
||||
color: var(--catppuccin-yellow);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .search-bar input {
|
||||
background-color: var(--catppuccin-base);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .search-bar > input:nth-child(2) {
|
||||
color: var(--catppuccin-text);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .search-bar input:focus-visible {
|
||||
outline: none;
|
||||
}
|
||||
|
||||
/* Message */
|
||||
|
||||
#app.theme-default.is-dark .message-header {
|
||||
color: var(--catppuccin-text);
|
||||
background-color: var(--catppuccin-surface0);
|
||||
border-style: none none solid none;
|
||||
border-width: thin;
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .is-info .message-header {
|
||||
border-color: var(--catppuccin-teal);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .is-info .message-header i {
|
||||
color: var(--catppuccin-teal);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .is-success .message-header {
|
||||
border-color: var(--catppuccin-green);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .is-success .message-header i {
|
||||
color: var(--catppuccin-green);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .is-warning .message-header {
|
||||
border-color: var(--catppuccin-peach);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .is-warning .message-header i {
|
||||
color: var(--catppuccin-peach);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .is-danger .message-header {
|
||||
border-color: var(--catppuccin-red);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .is-danger .message-header i {
|
||||
color: var(--catppuccin-red);
|
||||
}
|
||||
|
||||
/* Cards */
|
||||
|
||||
#app.theme-default.is-dark .tag {
|
||||
background-color: var(--catppuccin-pink);
|
||||
color: var(--catppuccin-text);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .status.unknown::before {
|
||||
background-color: var(--catppuccin-yellow);
|
||||
border-color: var(--catppuccin-yellow);
|
||||
box-shadow: 0 0 5px 1px var(--catppuccin-yellow);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .status.bad::before {
|
||||
background-color: var(--catppuccin-red);
|
||||
border-color: var(--catppuccin-red);
|
||||
box-shadow: 0 0 5px 1px var(--catppuccin-red);
|
||||
}
|
||||
|
||||
#app.theme-default.is-dark .status.running::before {
|
||||
background-color: var(--catppuccin-green);
|
||||
border-color: var(--catppuccin-green);
|
||||
box-shadow: 0 0 5px 1px var(--catppuccin-green);
|
||||
}
|
||||
|
||||
body #app .card:hover {
|
||||
background-color: #51576d; /* Surface1 */
|
||||
}
|
||||
|
||||
/* Footer */
|
||||
#app.theme-default.is-dark .footer {
|
||||
color: var(--catppuccin-text);
|
||||
}
|
||||
|
||||
/* Adds spacing to the bottom of cards */
|
||||
body #app .card-content {
|
||||
margin-bottom: 0.55rem;
|
||||
}
|
||||
|
||||
/* Custom font using Fira Code */
|
||||
body #bighead .navbar a {
|
||||
font-family: 'Fira Code', monospace;
|
||||
}
|
||||
|
||||
body #app .title {
|
||||
font-family: 'Fira Code', monospace;
|
||||
}
|
|
@ -1,162 +0,0 @@
|
|||
---
|
||||
# https://github.com/bastienwirtz/homer/blob/main/docs/configuration.md
|
||||
title: "Homer"
|
||||
|
||||
header: false
|
||||
footer: false
|
||||
|
||||
columns: "4"
|
||||
|
||||
# Set the default layout and color scheme
|
||||
defaults:
|
||||
layout: columns # Either 'columns', or 'list'
|
||||
colorTheme: dark # One of 'auto', 'light', or 'dark'
|
||||
|
||||
stylesheet:
|
||||
- 'assets/catppuccin-frappe.css'
|
||||
|
||||
links:
|
||||
- name: "Homepage"
|
||||
icon: "fas fa-heartbeat"
|
||||
url: "http://docker10.grote.lan:333"
|
||||
- name: "Management"
|
||||
icon: "fas fa-code-branch"
|
||||
url: "#mgmt"
|
||||
|
||||
# wetter
|
||||
|
||||
# https://github.com/bastienwirtz/homer/pull/181
|
||||
services:
|
||||
# - name: "Wetter"
|
||||
# icon: "fas fa-cloud"
|
||||
# items:
|
||||
# - name: "Weather"
|
||||
# location: "Burg" # your location.
|
||||
# locationId: "2941501" # OpenWeatherMap city ID.
|
||||
# apiKey: "c1ec4c040abfa80b991c72d48b49d4a0" # insert your own API key here. Request one from https://o#penweathermap.org/api. # key deactiviert
|
||||
# units: "metric" # units to display temperature. Can be one of: metric, imperial, kelvin. Defaults to kelvin.
|
||||
# background: "none" # choose which type of background you want behind the image. Can be one of: square, cicle, none. Defaults to none.
|
||||
# type: "OpenWeather"
|
||||
# - name: "Weather"
|
||||
# location: "Magdeburg"
|
||||
# locationId: "2874545"
|
||||
# apiKey: "c1ec4c040abfa80b991c72d48b49d4a0"
|
||||
# units: "metric"
|
||||
# background: "none"
|
||||
# type: "OpenWeather"
|
||||
|
||||
- name: "Dienste"
|
||||
icon: "fas fa-cloud"
|
||||
items:
|
||||
- name: "gitea"
|
||||
logo: "assets/icons/gitea.png"
|
||||
url: "https://git.mgrote.net"
|
||||
target: "_blank"
|
||||
subtitle: "git"
|
||||
- name: "Miniflux"
|
||||
logo: "assets/icons/miniflux.png"
|
||||
url: "https://miniflux.mgrote.net/unread"
|
||||
target: "_blank"
|
||||
subtitle: "RSS"
|
||||
- name: "Nextcloud"
|
||||
logo: "assets/icons/nextcloud.png"
|
||||
url: "https://nextcloud.mgrote.net"
|
||||
target: "_blank"
|
||||
subtitle: "Cloud"
|
||||
- name: "DokuWiki"
|
||||
logo: "assets/icons/dokuwiki.png"
|
||||
url: "http://dokuwiki2.grote.lan"
|
||||
target: "_blank"
|
||||
subtitle: "Wiki"
|
||||
- name: "RSS-Bridge"
|
||||
logo: "assets/icons/rssb.png"
|
||||
url: "http://docker10.grote.lan:3001"
|
||||
target: "_blank"
|
||||
subtitle: "Facebook/Instagram-to-rss"
|
||||
- name: "Navidrome"
|
||||
logo: "assets/icons/navidrome.png"
|
||||
url: "https://audio.mgrote.net/mg"
|
||||
target: "_blank"
|
||||
subtitle: "Audio-Streaming"
|
||||
- name: "changedetection.io"
|
||||
logo: "assets/icons/changedetection.png"
|
||||
url: "http://docker10.grote.lan:5000"
|
||||
target: "_blank"
|
||||
subtitle: "Website2rss"
|
||||
|
||||
- name: "Web"
|
||||
icon: "fas fa-cloud"
|
||||
items:
|
||||
- name: "Todoist"
|
||||
logo: "assets/icons/todoist.png"
|
||||
url: "https://todoist.com/app/#project%2F2231794668"
|
||||
target: "_blank"
|
||||
- name: "WhatsApp"
|
||||
logo: "assets/icons/whatsapp.png"
|
||||
url: "https://web.whatsapp.com"
|
||||
target: "_blank"
|
||||
- name: "GitHub"
|
||||
logo: "assets/icons/github.png"
|
||||
url: "https://github.com/quotengrote"
|
||||
target: "_blank"
|
||||
- name: "Monkeytype"
|
||||
logo: "assets/icons/monkeytype.png"
|
||||
target: "_blank"
|
||||
url: "https://monkeytype.com"
|
||||
- name: "Posteo"
|
||||
logo: "assets/icons/posteo.png"
|
||||
url: "https://posteo.de/webmail/?_task=mail&_refresh=1&_mbox=INBOX"
|
||||
target: "_blank"
|
||||
- name: "Wikipedia"
|
||||
logo: "assets/icons/wikipedia.png"
|
||||
url: "https://de.wikipedia.org/wiki/Benutzer:Quotengrote"
|
||||
target: "_blank"
|
||||
- name: "Docker Hub"
|
||||
logo: "assets/icons/docker.png"
|
||||
url: "https://hub.docker.com/r/quotengrote"
|
||||
target: "_blank"
|
||||
|
||||
- name: "Help"
|
||||
icon: "fas fa-cloud"
|
||||
items:
|
||||
- name: "Crontab Guru"
|
||||
logo: "assets/icons/healthchecks.png"
|
||||
url: "https://crontab.guru"
|
||||
target: "_blank"
|
||||
- name: "chmod Calculator"
|
||||
logo: "assets/icons/redis.png"
|
||||
url: "https://chmod-calculator.com"
|
||||
target: "_blank"
|
||||
- name: "composerizer"
|
||||
logo: "assets/icons/docker.png"
|
||||
url: "https://www.composerize.com"
|
||||
target: "_blank"
|
||||
subtitle: "docker-run to docker-compose"
|
||||
- name: "git revert..."
|
||||
logo: "assets/icons/netatmo.png"
|
||||
url: "https://sethrobertson.github.io/GitFixUm/fixup.html"
|
||||
target: "_blank"
|
||||
|
||||
- name: "Diabetes"
|
||||
icon: "fas fa-cloud"
|
||||
items:
|
||||
- name: "DexCom Clarity"
|
||||
logo: "assets/icons/dexcom.png"
|
||||
url: "https://clarity.dexcom.eu/#/overview"
|
||||
target: "_blank"
|
||||
- name: "glooko"
|
||||
logo: "assets/icons/glooko.png"
|
||||
url: "https://de-fr.my.glooko.com"
|
||||
target: "_blank"
|
||||
|
||||
- name: "Finanzen"
|
||||
icon: "fas fa-cloud"
|
||||
items:
|
||||
- name: "ING Diba"
|
||||
logo: "assets/icons/ing.png"
|
||||
url: "https://www.ing.de"
|
||||
target: "_blank"
|
||||
- name: "Leaseplanbank"
|
||||
logo: "assets/icons/leaseplan.webp"
|
||||
url: "https://sparen.leaseplanbank.de"
|
||||
target: "_blank"
|
Before Width: | Height: | Size: 10 KiB |
|
@ -1,12 +0,0 @@
|
|||
# PWA Icons / Images
|
||||
|
||||
We suggest you to create a svg or png icon (if it is a png icon, with the maximum resolution possible) for your application and use it to generate a favicon package in [Favicon Generator](https://realfavicongenerator.net/).
|
||||
|
||||
Once generated, download the ZIP and use android-* icons for pwa-*:
|
||||
|
||||
- use `android-chrome-192x192.png` for `pwa-192x192.png`
|
||||
- use `android-chrome-512x512.png` for `pwa-512x512.png`
|
||||
- `apple-touch-icon.png` is `apple-touch-icon.png`
|
||||
- `favicon.ico` is `favicon.ico`
|
||||
|
||||
`
|
Before Width: | Height: | Size: 71 KiB |
Before Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 45 KiB |
Before Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 7.0 KiB |
|
@ -1,9 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<browserconfig>
|
||||
<msapplication>
|
||||
<tile>
|
||||
<square150x150logo src="/mstile-150x150.png"/>
|
||||
<TileColor>#da532c</TileColor>
|
||||
</tile>
|
||||
</msapplication>
|
||||
</browserconfig>
|
Before Width: | Height: | Size: 80 KiB |
Before Width: | Height: | Size: 75 KiB |
Before Width: | Height: | Size: 5.6 KiB |
Before Width: | Height: | Size: 3.4 KiB |
Before Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 228 KiB |
Before Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 85 KiB |
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 2.8 KiB |
Before Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 12 KiB |
|
@ -1,320 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 15.0.1, SVG Export Plug-In -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
|
||||
<!ENTITY ns_flows "http://ns.adobe.com/Flows/1.0/">
|
||||
]>
|
||||
<svg version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/"
|
||||
x="0px" y="0px" width="270px" height="270px" viewBox="-16.2 -42 270 270"
|
||||
overflow="visible" enable-background="new -16.2 -42 270 270" xml:space="preserve">
|
||||
<defs>
|
||||
</defs>
|
||||
<path d="M193.8,103l9.5-17.2c-7.2-7.5-19.1-19.2-39.1-37.7c-46.6-43.2-49.4-43-50.5-43c-1.2,0-3.4-0.8-49.8,42.9
|
||||
C11.7,97.1,13.5,98.8,13.5,98.8s-1.6,2.7,50.9,51.2c47.1,43.6,48,42.4,49.3,42.4c1.3,0,4.1,0.7,50.6-43
|
||||
c25.1-23.6,37.6-36.2,43.7-42.9L193.8,103"/>
|
||||
<path d="M193.8,103l0.5,0.2l9.6-17.5l-0.3-0.3c-7.2-7.5-19.1-19.2-39.1-37.7c-23.1-21.4-35.4-32.1-42.1-37.5
|
||||
c-3.4-2.7-5.3-4.1-6.5-4.8c-0.6-0.4-1-0.5-1.4-0.7c-0.3-0.1-0.6-0.1-0.8-0.1h0l-0.1,0c-0.2,0-0.5,0-0.8,0.1
|
||||
c-1.2,0.4-3.7,1.9-10.8,7.9c-7.1,6-18.8,16.5-38.4,35c-24.4,23-37,35.6-43.5,42.5c-3.2,3.4-5,5.5-5.9,6.7c-0.5,0.6-0.7,1-0.9,1.3
|
||||
c-0.2,0.3-0.2,0.4-0.2,0.6c0,0.1,0,0.3,0.2,0.4l0.4-0.4L13,98.5c-0.1,0.1-0.1,0.2-0.1,0.3c0,0.2,0.1,0.4,0.2,0.7
|
||||
c0.5,1,2.4,3.7,9.6,11.2c7.2,7.5,19.6,19.7,41.3,39.7c22.3,20.6,34.3,31.2,40.8,36.7c3.3,2.7,5.2,4.2,6.4,4.9c0.6,0.4,1,0.6,1.4,0.7
|
||||
c0.3,0.1,0.6,0.2,0.8,0.2c0.1,0,0.2,0,0.2,0l0.1,0c0.2,0,0.5,0,0.9-0.1c1.3-0.4,3.9-1.9,11.2-7.9c7.2-6,19.1-16.6,38.8-35.1
|
||||
c25.1-23.6,37.6-36.2,43.7-43l0.6-0.6l-15-3.6L193.8,103l0.5,0.2L193.8,103l-0.1,0.5l14.1,3.4l0.1-0.5l-0.4-0.3
|
||||
c-6.1,6.7-18.5,19.3-43.7,42.9c-22.5,21.1-34.7,31.9-41.5,37.3c-3.4,2.7-5.4,4.1-6.7,4.8c-0.6,0.4-1,0.5-1.3,0.6
|
||||
c-0.3,0.1-0.4,0.1-0.6,0.1l-0.1,0l-0.2,0c-0.1,0-0.2,0-0.5-0.1c-0.4-0.2-1.3-0.6-2.8-1.8c-4.7-3.5-16.2-13.3-45.4-40.4
|
||||
C40,126.7,27.2,114,20.7,107c-3.3-3.5-5-5.6-5.9-6.8c-0.4-0.6-0.7-1-0.8-1.2C14,98.9,14,98.8,14,98.8l0,0l-0.2,0H14l0,0l-0.2,0H14
|
||||
h-0.5l0.4,0.2c0.1-0.1,0.1-0.2,0.1-0.2h-0.5l0.4,0.2l0.2-0.4l-0.3-0.3l-0.3,0.3H14c0-0.1,0-0.2-0.2-0.3l-0.3,0.3H14h-0.3l0.3,0.1
|
||||
l0-0.1h-0.3l0.3,0.1l-0.1,0l0.1,0l0,0l-0.1,0l0.1,0l0-0.1c0.1-0.3,0.6-1,1.9-2.5c3.9-4.6,15.3-16.7,48.3-47.7
|
||||
c22.4-21.1,34.5-31.8,41.1-37.2c3.3-2.7,5.3-4.1,6.5-4.8c0.6-0.4,1-0.5,1.2-0.6c0.3-0.1,0.4-0.1,0.5-0.1l0.1,0h0
|
||||
c0.1,0,0.2,0,0.5,0.1c0.4,0.1,1.2,0.5,2.8,1.6c4.8,3.3,16.5,13.1,46.9,41.1c20,18.5,31.9,30.2,39.1,37.7l0.4-0.4l-0.5-0.2l-9.8,17.8
|
||||
l0.7,0.2L193.8,103"/>
|
||||
<path fill="#FFE500" d="M193.8,103l8.1-14.8c-6.1-6.8-18.6-19.4-43.9-42.8c-46.3-42.8-48.8-43-50.5-43c-1.7,0-3.3-0.9-49.8,42.9
|
||||
C5.6,94.4,7.4,96,7.4,96s-1.6,2.7,50.9,51.2c46.8,43.3,47.9,42.4,49.3,42.4c1.4,0,4.1,0.7,50.6-43c23.9-22.5,36.3-35,42.7-41.9
|
||||
L193.8,103"/>
|
||||
<path d="M193.8,103l0.7,0.4l8.1-14.8l-0.1-0.9c-6.1-6.8-18.6-19.4-43.9-42.8c-23.2-21.4-35.4-32.2-42-37.6c-3.3-2.7-5.3-4.1-6.5-4.8
|
||||
c-0.6-0.4-1.1-0.6-1.5-0.7c-0.4-0.1-0.7-0.1-1-0.1l-0.2,0c-0.2,0-0.6,0-1,0.2c-0.7,0.2-1.7,0.7-3.4,1.9c-5,3.6-16.5,13.4-45.8,41
|
||||
c-24.4,23-37,35.6-43.5,42.5c-3.3,3.4-5,5.5-5.9,6.7c-0.5,0.6-0.7,1-0.9,1.3c-0.2,0.3-0.2,0.5-0.3,0.8c0,0.2,0.1,0.4,0.2,0.6L7.4,96
|
||||
l-0.7-0.4c-0.1,0.1-0.1,0.3-0.1,0.4c0,0.3,0.1,0.5,0.2,0.8c0.3,0.6,0.9,1.5,2.3,3.2c4.3,5.2,16.1,17.7,48.5,47.7
|
||||
c22.5,20.8,34.4,31.4,40.9,36.8c3.3,2.7,5.2,4.1,6.4,4.9c0.6,0.4,1.1,0.6,1.4,0.7c0.4,0.1,0.7,0.2,0.9,0.2l0.2,0l0.1,0
|
||||
c0.2,0,0.6,0,1-0.1c0.7-0.2,1.7-0.7,3.4-1.9c5.2-3.5,17-13.4,46.6-41.1c23.9-22.5,36.3-35,42.8-41.9l-0.4-1.3l-7.1-1.7L193.8,103
|
||||
l0.7,0.4L193.8,103l-0.2,0.7l7.1,1.7l0.2-0.7l-0.6-0.5c-6.4,6.9-18.8,19.4-42.7,41.9c-22.5,21.1-34.7,31.9-41.5,37.3
|
||||
c-3.4,2.7-5.4,4.1-6.6,4.8c-0.6,0.3-1,0.5-1.3,0.6c-0.3,0.1-0.4,0.1-0.5,0.1l-0.1,0l-0.2,0c-0.1,0-0.2,0-0.4-0.1
|
||||
c-0.4-0.1-1.2-0.5-2.7-1.7c-4.6-3.4-16-13.1-45.5-40.4c-24.7-22.9-37.4-35.5-43.9-42.5c-3.3-3.5-5-5.6-5.8-6.8
|
||||
c-0.4-0.6-0.7-1-0.8-1.2C8.2,96,8.1,96,8.1,96l0,0l-0.4,0.1h0.4l0-0.1l-0.4,0.1h0.4H7.4L8,96.4c0.1-0.1,0.1-0.3,0.1-0.4H7.4L8,96.4
|
||||
l-0.1-1L7.4,96h0.7c0-0.1,0-0.4-0.2-0.5L7.4,96h0.7H7.6l0.5,0.1l0-0.1H7.6l0.5,0.1l-0.2,0l0.2,0.1l0,0l-0.2,0l0.2,0.1
|
||||
c0,0,0.3-0.6,1.4-2C13,90,23.9,78.2,58.2,45.9c22.3-21,34.3-31.7,40.9-37.2c3.3-2.7,5.2-4.1,6.4-4.8c0.6-0.3,1-0.5,1.2-0.6
|
||||
c0.3-0.1,0.4-0.1,0.6-0.1l0.2,0c0.2,0,0.3,0,0.6,0.1c0.4,0.1,1.2,0.5,2.8,1.6c4.7,3.3,16.3,13,46.6,41.1
|
||||
c25.3,23.4,37.7,36,43.8,42.7l0.6-0.5l-0.7-0.4l-8.1,14.8l0.5,1.1L193.8,103"/>
|
||||
<g>
|
||||
<defs>
|
||||
<path id="SVGID_1_" d="M107.5,3.9L107.5,3.9L107.5,3.9l0.2,0l-0.1,0C107.9,3.9,107.3,3.9,107.5,3.9 M201.3,90.3
|
||||
c-5.5-6.2-17.3-18.8-44.3-43.8c-40.9-38-48.4-42.1-49.5-42.6c-1.1,0.4-8.5,4.5-48.8,42.5C38.2,65.7,23.6,80,15.3,88.8
|
||||
c-3.6,3.8-6.1,6.8-6.4,7.1c0.8,1.4,6.5,9.6,50.4,50.2c18.8,17.4,32.6,29.7,41.2,36.7c1.2,1,6.9,5.3,6.9,5.3l0.2,0
|
||||
c0.6-0.1,7.1-2.5,49.7-42.6c26.2-24.7,38-37.3,43.8-43.6L201.3,90.3 M8.6,96.8c0.2-0.3,0.2-0.5,0.2-0.7l0,0L8.6,96.8"/>
|
||||
</defs>
|
||||
<clipPath id="SVGID_2_">
|
||||
<use xlink:href="#SVGID_1_" overflow="visible"/>
|
||||
</clipPath>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFE500" d="M90.7,170.7l-5-6l-5.2-5.8l-3.5-3.6c-18.5-18.5-56.1-56.3-56.5-56.6
|
||||
c-0.1-0.1-0.2-0.2-0.2-0.3v0c0-0.1,0.1-0.2,0.1-0.3c1.6-1.5,38.4-37,58.4-54L109.8,19l-0.9-19l-47,41.9C44.7,57,11.9,93,11.6,93.3
|
||||
c-0.8,0.7-1.3,1.8-1.3,3c0,1.2,0.5,2.2,1.4,3l0.2,0.2c5.7,5.4,34.6,33,49.3,47.1c5,4.8,6.8,6.3,8.6,7.8l8,6.6L90.7,170.7z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFE500" d="M85.5,164.7L85.5,164.7c-0.1-0.1-0.7-0.8-5.2-5.8l-3.5-3.6l-48.6-48.7l-7.9-7.9
|
||||
l-0.2-0.4l0.2-0.4c3.9-3.8,39-37.5,58.4-54c0,0,30.2-24.4,30.8-24.9c0-0.1-0.9-18-0.9-18.6C108.2,0.8,62,42,62,42
|
||||
C44.8,57.1,12,93.1,11.7,93.4c-0.8,0.7-1.2,1.8-1.2,2.9c0,1.1,0.5,2.1,1.3,2.9l0,0l0.2,0.2c5.7,5.4,34.6,33,49.3,47.1
|
||||
c4.9,4.7,6.7,6.2,8.5,7.7l8.1,6.6c0,0,8.9,6.7,11.9,9C88.6,168.4,85.5,164.7,85.5,164.7z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFE600" d="M85.4,164.8L85.4,164.8c0,0-0.5-0.5-5.2-5.8l-3.5-3.6l-48.6-48.7l-7.9-7.9
|
||||
L20,98.3v0c0-0.1,0.2-0.5,0.2-0.5c3.9-3.8,38.9-37.4,58.5-54c0,0,30.2-24.4,30.7-24.9c0-0.1-0.9-17.6-0.9-18.2
|
||||
c-0.5,0.4-46.5,41.5-46.5,41.5c-17.2,15.1-50,51.1-50.3,51.4c-0.8,0.7-1.2,1.7-1.2,2.8c0,1.1,0.4,2.1,1.3,2.8l0.2,0.2
|
||||
c10.3,9.8,35.8,34.1,49.3,47.1c4.9,4.7,6.7,6.2,8.5,7.7l8.1,6.6c0,0,9.4,7.1,10.9,8.2C87.7,167.6,85.4,164.8,85.4,164.8z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFE600" d="M85.3,164.9l0.1,0.1c-0.2-0.1-0.5-0.6-5.3-5.9l-3.5-3.6l-48.6-48.7l-7.9-7.9
|
||||
l-0.3-0.5v0c0-0.1,0.2-0.6,0.2-0.6c0.4-0.4,37.8-36.5,58.5-54.1c0,0,30.1-24.3,30.7-24.8c0-0.1-0.9-17.2-0.9-17.8
|
||||
C108,1.4,62.2,42.2,62.2,42.2c-16.8,14.8-49,50-50.3,51.3c-0.8,0.7-1.2,1.7-1.2,2.7c0,1,0.4,2,1.2,2.7l0.2,0.2
|
||||
c10.3,9.8,35.7,34,49.3,47.1c4.9,4.7,6.7,6.2,8.5,7.6l8.1,6.6c0,0,8.3,6.3,9.9,7.5C86.9,166.8,85.3,164.9,85.3,164.9z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFE600" d="M85.2,165l0.2,0.1c-0.2-0.1-0.4-0.4-5-5.6l-0.3-0.3l-3.5-3.6L28,106.9l-7.9-7.9
|
||||
l-0.3-0.5l0,0c0-0.1,0.2-0.8,0.2-0.8c0.3-0.3,37.9-36.6,58.6-54.1c0,0,30.1-24.3,30.6-24.8c0-0.1-0.9-16.8-0.9-17.4
|
||||
c-0.5,0.4-46,41-46,41c-16.9,14.9-49,50-50.3,51.3c-0.7,0.7-1.1,1.6-1.1,2.6c0,1,0.4,1.9,1.2,2.6l0.2,0.2
|
||||
c10.3,9.8,35.7,34,49.3,47.1c4.9,4.7,6.7,6.2,8.5,7.6l8.1,6.6c0,0,6.3,4.8,8.8,6.7C86.2,166.2,85.2,165,85.2,165z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFE707" d="M85.1,165.1L85.1,165.1c-0.4-0.4-1.3-1.5-4.9-5.5l-0.3-0.3l-3.5-3.6L27.9,107
|
||||
L20,99l-0.3-0.5l0,0c0-0.1,0.2-0.9,0.2-0.9c0.2-0.3,37.8-36.5,58.6-54.2c0,0,30-24.2,30.6-24.7c0-0.1-0.9-16.4-0.9-17.1
|
||||
c-0.5,0.4-45.8,40.8-45.8,40.8c-17,14.9-49,50-50.3,51.3c-0.7,0.6-1.1,1.5-1.1,2.5c0,0.9,0.4,1.8,1.1,2.5l0.2,0.2
|
||||
c10.3,9.8,35.6,33.9,49.3,47.1c4.9,4.7,6.7,6.2,8.5,7.6l8.1,6.6c0,0,6.5,5,7.8,5.9C85.5,165.6,85.1,165.1,85.1,165.1z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFE71C" d="M85,165.2L85,165.2l-5.2-5.8l-3.4-3.6l-48.6-48.7l-7.9-7.9l-0.3-0.6l0,0
|
||||
c0-0.2,0.2-1,0.2-1c0.2-0.2,37.4-36.2,58.6-54.3c0,0,30-24.2,30.5-24.7c0-0.1-0.9-16-0.9-16.7c-0.5,0.4-45.5,40.6-45.5,40.6
|
||||
C46,57,15.5,90.6,12.2,93.9c-0.7,0.6-1.1,1.5-1.1,2.4c0,0.9,0.4,1.7,1.1,2.4l0.2,0.2c10.2,9.7,35.5,33.8,49.3,47.1
|
||||
c4.9,4.7,6.7,6.2,8.4,7.6l8.1,6.6c0,0,5.4,4.1,6.8,5.1L85,165.2z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFE829" d="M79.7,159.5l-3.4-3.6l-48.6-48.7l-7.9-7.9l-0.4-0.6l0,0c0-0.2,0.1-1.1,0.1-1.1
|
||||
c0.1-0.2,37.5-36.4,58.7-54.4c0,0,29.9-24.2,30.5-24.6c0-0.1-0.9-15.7-0.9-16.3c-0.5,0.4-45.3,40.4-45.3,40.4
|
||||
c-16.5,14.5-47,48-50.3,51.3c-0.6,0.6-1,1.4-1,2.3c0,0.9,0.4,1.7,1,2.3l0.2,0.2c10.2,9.7,35.4,33.7,49.3,47.1
|
||||
c4.9,4.7,6.7,6.2,8.4,7.6c0,0,0,0,8.1,6.7c0,0,3.8,2.8,5.7,4.3C82.9,163.1,79.7,159.5,79.7,159.5z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFE833" d="M79.6,159.6l-3.4-3.6l-48.6-48.7l-7.9-7.9l-0.4-0.6l0,0c0-0.2,0.1-1.2,0.1-1.2
|
||||
c0.1-0.2,37-36,58.7-54.4c0,0,29.9-24.1,30.4-24.6c0-0.1-0.9-15.3-0.9-15.9c-0.5,0.4-45,40.1-45,40.1c-16.4,14.4-47,48-50.3,51.3
|
||||
c-0.6,0.6-1,1.4-1,2.2c0,0.8,0.3,1.6,1,2.2l0.2,0.2c10.1,9.7,35.3,33.6,49.3,47.1c4.9,4.7,6.7,6.2,8.4,7.6l-0.2,0
|
||||
c0.2,0,1,0.7,7.5,6l0.8,0.7c0,0,3.7,2.8,4.5,3.4C81.8,162,79.6,159.6,79.6,159.6z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFE93C" d="M79.5,159.6L79.5,159.6l-3.4-3.6l-48.6-48.7l-7.9-7.9l-0.4-0.7l0,0
|
||||
c0-0.2,0.1-1.2,0.1-1.2C19.3,97.4,56.3,61.4,78,43c0,0,29.8-24.1,30.4-24.6c0-0.1-0.9-14.9-0.9-15.5c-0.5,0.4-44.8,39.9-44.8,39.9
|
||||
c-16.4,14.4-47,48-50.3,51.3c-0.6,0.5-0.9,1.3-0.9,2.1c0,0.8,0.3,1.5,0.9,2.1l0.2,0.2c10.2,9.7,35.3,33.6,49.3,47.1
|
||||
c4.8,4.7,6.7,6.2,8.4,7.6l0,0l0,0c0.5,0.3,1.9,1.4,7.3,5.9l0.8,0.7c0,0,2,1.5,3.3,2.5C81.4,161.8,79.5,159.6,79.5,159.6z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFE944" d="M79.4,159.7L79.4,159.7l-3.4-3.5l-48.6-48.7l-7.9-7.9L19,98.9l0-0.1l0.1-1.3
|
||||
c0.1-0.1,36.6-35.8,58.8-54.6c0,0,29.8-24,30.3-24.5c0-0.1-0.9-14.5-0.9-15.1C106.9,3.7,62.9,43,62.9,43
|
||||
C46.5,57.4,15.9,91,12.6,94.3c-0.6,0.5-0.9,1.2-0.9,2c0,0.7,0.3,1.4,0.9,2l0.2,0.2C23,108,48.1,132,62.1,145.5
|
||||
c4.8,4.7,6.6,6.2,8.4,7.6c0.5,0.4,8.1,6.6,8.1,6.6c0,0,1.1,0.8,2,1.5C80,160.5,79.4,159.7,79.4,159.7z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFEA4B" d="M79.2,159.8L79.2,159.8l-3.4-3.5l-48.6-48.7l-7.9-7.9l-0.4-0.7l0-0.2l0.1-1.3
|
||||
c0.2-0.5,37.7-36.8,58.9-54.7c0,0,29.7-24,30.3-24.5c0-0.1-0.9-14.1-0.9-14.7C106.8,4,63,43.1,63,43.1C46.6,57.5,16,91.1,12.7,94.4
|
||||
c-0.5,0.5-0.8,1.2-0.8,1.9c0,0.7,0.3,1.4,0.8,1.8l0.2,0.2c10.2,9.7,35.3,33.6,49.3,47.1c4.8,4.7,6.6,6.1,8.4,7.6l8.2,6.7
|
||||
c0,0,0.2,0.1,0.8,0.6C79.5,160.1,79.2,159.8,79.2,159.8z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFEA52" d="M75.7,156.4l-48.6-48.7l-7.9-7.9L18.8,99l-0.1-0.3l0.1-1.3
|
||||
C19,97,56.5,60.6,77.7,42.6c0,0,29.7-23.9,30.2-24.4c0-0.1-0.9-13.7-0.9-14.3c-0.5,0.4-44,39.3-44,39.3
|
||||
c-16.4,14.4-46.9,48-50.2,51.3c-0.5,0.5-0.8,1.1-0.8,1.7c0,0.7,0.3,1.3,0.8,1.7l0.2,0.2c10.1,9.7,35.3,33.6,49.3,47.1
|
||||
c4.8,4.7,6.6,6.1,8.4,7.6c0,0,6.3,5.2,7.4,6.1C77.1,157.9,75.7,156.4,75.7,156.4z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFEB58" d="M75.6,156.5L27,107.8l-7.9-7.9l-0.5-0.8l-0.1-0.3c0-0.1,0.1-1.3,0.1-1.3
|
||||
c0.2-0.5,37.7-36.9,59-54.9c0,0,29.6-23.9,30.2-24.4c0-0.1-0.9-13.3-0.9-13.9c-0.5,0.4-43.8,39.1-43.8,39.1
|
||||
C46.9,57.6,16.3,91.3,13,94.6c-0.5,0.4-0.8,1-0.8,1.6c0,0.6,0.3,1.2,0.7,1.6l0.2,0.2c10.1,9.6,35.2,33.5,49.3,47.1
|
||||
c4.8,4.7,6.6,6.1,8.3,7.5c0,0,5.2,4.2,5.6,4.5C76,156.9,75.6,156.5,75.6,156.5z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFEB5E" d="M26.9,107.9L19,100l-0.5-0.8l-0.1-0.2l0-0.2l0.1-1.3c0.2-0.5,37.7-36.9,59-55
|
||||
c0,0,29.6-23.9,30.1-24.3c0-0.1-0.9-12.9-0.9-13.5C106.3,5,63.3,43.4,63.3,43.4C47,57.7,16.4,91.4,13.1,94.7
|
||||
c-0.5,0.4-0.7,1-0.7,1.5c0,0.6,0.2,1.1,0.7,1.5l0.2,0.2c10.1,9.6,35.1,33.4,49.3,47.1c4.8,4.7,6.6,6.1,8.3,7.5c0,0,1.9,1.5,3.5,2.8
|
||||
C70.2,151.2,54.3,135.3,26.9,107.9z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFEC64" d="M18.9,100.1l-0.5-0.8L18.3,99l0-0.2l0.1-1.4c0.2-0.5,37.7-37,59.1-55.1
|
||||
c0,0,29.5-23.8,30.1-24.3c0-0.1-0.9-12.5-0.9-13.1c-0.5,0.4-43.3,38.6-43.3,38.6c-16.3,14.3-46.9,48-50.2,51.3
|
||||
c-0.4,0.4-0.7,0.9-0.7,1.4c0,0.5,0.2,1,0.6,1.4l0.2,0.2c10.1,9.6,35.2,33.5,49.3,47.1c4.8,4.7,6.6,6.1,8.3,7.5c0,0,0.6,0.5,1.2,1
|
||||
C68.6,149.9,18.9,100.1,18.9,100.1z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFEC64" d="M18.8,100.2L18.8,100.2l-0.6-0.8L18.1,99c0-0.1,0-0.2,0-0.2l0.1-1.4
|
||||
c0.2-0.5,37.7-37,59.2-55.2c0,0,29.5-23.8,30-24.2c0-0.1-0.9-12.1-0.9-12.7c-0.5,0.4-43,38.4-43,38.4c-16.2,14.2-46.9,48-50.2,51.3
|
||||
c-0.4,0.4-0.6,0.9-0.6,1.3c0,0.5,0.2,1,0.6,1.3l0.2,0.2c10.1,9.6,35.2,33.5,49.3,47.1c3.9,3.8,5.8,5.4,7.3,6.7
|
||||
C66.2,147.7,18.8,100.2,18.8,100.2z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFEC6A" d="M18.7,100.3L18.7,100.3l-0.6-0.9L18,99.1l0-0.2l0.1-1.4
|
||||
c0.2-0.5,37.7-37.1,59.2-55.3c0,0,29.4-23.7,30-24.2c0-0.1-0.9-11.7-0.9-12.3C105.9,6,63.6,43.7,63.6,43.7
|
||||
C47.4,58,16.7,91.7,13.4,95c-0.4,0.3-0.6,0.8-0.6,1.2c0,0.4,0.2,0.9,0.6,1.2l0.2,0.2c7.9,7.5,34.6,33,49.3,47.1
|
||||
c1.6,1.6,2.9,2.8,3.9,3.7C61.3,142.9,18.7,100.3,18.7,100.3z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFEC6A" d="M18.6,100.4L18.6,100.4L18,99.5l-0.1-0.4l-0.1-0.3l0.1-1.4
|
||||
c0.1-0.5,37.7-37.2,59.3-55.4c0,0,29.4-23.7,29.9-24.2c0-0.1-0.9-11.3-0.9-11.9c-0.5,0.4-42.5,38-42.5,38
|
||||
c-16.2,14.2-46.9,48-50.2,51.3c-0.3,0.3-0.5,0.7-0.5,1.1c0,0.4,0.2,0.8,0.5,1.1l0.2,0.2c7,6.7,29.2,27.8,44.3,42.3
|
||||
C46.2,128,18.6,100.4,18.6,100.4z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFED75" d="M18.5,100.5L18.5,100.5l-0.6-0.9l-0.2-0.4l-0.1-0.3l0.1-1.5
|
||||
c0.1-0.5,37.7-37.2,59.3-55.5c0,0,29.3-23.6,29.9-24.1c0-0.1-0.9-10.9-0.9-11.5C105.6,6.6,63.8,44,63.8,44
|
||||
C47.6,58.2,16.9,91.9,13.6,95.2c-0.3,0.3-0.5,0.7-0.5,1c0,0.4,0.2,0.7,0.5,1c0,0,22.8,21.8,35.7,34.1
|
||||
C38.8,120.8,18.5,100.5,18.5,100.5z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFEE7B" d="M18.4,100.6l-0.1-0.1l-0.5-0.8l-0.2-0.4l-0.1-0.4l0.1-1.5
|
||||
c0.1-0.5,37.7-37.3,59.4-55.6c0,0,29.3-23.6,29.8-24.1c0-0.1-0.9-10.6-0.9-11.1c-0.5,0.4-42,37.5-42,37.5
|
||||
C47.7,58.3,17,92,13.7,95.3c-0.3,0.3-0.5,0.6-0.5,0.9c0,0.3,0.1,0.6,0.4,0.9c0,0,17.9,17.1,27,25.7
|
||||
C31.7,113.9,18.4,100.6,18.4,100.6z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFEE80" d="M18.3,100.7l-0.1-0.1l-0.5-0.8l-0.2-0.4l-0.1-0.4l0.1-1.5
|
||||
c0.1-0.5,37.7-37.4,59.4-55.7c0,0,29.2-23.6,29.8-24c0-0.1-0.9-10.2-0.9-10.8C105.3,7.3,64,44.2,64,44.2
|
||||
C47.9,58.3,17.1,92.1,13.8,95.4c-0.3,0.2-0.4,0.5-0.4,0.8c0,0.3,0.1,0.6,0.4,0.8c0,0,11.8,11.2,18.2,17.4
|
||||
C25.5,107.9,18.3,100.7,18.3,100.7z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFEF85" d="M18.2,100.8l-0.1-0.2l0,0c-0.1-0.1-0.2-0.3-0.6-0.9l-0.2-0.5l-0.1-0.4l0.1-1.5
|
||||
c0.1-0.5,37.8-37.4,59.5-55.8c0,0,29.2-23.5,29.7-24c0-0.1-0.9-9.8-0.9-10.4c-0.5,0.4-41.6,37.1-41.6,37.1
|
||||
C48,58.4,17.2,92.2,13.9,95.5c-0.2,0.2-0.4,0.5-0.4,0.7c0,0.2,0.1,0.5,0.3,0.7c0,0,6.8,6.4,9.5,9C20.9,103.5,18.2,100.8,18.2,100.8
|
||||
z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFF08A" d="M18.1,100.9L18.1,100.9L18.1,100.9z M17.4,99.9l-0.2-0.5l-0.1-0.5v0l0.1-1.6
|
||||
c0.1-0.5,37.8-37.5,59.5-55.9c0,0,29.1-23.5,29.7-23.9c0-0.1-0.9-9.4-0.9-10C105,7.9,64.2,44.4,64.2,44.4
|
||||
C48.1,58.5,17.3,92.3,14,95.6c-0.2,0.2-0.3,0.4-0.3,0.6c0,0.2,0.1,0.4,0.3,0.6c0,0,2.5,2.4,3.8,3.6C17.6,100.2,17.4,99.9,17.4,99.9
|
||||
z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFF08F" d="M17.3,100L17.3,100L17.3,100z M17,99.4L16.9,99v0l0.1-1.6
|
||||
c0.1-0.5,37.8-37.6,59.6-56c0,0,29.1-23.4,29.6-23.9c0-0.1-0.9-9-0.9-9.6c-0.5,0.4-41.1,36.7-41.1,36.7
|
||||
c-16,14.1-46.8,47.9-50.2,51.2c-0.2,0.2-0.3,0.4-0.3,0.5c0,0.2,0.1,0.3,0.2,0.5c0,0,2.2,2.1,3.1,2.9L17,99.4z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFF194" d="M16.8,99c0-0.1,0.1-1.7,0.1-1.7c0.1-0.5,37.8-37.6,59.6-56.1
|
||||
c0,0,29-23.4,29.6-23.9c0-0.1-0.9-8.6-0.9-9.2c-0.5,0.4-40.8,36.4-40.8,36.4c-16,14-46.8,47.9-50.2,51.2L14,96.2l0.2,0.4
|
||||
c0,0,2.3,2.2,2.7,2.5L16.8,99z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFF199" d="M16.7,97.3c0.1-0.5,37.8-37.7,59.7-56.2c0.3-0.2,28.5-23,29.5-23.8
|
||||
c0-0.1-0.1-2-0.1-2s-0.8-6.2-0.8-6.8c-0.5,0.4-40.6,36.2-40.6,36.2c-12.4,10.9-34,34-44.4,45.1l-5.8,6.1l0,0c0,0-0.1,0.2-0.2,0.3
|
||||
l0.1,0.3c0,0,1.7,1.6,2.4,2.3C16.7,98.4,16.7,97.3,16.7,97.3z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFF29E" d="M16.6,97.3L16.6,97.3c0.1-0.5,37.8-37.8,59.7-56.3c0,0,28.9-23.3,29.5-23.8
|
||||
c0-0.1-0.1-2-0.1-2s-0.7-5.1-0.8-6.4c-0.5,0.4-40.3,36-40.3,36c-12.5,10.9-34,34-44.3,45.1L14.4,96l0-0.1c0,0-0.1,0.2-0.2,0.4
|
||||
l0.1,0.2l-0.1,0c0.2,0.1,0.7,0.6,2.2,2C16.5,98.1,16.6,97.3,16.6,97.3z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFF2A3" d="M16.4,97.3L16.4,97.3c0.1-0.5,37.9-37.9,59.8-56.5c0,0,28.8-23.2,29.4-23.7
|
||||
c0-0.1-0.1-1.9-0.1-1.9s-0.7-4.9-0.8-6.1c-0.5,0.4-40.1,35.8-40.1,35.8c-12.4,10.9-34,34-44.3,45c0,0,0,0-5.8,6.2l0,0l0,0.1
|
||||
l0.1,0.2l-0.1-0.1c0.2,0.1,0.7,0.6,2,1.8C16.4,97.8,16.4,97.3,16.4,97.3z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFF3A8" d="M16.3,97.3L16.3,97.3c0.1-0.5,37.9-38,59.8-56.6c0,0,0,0,16-13.2
|
||||
c0,0,13.3-10.4,13.4-10.5c0-0.1-0.8-6.4-0.8-7.6C104.2,9.8,64.8,45,64.8,45C52.3,56,30.8,79,20.5,90l0,0c-0.1,0.1-0.3,0.4-0.9,0.9
|
||||
l-5,5.3l0.1,0.1c0.2,0.2,0.7,0.6,1.6,1.5C16.3,97.6,16.3,97.3,16.3,97.3z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFF4AC" d="M16.1,97.3l0-0.1c0.1-0.4,37.9-37.9,59.9-56.5l0,0c0.1-0.1,0.2-0.2,0.5-0.4
|
||||
c0,0,28.7-23.2,28.8-23.3c0-0.1-0.8-6.7-0.8-7.3c-0.5,0.4-39.6,35.4-39.6,35.4c-12.4,10.9-34,33.9-44.3,45L19.8,91
|
||||
c-0.1,0.1-4.5,4.7-4.9,5.2c0.1,0.2,0.9,0.9,1.3,1.3L16.1,97.3z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFF4B1" d="M65,45.3C52.5,56.2,31,79.2,20.7,90.2l-0.8,0.8c0,0-4.3,4.6-4.8,5.1
|
||||
c0.1,0.1,0.7,0.7,1,0.9c0.1-0.5,38-38,59.9-56.6l0.5-0.4c0,0,28.1-22.7,28.8-23.2c0-0.1-0.2-1.7-0.2-1.7c-0.2-1.8-0.5-4.4-0.6-5.2
|
||||
C104,10.4,65,45.3,65,45.3z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFF5B5" d="M65.1,45.4c-12.4,10.9-33.9,33.9-44.3,45c0,0-5,5.3-5.6,5.9
|
||||
c0.1,0.1,0.6,0.6,0.8,0.7c2.5-2.7,38.6-38.5,59.8-56.5l0.5-0.4c0,0,27.9-22.5,28.7-23.2c0-0.1-0.2-1.6-0.2-1.6s-0.4-3.9-0.5-4.9
|
||||
C103.9,10.7,65.1,45.4,65.1,45.4z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFF5B9" d="M65.1,45.5C52.7,56.4,31.2,79.4,20.9,90.4c0,0-5.3,5.6-5.5,5.8
|
||||
c0.1,0.1,0.4,0.4,0.6,0.5c3.1-3.3,38.8-38.7,59.7-56.4l0.5-0.4c0,0,28.5-23,28.7-23.1c0-0.1-0.2-1.5-0.2-1.5c0,0-0.4-3.6-0.5-4.6
|
||||
C103.7,11,65.1,45.5,65.1,45.5z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFF6BE" d="M65.2,45.6C52.8,56.5,31.4,79.5,21,90.5c0,0-5.2,5.5-5.4,5.7
|
||||
c0.1,0.1,0.3,0.3,0.4,0.3c3.5-3.8,38.7-38.6,59.6-56.4l0.5-0.4c0,0,0,0,16-12.9c0,0,12.5-10.1,12.6-10.2c0-0.1-0.2-1.5-0.2-1.5
|
||||
c0,0-0.4-3.9-0.5-4.4C103.6,11.3,65.2,45.6,65.2,45.6z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFF6C2" d="M65.3,45.7C52.9,56.6,31.5,79.6,21.1,90.6c0,0,0,0-2.8,2.9c0,0-2.3,2.5-2.5,2.7
|
||||
l0.1,0.1c3.9-4.2,38.8-38.6,59.5-56.3l0.5-0.4l0,0.1c0.1-0.1,0.6-0.5,2.8-2.3c0,0,25.7-20.7,25.8-20.8c0-0.1-0.2-1.4-0.2-1.4
|
||||
c0,0-0.4-3.7-0.5-4.1C103.5,11.6,65.3,45.7,65.3,45.7z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFF7C6" d="M65.4,45.8C53,56.7,31.6,79.7,21.2,90.7v0c0,0.1-0.2,0.2-0.5,0.6
|
||||
c0,0-0.9,1-1.6,1.7c10-10,38.4-37.8,56.3-53l0.5-0.4l0,0.1c0.1-0.2,0.4-0.5,2.8-2.4c0,0,25.6-20.7,25.7-20.8c0-0.1-0.1-1.3-0.1-1.3
|
||||
c0,0-0.4-3.5-0.4-3.8C103.4,11.9,65.4,45.8,65.4,45.8z"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFE500" d="M124.3,22.5l5,6l5.2,5.8L138,38c18.5,18.5,56.1,56.3,56.5,56.6
|
||||
c0.1,0.1,0.2,0.2,0.2,0.3v0c0,0.1-0.1,0.2-0.1,0.3c-1.6,1.5-38.4,37-58.4,54l-30.8,24.9l0.9,19l47-41.9
|
||||
c17.2-15.1,50-51.1,50.3-51.4c0.8-0.7,1.3-1.8,1.3-3c0-1.2-0.5-2.2-1.3-3l-0.2-0.2c-5.7-5.4-34.6-33-49.3-47.1
|
||||
c-5-4.8-6.8-6.3-8.6-7.8l-8-6.6L124.3,22.5"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFE500" d="M200.9,101.7c-2.6,2.8-7.4,7.9-13.1,14c4.5-4.6,7.9-8.2,10.4-10.9
|
||||
c0.4-0.5,0.8-0.9,1.2-1.3c0.5-0.6,1-1.1,1.5-1.6L200.9,101.7 M126.2,24.3c1.1,1.3,3.4,4.1,3.4,4.1l-0.1-0.1
|
||||
c0.1,0.1,0.6,0.6,5.3,5.9l3.5,3.6l48.6,48.7l7.9,7.9l0.2,0.4v0c0,0.1-0.2,0.5-0.2,0.5c-4,3.8-38.9,37.4-58.5,54
|
||||
c0,0-30.2,24.4-30.7,24.9c0,0.1,0.4,7.6,0.6,13c0.1,0.1,0.2,0.2,0.3,0.3c-0.3-5.1-0.7-13-0.7-13.1c0.6-0.5,30.6-24.8,30.6-24.8
|
||||
c20.6-17.5,58.2-53.8,58.5-54.1c0,0,0.2-0.6,0.2-0.8l0,0l-0.3-0.5l-7.9-7.9l-48.6-48.7L135,34l-0.3-0.3c-4.6-5.2-4.9-5.5-5-5.6
|
||||
l0.2,0.1c0,0-1-1.2-1.7-2.1c2.5,1.9,8.8,6.7,8.8,6.7l8.1,6.6c1.8,1.4,3.6,2.9,8.5,7.6c12.9,12.5,36.7,35.1,47.8,45.7l0-0.4
|
||||
c-11.2-10.7-34.8-33.1-47.6-45.5c-4.9-4.7-6.7-6.2-8.5-7.7l-8.1-6.6C137,32.5,127.6,25.4,126.2,24.3"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFE400" d="M200.9,101.2c-3.9,4.2-12.8,13.8-22.5,23.9c3.6-3.5,6.7-6.6,9.4-9.4
|
||||
c5.7-6.1,10.5-11.2,13.1-14L200.9,101.2 M128,26.1c0.8,0.9,1.7,2.1,1.7,2.1l-0.2-0.1c0.2,0.1,0.4,0.4,5,5.6L135,34l3.5,3.6
|
||||
L187,86.3l7.9,7.9l0.3,0.5l0,0c0,0.1-0.2,0.8-0.2,0.8c-0.3,0.3-37.9,36.6-58.5,54.1c0,0-30.1,24.3-30.6,24.8c0,0.1,0.4,8,0.7,13.1
|
||||
c0.1,0.1,0.2,0.2,0.3,0.3c-0.3-4.9-0.7-13.2-0.7-13.3c0.6-0.5,30.5-24.7,30.5-24.7c21.2-18,58.5-54,58.6-54.3c0,0,0.2-0.8,0.2-1
|
||||
l0,0l-0.3-0.6l-7.9-7.9l-48.6-48.7l-3.4-3.6L130,28l0,0l-0.1-0.1c1.4,1,6.8,5.1,6.8,5.1l8.1,6.6c1.8,1.4,3.6,2.9,8.4,7.6
|
||||
c13.3,12.8,37,35.5,48,45.9l0-0.4c-11.1-10.6-34.8-33.2-47.8-45.7c-4.9-4.7-6.7-6.2-8.5-7.6l-8.1-6.6C136.9,32.8,130.6,28,128,26.1
|
||||
"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFE400" d="M142.7,159c-5.4,4.8-12.2,10.9-18.4,16.4C129,171.3,135,166,142.7,159
|
||||
M200.9,100.8c-4.7,5-17.5,18.9-30,31.6c2.7-2.6,5.2-5,7.5-7.3c9.7-10.1,18.6-19.7,22.5-23.9L200.9,100.8 M129.9,27.9L130,28l0,0
|
||||
l5.2,5.8l3.4,3.6l48.6,48.7l7.9,7.9l0.3,0.6l0,0c0,0.2-0.2,1-0.2,1c-0.2,0.2-37.4,36.2-58.6,54.3c0,0-30,24.2-30.5,24.7
|
||||
c0,0.1,0.5,8.4,0.7,13.3c0.1,0.1,0.3,0.2,0.3,0.3c-0.2-4.5-0.7-13.3-0.7-13.4c0.6-0.5,30.4-24.6,30.4-24.6
|
||||
c21.7-18.4,58.6-54.3,58.7-54.4c0,0,0.1-0.9,0.1-1.2l0,0l-0.4-0.6l-7.9-7.9l-48.6-48.7l-3.4-3.6c0,0-2.2-2.4-3.4-3.8
|
||||
c0.8,0.6,4.4,3.4,4.5,3.4l0.8,0.7c6.5,5.3,7.3,6,7.5,6l-0.2,0c1.8,1.4,3.6,2.9,8.4,7.6c13.5,13.1,37.4,35.8,48.1,46l0-0.4
|
||||
c-10.9-10.4-34.7-33-48-45.9c-4.9-4.7-6.7-6.2-8.4-7.6l-8.1-6.6C136.7,33,131.3,28.9,129.9,27.9"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFE100" d="M153.8,148.7c-0.6,0.5-1.2,1-1.7,1.5c0,0-21.6,19.3-34.8,31
|
||||
c1.9-1.6,4.2-3.5,7-5.8c6.2-5.6,13.1-11.7,18.4-16.4C146.1,155.9,149.8,152.4,153.8,148.7 M201,100.3c-5.7,6-24.9,27-39.9,41.5
|
||||
c3.6-3.4,6.9-6.6,9.9-9.5c12.5-12.7,25.3-26.6,30-31.6L201,100.3 M132,29.9c1.2,1.3,3.4,3.8,3.4,3.8l3.4,3.6l48.6,48.7l7.9,7.9
|
||||
l0.4,0.6l0,0c0,0.2-0.1,1.2-0.1,1.2c-0.1,0.2-37,36-58.7,54.4c0,0-29.9,24.1-30.4,24.6c0,0.1,0.5,8.9,0.7,13.4
|
||||
c0.1,0.1,0.1,0.1,0.1,0.1l0.2,0c0,0,0,0,0,0c-0.2-4-0.8-13.2-0.8-13.3c0.6-0.5,30.3-24.5,30.3-24.5c22.2-18.9,58.8-54.5,58.8-54.6
|
||||
l0.1-1.3l0-0.1l-0.4-0.7l-7.9-7.9L139.1,37l-3.4-3.6l0,0c0,0-0.7-0.8-1.4-1.5c0.9,0.7,2,1.5,2,1.5c0,0,7.7,6.3,8.1,6.6
|
||||
c1.7,1.4,3.6,2.9,8.4,7.6c13.6,13.1,37.6,36,48.3,46.2l0-0.4c-10.8-10.3-34.6-33-48.1-46c-4.9-4.7-6.7-6.2-8.4-7.6l0.2,0
|
||||
c-0.2,0-1-0.7-7.5-6l-0.8-0.7C136.5,33.2,132.8,30.5,132,29.9"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFDE00" d="M201,99.9c-6.6,6.9-33.9,36.8-49.1,50.1c0,0-26.4,23.5-38.3,34.2
|
||||
c1.1-0.8,2.3-1.8,3.7-2.9c13.1-11.7,34.8-31,34.8-31c0.6-0.5,1.1-1,1.7-1.5c1.1-1,2.2-2.1,3.3-3.1c1.3-1.3,2.6-2.5,3.9-3.7
|
||||
c15-14.6,34.2-35.5,39.9-41.5L201,99.9 M134.3,31.9c0.7,0.7,1.4,1.5,1.4,1.5l0,0l3.4,3.6l48.6,48.7l7.9,7.9l0.4,0.7l0,0.1l-0.1,1.3
|
||||
c-0.1,0.1-36.6,35.8-58.8,54.6c0,0-29.8,24-30.3,24.5c0,0.1,0.6,9.3,0.8,13.3c0.1,0,0.2,0,0.3-0.1c-0.2-3.5-0.8-13-0.8-13.1
|
||||
c0.6-0.5,30.2-24.4,30.2-24.4c21.2-18,58.8-54.4,58.9-54.8l0.1-1.3l-0.1-0.3l-0.5-0.7l-7.9-7.9l-48.6-48.7c0,0-1.4-1.5-2.4-2.5
|
||||
c1.1,0.9,7.4,6.1,7.4,6.1c1.7,1.4,3.5,2.9,8.4,7.6c13.7,13.2,37.9,36.3,48.5,46.4l0-0.4c-10.7-10.2-34.8-33.1-48.3-46.2
|
||||
c-4.8-4.7-6.6-6.2-8.4-7.6c-0.5-0.4-8.1-6.6-8.1-6.6C136.3,33.5,135.2,32.6,134.3,31.9"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFDA00" d="M201,99.4c-6.1,6.5-34,36.9-49.3,50.3c0,0-30.8,27.5-40.6,36.2
|
||||
c0.7-0.5,1.5-1.1,2.5-1.8c11.9-10.6,38.3-34.2,38.3-34.2c15.2-13.3,42.5-43.2,49.1-50.1L201,99.4 M136.8,34.3c1,1,2.4,2.5,2.4,2.5
|
||||
l48.6,48.7l7.9,7.9l0.5,0.7l0.1,0.3l-0.1,1.3c-0.2,0.5-37.7,36.8-58.9,54.8c0,0-29.7,23.9-30.2,24.4c0,0.1,0.6,9.6,0.8,13.1
|
||||
c0.1,0,0.2-0.1,0.3-0.2c-0.2-2.8-0.8-12.7-0.8-12.8c0.6-0.5,30.1-24.3,30.1-24.3c21.3-18.1,58.9-54.6,59-55l0.1-1.3l0-0.2l-0.1-0.2
|
||||
l-0.5-0.8l-7.9-7.9c-27.4-27.5-43.3-43.4-47.4-47.5c1.6,1.3,3.5,2.8,3.5,2.8c1.7,1.4,3.5,2.9,8.3,7.5
|
||||
c13.9,13.4,38.3,36.7,48.7,46.6l0-0.4c-10.6-10.1-34.8-33.2-48.5-46.4c-4.8-4.7-6.6-6.1-8.4-7.6C144.3,40.3,138,35.2,136.8,34.3"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFD800" d="M201,99c-5.6,5.9-34.1,37-49.5,50.6c0,0-36,32.2-42.2,37.6
|
||||
c0.5-0.3,1.1-0.7,1.8-1.2c9.8-8.7,40.6-36.2,40.6-36.2c15.3-13.4,43.2-43.9,49.3-50.3L201,99 M140.6,37.7
|
||||
c4.2,4.2,20,20.1,47.4,47.5l7.9,7.9l0.5,0.8l0.1,0.2l0,0.2l-0.1,1.3c-0.2,0.5-37.7,36.9-59,55c0,0-29.6,23.9-30.1,24.3
|
||||
c0,0.1,0.7,9.9,0.8,12.8c0.1,0,0.2-0.1,0.3-0.2c-0.1-1.8-0.9-12.4-0.9-12.5c0.6-0.5,30-24.2,30-24.2c21.4-18.2,59-54.8,59.1-55.2
|
||||
l0.1-1.4c0,0,0-0.1,0-0.2l-0.1-0.3l-0.5-0.8l0,0c0,0-47.4-47.5-51.2-51.4c1.5,1.2,3.4,2.9,7.3,6.7c13.9,13.4,38.6,36.9,48.9,46.8
|
||||
l0-0.4c-10.4-9.9-34.8-33.1-48.7-46.6c-4.8-4.7-6.6-6.1-8.3-7.5C144.1,40.6,142.2,39,140.6,37.7"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FFD700" d="M144.9,41.6c3.8,3.8,51.2,51.4,51.2,51.4l0,0l0.5,0.8l0.1,0.3
|
||||
c0,0.1,0,0.2,0,0.2l-0.1,1.4c-0.2,0.5-37.7,37-59.1,55.2c0,0-29.5,23.8-30,24.2c0,0.1,0.8,10.6,0.9,12.5c0.2-0.1,0.5-0.3,0.9-0.5
|
||||
c6.1-5.5,42.2-37.6,42.2-37.6C166.9,136,195.4,104.9,201,99l0-0.4c-5.1,5.3-34.1,37.1-49.7,50.8c0,0-42,37.5-42.5,38
|
||||
c0-0.6-0.9-11.8-0.9-11.9c0.6-0.5,29.9-24.2,29.9-24.2c21.5-18.3,59.1-55,59.2-55.4l0.1-1.4l-0.1-0.3l-0.1-0.4l-0.5-0.8l-0.1-0.1
|
||||
c0,0-27.6-27.7-39.3-39.4c15,14.4,36.9,35.2,44.1,42.1l0-0.4c-10.4-9.9-35-33.3-48.9-46.8C148.3,44.5,146.4,42.9,144.9,41.6"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FED500" d="M157.1,53.4c11.7,11.8,39.3,39.4,39.3,39.4l0.1,0.1l0.5,0.8l0.1,0.4l0.1,0.3
|
||||
l-0.1,1.4c-0.1,0.5-37.7,37.2-59.2,55.4c0,0-29.4,23.7-29.9,24.2c0,0.1,0.9,11.3,0.9,11.9c0.5-0.4,42.5-38,42.5-38
|
||||
c15.6-13.7,44.7-45.5,49.7-50.8l0-0.4c-4.3,4.4-34.1,37.1-49.9,51c0,0-41.6,37.1-42,37.5c0-0.6-0.9-11-0.9-11.1
|
||||
c0.6-0.5,29.8-24.1,29.8-24.1c21.6-18.3,59.2-55.2,59.3-55.6l0.1-1.5l-0.1-0.4l-0.2-0.4l-0.5-0.8l-0.1-0.1c0,0-13.3-13.3-22.2-22.3
|
||||
c8.5,8.1,24.8,23.7,26.8,25.6l0-0.4C193.9,88.6,172,67.8,157.1,53.4"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FED400" d="M174.4,70.3c8.9,8.9,22.2,22.3,22.2,22.3l0.1,0.1l0.5,0.8l0.2,0.4l0.1,0.4
|
||||
l-0.1,1.5c-0.1,0.5-37.7,37.3-59.3,55.6c0,0-29.3,23.6-29.8,24.1c0,0.1,0.9,10.6,0.9,11.1c0.5-0.4,42-37.5,42-37.5
|
||||
c15.8-13.9,45.6-46.6,49.9-51l0-0.4c-3.4,3.4-34.1,37.1-50.2,51.2c0,0-41.1,36.7-41.5,37.1c0-0.6-0.9-10.2-0.9-10.4
|
||||
c0.6-0.5,29.7-24,29.7-24c21.7-18.4,59.3-55.4,59.4-55.8l0.1-1.5l-0.1-0.4l-0.2-0.5c-0.4-0.5-0.5-0.8-0.6-0.9l0,0l-0.1-0.2
|
||||
c0,0-2.7-2.7-5.1-5.1c2.6,2.5,9.1,8.7,9.4,9l0-0.4C199.1,94,182.8,78.4,174.4,70.3"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FDD200" d="M197.7,93.2L197.7,93.2L197.7,93.2 M191.7,87.2c2.4,2.4,5.1,5.1,5.1,5.1
|
||||
l0.1,0.2l0,0c0.1,0.1,0.2,0.3,0.6,0.9l0.2,0.5l0.1,0.4l-0.1,1.5c-0.1,0.5-37.8,37.4-59.4,55.8c0,0-29.2,23.5-29.7,24
|
||||
c0,0.1,0.9,9.8,0.9,10.4c0.5-0.4,41.5-37.1,41.5-37.1c16.1-14.1,46.7-47.8,50.2-51.2l0-0.5c0,0.1-0.1,0.2-0.2,0.3
|
||||
c-3.3,3.3-34.2,37.2-50.2,51.2c0,0-40.6,36.2-41.1,36.7c0-0.6-0.9-9.4-0.9-9.6c0.6-0.5,29.6-23.9,29.6-23.9
|
||||
c21.8-18.5,59.4-55.6,59.6-56l0.1-1.6v0l-0.1-0.5l-0.1-0.2c0.9,0.9,3.1,2.9,3.1,2.9c0.1,0.1,0.1,0.2,0.2,0.2l0-0.5
|
||||
C200.8,96,194.3,89.8,191.7,87.2"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FDD000" d="M109.9,184.7c0-0.6-0.7-6.8-0.7-6.8s-0.2-1.9-0.2-2c1-0.8,29.2-23.6,29.5-23.8
|
||||
c21.8-18.5,59.5-55.8,59.7-56.2c0,0,0.1-1.1,0.1-1.4c0.7,0.6,2.4,2.3,2.4,2.3l0,0l0.1,0.3c-0.1,0.1-0.2,0.3-0.2,0.3l0,0l-5.8,6.1
|
||||
c-10.4,11.1-31.9,34.1-44.3,45.1C150.5,148.5,110.4,184.3,109.9,184.7 M197.9,93.6l0.1,0.2l0.1,0.5v0l-0.1,1.6
|
||||
c-0.1,0.5-37.8,37.6-59.6,56c0,0-29.1,23.4-29.6,23.9c0,0.1,0.9,9,0.9,9.6c0.5-0.4,41.1-36.7,41.1-36.7
|
||||
c16-14.1,46.8-47.9,50.2-51.2c0.1-0.1,0.2-0.2,0.2-0.3l0-0.5c0-0.1-0.1-0.2-0.2-0.2C200.9,96.5,198.8,94.4,197.9,93.6 M197.7,93.2
|
||||
L197.7,93.2L197.7,93.2"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FCCE00" d="M110.2,184.1c0-1.3-0.6-6-0.6-6s-0.2-1.9-0.2-2c0.6-0.5,29.4-23.7,29.4-23.7
|
||||
c21.9-18.6,59.6-56,59.7-56.4l0-0.1c0,0,0-0.5,0-0.8c1.3,1.2,1.8,1.7,2,1.8l-0.1-0.1l0.1,0.2l0,0.1l0,0c-5.6,5.9-5.8,6.2-5.8,6.2
|
||||
c0,0,0,0,0,0c-10.3,11.1-31.9,34.1-44.3,45C150.3,148.2,110.7,183.7,110.2,184.1 M198.3,94.4c0,0.3-0.1,1.4-0.1,1.4
|
||||
c-0.1,0.5-37.8,37.7-59.7,56.2c-0.3,0.2-28.5,23-29.5,23.8c0,0.1,0.2,2,0.2,2s0.6,6.2,0.7,6.8c0.5-0.4,40.6-36.2,40.6-36.2
|
||||
c12.4-10.9,34-34,44.3-45.1l5.8-6.1l0,0c0,0,0.1-0.2,0.2-0.3l-0.1-0.3l0,0C200.7,96.7,199,95,198.3,94.4"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FBCD00" d="M139,152.5c21.9-18.6,59.7-56.1,59.8-56.5l0-0.1l0-0.2c0.4,0.4,1.2,1.1,1.3,1.3
|
||||
c-0.5,0.5-4.9,5.2-4.9,5.2l-0.8,0.8c-10.3,11.1-31.8,34.1-44.3,45c0,0-39.2,35-39.6,35.4c0-0.6-0.8-7.1-0.8-7.3
|
||||
c0.1-0.1,28.8-23.3,28.8-23.3C138.8,152.7,138.9,152.6,139,152.5L139,152.5 M198.6,95.1c0,0.3,0,0.8,0,0.8l0,0.1
|
||||
c-0.1,0.4-37.9,37.8-59.7,56.4c0,0-28.8,23.2-29.4,23.7c0,0.1,0.2,2,0.2,2s0.6,4.7,0.6,6c0.5-0.4,40.1-35.8,40.1-35.8
|
||||
c12.4-10.9,34-33.9,44.3-45c0,0,0,0,0,0c0,0,0.2-0.3,5.8-6.2l0,0l0-0.1l-0.1-0.2l0.1,0.1C200.3,96.7,199.9,96.3,198.6,95.1"/>
|
||||
<path clip-path="url(#SVGID_2_)" fill="#FBCB00" d="M198.8,95.7l0,0.2l0,0.1c-0.1,0.4-37.9,37.9-59.8,56.5l0,0
|
||||
c-0.1,0.1-0.2,0.2-0.5,0.4c0,0-28.7,23.2-28.8,23.3c0,0.1,0.8,6.7,0.8,7.3c0.5-0.4,39.6-35.4,39.6-35.4
|
||||
c12.4-10.9,33.9-33.9,44.3-45l0.8-0.8c0.1-0.1,4.5-4.7,4.9-5.2C200,96.8,199.2,96.1,198.8,95.7"/>
|
||||
</g>
|
||||
<rect x="15.3" y="66.6" transform="matrix(0.706 0.7082 -0.7082 0.706 58.1477 6.1217)" fill="#FFE500" width="12.7" height="13.1"/>
|
||||
<rect x="186.4" y="65.1" fill="#FFE500" width="2.6" height="10.1"/>
|
||||
<polygon fill-rule="evenodd" clip-rule="evenodd" points="119.8,62.7 119.8,121.7 102.4,121.7 102.3,73.4 109.8,71.6 107.6,62.8 "/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M49.5,75.5c7.2-0.3,17.7-0.8,24.3,0c8.4,1,19.4,3.2,20.3,15
|
||||
c0.4,5.6-1.5,10.4-9.4,16.7c0,0,8,8.7,15.3,17c0,0-9.1,8.6-14.1,12.7l-17.9-29.7c4-3.1,8.8-7.6,8.8-12.9c0-5.1-4.8-7.5-6.5-7.5h-3.7
|
||||
v49.6H49.5V75.5z"/>
|
||||
<polygon fill-rule="evenodd" clip-rule="evenodd" points="140.1,136.1 140.1,89.5 123.3,89.5 123.3,74.5 174.5,74.5 174.5,89.5
|
||||
157.8,89.5 157.8,136.1 "/>
|
||||
<path d="M42.9,60.1L42.8,75l-18.1,0l0,13.8l16.7-0.1v14.2l-16.4,0l0,23.9H7V60.9C25,60.1,42.9,60.1,42.9,60.1z"/>
|
||||
<polygon fill-rule="evenodd" clip-rule="evenodd" points="229,97.7 240.6,98.1 245.2,68.2 230.8,67 "/>
|
||||
<polygon points="223.8,104.3 232.9,96.9 242.5,108.9 233.4,116.2 226.1,107.1 "/>
|
||||
<polygon fill-rule="evenodd" clip-rule="evenodd" points="115.8,118.3 95.4,118.3 95.3,67.3 102.5,65.5 100.2,56.3 115.8,56.3 "/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M133.1,86.1c0,0-15.2,0.4-15.1,0.4l-1.7,0.2V68.1h54.3v18.6l-1.8,0l-14.9-0.6v46.6
|
||||
h-20.7V86.1z"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M169.5,53.3l0.6,0c5.9,0,23-0.3,46.2,1l2.6,0.2l-24.4,45.4
|
||||
c5,0.1,11.5,0.2,20.1-0.4l1.9-0.1l0,18.4c0,0-47.4,0-48.2,0h-3.6L189,71.2c-5.2,0-11.4,0-18.9,0.4l-0.7,0.1V53.3z"/>
|
||||
<path d="M38.9,55l0,16.7l-1.7,0l-16.5,0l0,10.2l16.7-0.1l0,17.4h-1.7l-14.7,0l0,23.9H0V54.6l1.4-0.1c18-0.8,37-0.7,37-0.7"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M62.6,100.4c3.7-3.1,7.3-6.8,7.3-11.1c0-4.1-3.9-6-5.1-6h-2.2V100.4z M68.5,69.1
|
||||
c8.2,1,20.6,3.3,21.6,16.4c0.4,5.9-1.6,10.9-8.7,17l15.3,17.9l-0.9,0.9c-4.2,4.3-8.9,8.4-13.9,12.4l-1.3,1.1l-17.9-29.7v27.8H42.5
|
||||
V69.2l1.4-0.1C51.2,68.8,61.8,68.4,68.5,69.1z"/>
|
||||
<polygon fill-rule="evenodd" clip-rule="evenodd" points="224.2,62.6 241.8,64 236.7,96.9 222.2,96.4 "/>
|
||||
<path d="M239.1,106.5l-9.3-11.5l-11.5,9.3h-1.8v1.8c-8.2,0.4-14.4,0.2-18.9,0.1l24.5-45.5c-23.2-1.3-40-1-52.2-0.7v15.3
|
||||
c15.1-0.8,21.6-0.7,27.2-0.8l-24.2,46.6h1.1c0.8,0,46.7,0,46.7,0l0-14l7,8.7L239.1,106.5z"/>
|
||||
<polygon fill-rule="evenodd" clip-rule="evenodd" fill="#E2001A" points="114.3,57.8 114.3,116.7 96.9,116.7 96.8,68.5 104.3,66.7
|
||||
102.1,57.8 "/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" fill="#E2001A" d="M44,70.6c7.2-0.3,17.7-0.8,24.3,0c8.4,1,19.4,3.2,20.3,15
|
||||
c0.4,5.6-1.5,10.4-9.4,16.7l15.4,18c-4.1,4.2-8.8,8.3-13.7,12.3l-18.3-30.4c4-3.1,8.8-7.6,8.8-12.9c0-5.1-4.8-7.5-6.5-7.5h-3.7v49.6
|
||||
H44V70.6z"/>
|
||||
<polygon fill-rule="evenodd" clip-rule="evenodd" fill="#E2001A" points="134.6,131.2 134.6,84.6 117.8,85 117.8,69.6 169,69.6
|
||||
169,85 152.3,84.6 152.3,131.2 "/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" fill="#E2001A" d="M170.7,70.1V54.8c5.9,0,22.7-0.3,45.9,1l-24.5,45.5
|
||||
c5.3,0.1,12.8,0.3,23-0.4l0,15.3c0,0-45.9,0-46.7,0l-1.1,0l24.2-46.6C185.9,69.7,179.4,69.7,170.7,70.1z"/>
|
||||
<polygon fill="#E2001A" points="37.4,64.5 37.4,70 19.2,70 19.2,83.8 35.9,83.7 35.9,97.9 19.4,97.9 19.4,121.8 1.5,121.8 1.5,56
|
||||
37.4,55.3 "/>
|
||||
<polygon fill-rule="evenodd" clip-rule="evenodd" fill="#E2001A" points="223.8,94.9 235.4,95.3 240,65.4 225.6,64.2 "/>
|
||||
<rect x="222.8" y="99.6" transform="matrix(-0.777 0.6295 -0.6295 -0.777 472.7412 43.5246)" fill="#E2001A" width="11.7" height="11.7"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 32 KiB |
Before Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 24 KiB |
Before Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 33 KiB |
Before Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 59 KiB |
Before Width: | Height: | Size: 151 KiB |
Before Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 4.0 KiB |
Before Width: | Height: | Size: 5.8 KiB |
Before Width: | Height: | Size: 4.4 KiB |
Before Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 55 KiB |
Before Width: | Height: | Size: 38 KiB |
Before Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 9.2 KiB |
|
@ -1,38 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
|
||||
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
|
||||
<!-- Created with Sodipodi ("http://www.sodipodi.com/") -->
|
||||
<svg
|
||||
id="svg592"
|
||||
sodipodi:version="0.33"
|
||||
width="600pt"
|
||||
height="600pt"
|
||||
sodipodi:docbase="/home/tobias/Desktop"
|
||||
sodipodi:docname="/home/tobias/Desktop/Oxidising.svg"
|
||||
sodipodi:author="Aqua78"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs
|
||||
id="defs594" />
|
||||
<sodipodi:namedview
|
||||
id="base" />
|
||||
<rect
|
||||
style="font-size:12.000;fill:#ff6700;fill-rule:evenodd;stroke:#000000;stroke-width:6.250000;"
|
||||
id="rect633"
|
||||
width="600.000000"
|
||||
height="600.000000"
|
||||
x="84.682228"
|
||||
y="154.565033"
|
||||
transform="translate(-4.650838,-74.41330)" />
|
||||
<g
|
||||
id="g650"
|
||||
transform="matrix(4.005551,0,0,4.005551,78.44294,71.31516)">
|
||||
<path
|
||||
style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-opacity:1;stroke-width:1pt;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:1;"
|
||||
d="M 76.437500 16.500000 C 76.437498 16.500000 69.300080 21.920720 70.093750 31.312500 C 70.887434 40.704289 72.491460 38.600530 70.375000 44.156250 C 65.480680 38.600612 60.437500 38.187500 60.437500 38.187500 C 60.437501 38.187502 63.209340 42.287100 62.812500 49.562500 C 62.415661 56.837893 59.781250 61.875000 59.781250 61.875000 L 56.875000 62.281250 C 56.875000 62.281251 54.900730 56.968750 51.593750 56.968750 C 53.710221 69.799872 45.882280 80.257300 45.750000 80.125000 C 45.617722 79.992704 42.053970 79.458070 39.937500 76.812500 C 39.276110 78.928895 39.544050 81.570190 42.718750 85.406250 C 41.660521 88.316327 39.397600 103.155260 46.937500 114.531250 C 47.458273 115.262983 48.149456 115.846240 48.843750 116.437500 C 48.312833 114.297503 47.937500 112.084690 47.937500 109.781250 C 47.937500 94.498330 60.342067 82.093750 75.625000 82.093750 C 90.907931 82.093747 103.312500 94.498327 103.312500 109.781250 C 103.312499 111.488763 103.108870 113.158920 102.812500 114.781250 C 103.286579 114.619303 105.021670 114.153740 105.031250 114.125000 C 105.163549 113.860513 108.851050 109.633990 108.718750 106.062500 C 108.586549 102.490908 108.842900 80.649800 110.562500 79.062500 C 112.282199 77.475198 107.651950 80.240550 106.593750 79.843750 C 105.535449 79.446942 108.057850 53.399870 103.031250 51.812500 C 103.163549 58.294202 99.875000 63.718750 99.875000 63.718750 C 99.874999 63.718752 98.289418 51.296360 96.437500 45.343750 C 94.585597 39.391141 89.812500 36.750000 89.812500 36.750000 C 89.812502 36.750002 90.875880 42.685750 89.156250 46.125000 C 87.436622 49.564261 87.964480 40.827920 86.906250 38.843750 C 85.848008 36.859572 79.363450 28.814260 78.437500 25.375000 C 77.511554 21.935751 76.437500 16.500000 76.437500 16.500000 z M 77.781250 57.218750 C 77.781248 57.218749 78.801040 64.167358 79.406250 65.781250 C 80.011456 67.395138 82.831077 73.255204 82.125000 76.281250 C 81.418926 79.307296 76.579864 81.611464 74.562500 77.375000 C 72.545135 73.138536 72.233499 61.455214 77.781250 57.218750 z M 65.375000 67.406250 C 66.484551 67.607982 70.191841 70.115268 69.687500 77.781250 C 68.577950 82.723792 64.052605 81.613027 63.750000 76.468750 C 63.447399 74.249651 65.072396 71.743582 65.375000 67.406250 z M 90.187500 75.156250 C 92.608338 82.418760 90.000000 81.812499 90.000000 81.812500 C 86.267878 81.812500 87.968399 77.577088 90.187500 75.156250 z M 55.468750 78.687500 C 56.467294 79.472070 57.451208 83.361399 55.687500 83.218750 C 53.424520 83.076099 54.428425 79.103210 55.468750 78.687500 z M 98.250000 79.593750 C 100.458966 81.972808 99.718225 86.941545 98.156250 86.656250 C 95.484734 86.875293 96.569854 80.838781 98.250000 79.593750 z M 47.406250 91.687500 C 48.048170 92.543398 50.808083 97.621930 47.718750 97.437500 C 45.342663 97.395720 46.906978 92.430289 47.406250 91.687500 z M 104.593750 91.937500 C 105.734939 92.008828 106.652650 95.831856 104.906250 95.718750 C 103.302496 95.748295 103.850970 92.281886 104.593750 91.937500 z "
|
||||
id="path649" />
|
||||
<circle cx="77.82140" cy="111.3967" r="27.31232" transform="matrix(1.013699,0.000000,0.000000,1.013699,-2.446365,-2.904882)"
|
||||
style="fill-rule:evenodd;stroke:#000000;fill:none;fill-opacity:1;stroke-opacity:1;stroke-width:3.2061;stroke-linejoin:miter;stroke-linecap:butt;stroke-dasharray:none;" />
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 4.4 KiB |
|
@ -1 +0,0 @@
|
|||
<svg id="b96c2bed-161d-4a6a-88f8-007e67c638f7" data-name="Logo" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 283.46 283.46"><defs><style>.bbbce7e6-9f7c-4bc7-b65d-f87c42553021{fill:url(#b5078497-905e-430d-8c08-43e741159356);}.b35d0c34-aac5-4d6b-a247-c101a4f12738{fill:none;stroke:#fff;stroke-miterlimit:10;stroke-width:5px;}</style><linearGradient id="b5078497-905e-430d-8c08-43e741159356" x1="75.44" y1="26.92" x2="208.02" y2="256.55" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#dab1d3"/><stop offset="0.01" stop-color="#d84793"/><stop offset="0.51" stop-color="#d6d900"/><stop offset="0.76" stop-color="#1eb7c8"/><stop offset="1" stop-color="#3c55a2"/></linearGradient></defs><circle class="bbbce7e6-9f7c-4bc7-b65d-f87c42553021" cx="141.73" cy="141.73" r="132.55"/><path id="ad49426f-1fb1-4b02-9f9e-efa82492899f" data-name="Logo Pfad" class="b35d0c34-aac5-4d6b-a247-c101a4f12738" d="M233.41,185.29l-4.62,25.54M40.41,186.13l15.2,15.06M157.05,55.31,55.65,200.75a.11.11,0,0,0,.08.16l172.9,9.91a.1.1,0,0,0,.09-.14L157.23,55.32A.1.1,0,0,0,157.05,55.31ZM136.16,41.24,40,185.93a.13.13,0,0,0,.11.2l192.76-.84a.13.13,0,0,0,.1-.2L136.38,41.24A.13.13,0,0,0,136.16,41.24Zm.12-.16,20.87,14.08"/></svg>
|
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 47 KiB |
Before Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 38 KiB |
Before Width: | Height: | Size: 4.5 KiB |
Before Width: | Height: | Size: 37 KiB |
Before Width: | Height: | Size: 45 KiB |
Before Width: | Height: | Size: 8.6 KiB |
Before Width: | Height: | Size: 5.2 KiB |
Before Width: | Height: | Size: 9.1 KiB |
|
@ -1,19 +0,0 @@
|
|||
{
|
||||
"name": "",
|
||||
"short_name": "",
|
||||
"icons": [
|
||||
{
|
||||
"src": "/android-chrome-192x192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png"
|
||||
},
|
||||
{
|
||||
"src": "/android-chrome-512x512.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png"
|
||||
}
|
||||
],
|
||||
"theme_color": "#ffffff",
|
||||
"background_color": "#ffffff",
|
||||
"display": "standalone"
|
||||
}
|
Before Width: | Height: | Size: 3.6 KiB |
Before Width: | Height: | Size: 203 KiB |
Before Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 5.8 KiB |
Before Width: | Height: | Size: 37 KiB |
Before Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 21 KiB |
Before Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 105 KiB |
|
@ -1 +0,0 @@
|
|||
{"name":"Homer Dashboard","short_name":"Homer","theme_color":"#3367D6","icons":[{"src":"./icons/favicon-16x16.png","sizes":"16x16","type":"image/png"},{"src":"./icons/favicon-32x32.png","sizes":"32x32","type":"image/png"},{"src":"./icons/icon-any.png","sizes":"512x512","type":"image/png","purpose":"any"},{"src":"./icons/icon-any.svg","sizes":"any","type":"image/svg+xml","purpose":"any"},{"src":"./icons/icon-maskable.png","sizes":"512x512","type":"image/png","purpose":"maskable"},{"src":"./icons/safari-pinned-tab.svg","sizes":"any","type":"image/svg+xml","purpose":"monochrome"}],"start_url":"../","display":"standalone","background_color":"#000000"}
|
|
@ -1,117 +0,0 @@
|
|||
---
|
||||
# Additionnal page configuration
|
||||
|
||||
# Additionnal configurations are loaded using its file name, minus the extension, as an anchor (https://<mydashboad>#<config>).
|
||||
# `config.yml` is still used as a base configuration, and all values here will overwrite it, so you don't have to re-defined everything
|
||||
|
||||
|
||||
subtitle: "Management"
|
||||
|
||||
# This overwrites message config. Setting it to empty to remove message from this page and keep it only in the main one:
|
||||
# message: ~
|
||||
|
||||
# as we want to include a differente link here (so we can get back to home page), we need to replicate all links or they will be revome when overwriting the links field:
|
||||
links:
|
||||
- name: "Homepage"
|
||||
icon: "fas fa-heartbeat"
|
||||
url: "http://docker10.grote.lan:333"
|
||||
- name: "Management"
|
||||
icon: "fas fa-code-branch"
|
||||
url: "#mgmt"
|
||||
|
||||
services:
|
||||
- name: "Hardware"
|
||||
icon: "fas fa-cloud"
|
||||
items:
|
||||
- name: "Brother ADS-2700W"
|
||||
logo: "assets/icons/brother.jpg"
|
||||
url: "http://192.168.2.48"
|
||||
target: "_blank"
|
||||
- name: "Fritzbox 7590"
|
||||
logo: "assets/icons/fritzbox.svg"
|
||||
url: "http://192.168.5.1"
|
||||
target: "_blank"
|
||||
subtitle: "Modem"
|
||||
|
||||
- name: "Infra"
|
||||
icon: "fas fa-cloud"
|
||||
items:
|
||||
- name: "gitea"
|
||||
logo: "assets/icons/gitea.png"
|
||||
url: "https://git.mgrote.net"
|
||||
target: "_blank"
|
||||
subtitle: "git"
|
||||
- name: "Traefik"
|
||||
logo: "assets/icons/traefik.png"
|
||||
url: "http://docker10.grote.lan:8081"
|
||||
target: "_blank"
|
||||
subtitle: "Reverse Proxy"
|
||||
- name: "Unifi Network Application"
|
||||
logo: "assets/icons/ubiquiti.png"
|
||||
url: "https://docker10.grote.lan:8443"
|
||||
target: "_blank"
|
||||
subtitle: "WLAN"
|
||||
- name: "drone.io"
|
||||
logo: "assets/icons/drone.png"
|
||||
url: "http://docker10.grote.lan:81"
|
||||
target: "_blank"
|
||||
subtitle: "CI/CD"
|
||||
- name: "httpd"
|
||||
logo: "assets/icons/roundcube.png"
|
||||
url: "http://docker10.grote.lan:3344"
|
||||
target: "_blank"
|
||||
subtitle: "Package-Registry"
|
||||
- name: "Container Registry"
|
||||
logo: "assets/icons/hastebin.png"
|
||||
url: "https://registry.mgrote.net/ui/index.html"
|
||||
target: "_blank"
|
||||
subtitle: "Container-Registry"
|
||||
|
||||
- name: "Infra"
|
||||
icon: "fas fa-cloud"
|
||||
items:
|
||||
- name: "ProxMox Virtual Environment - Production"
|
||||
logo: "assets/icons/pve.png"
|
||||
url: "https://pve5.grote.lan:8006"
|
||||
target: "_blank"
|
||||
subtitle: "Selbstbau"
|
||||
- name: "ProxMox Virtual Environment - Test"
|
||||
logo: "assets/icons/pve.png"
|
||||
url: "https://pve5-test.grote.lan:8006"
|
||||
target: "_blank"
|
||||
subtitle: "Test - VM"
|
||||
|
||||
- name: "Internet-MGMT"
|
||||
icon: "fas fa-cloud"
|
||||
items:
|
||||
- name: "Strato - DNS"
|
||||
logo: "assets/icons/strato.jpg"
|
||||
url: "https://www.strato.de/apps/CustomerService#/skl"
|
||||
target: "_blank"
|
||||
subtitle: "Domainverwaltung"
|
||||
|
||||
- name: "Extern - Südring"
|
||||
icon: "fas fa-cloud"
|
||||
items:
|
||||
- name: "QNAP TS-251+"
|
||||
logo: "assets/icons/qnap.png"
|
||||
url: "http://192.168.3.108:8080"
|
||||
target: "_blank"
|
||||
- name: "Speedport Smart 3"
|
||||
logo: "assets/icons/speedport.png"
|
||||
url: "http://192.168.3.1"
|
||||
target: "_blank"
|
||||
- name: "Netgear GS308E"
|
||||
logo: "assets/icons/switch.png"
|
||||
url: "http://192.168.3.147"
|
||||
target: "_blank"
|
||||
- name: "Proxmox Backup Server"
|
||||
logo: "assets/icons/pve.png"
|
||||
url: "https://pbs.grote.lan:8007"
|
||||
target: "_blank"
|
||||
subtitle: "M93 Tiny"
|
||||
- name: "Proxmox Backup Server - Test"
|
||||
logo: "assets/icons/pve.png"
|
||||
url: "https://pbs-test.grote.lan:8007"
|
||||
target: "_blank"
|
||||
subtitle: "Test"
|
|
@ -1,25 +0,0 @@
|
|||
version: '3'
|
||||
services:
|
||||
######## homer ########
|
||||
homer:
|
||||
image: b4bz/homer:latest
|
||||
container_name: homer-dashboard
|
||||
restart: always
|
||||
environment:
|
||||
TZ: Europe/Berlin
|
||||
UID: 1000
|
||||
GID: 1000
|
||||
INIT_ASSETS: 0
|
||||
volumes:
|
||||
- ./assets/:/www/assets
|
||||
ports:
|
||||
- 333:8080
|
||||
networks:
|
||||
- traefik
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
|
||||
######## Networks ########
|
||||
networks:
|
||||
traefik:
|
||||
external: true
|
|
@ -2,19 +2,22 @@ version: '3'
|
|||
services:
|
||||
httpd-registry:
|
||||
container_name: "httpd-registry"
|
||||
image: httpd:bullseye
|
||||
image: "registry.mgrote.net/httpd:latest"
|
||||
restart: always
|
||||
volumes:
|
||||
- uploads:/usr/local/apache2/htdocs/
|
||||
- "{{ compose_dest_basedir }}/httpd/httpd.conf:/usr/local/apache2/conf/httpd.conf:ro"
|
||||
ports:
|
||||
- 3344:80
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost/"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
|
||||
python-api-server:
|
||||
container_name: httpd-api
|
||||
image: registry.mgrote.net/python-api-server:latest
|
||||
image: "registry.mgrote.net/python-api-server:latest"
|
||||
restart: always
|
||||
ports:
|
||||
- "5040:5000"
|
||||
|
@ -25,10 +28,8 @@ services:
|
|||
# FLASK_APP: app # for debugging
|
||||
MAX_CONTENT_LENGTH: 500
|
||||
UPLOAD_DIRECTORY: /uploads
|
||||
AUTH_TOKEN: {{ lookup('keepass', 'httpd-api-server-token', 'password') }}
|
||||
AUTH_TOKEN: "{{ lookup('keepass', 'httpd-api-server-token', 'password') }}"
|
||||
ENABLE_WEBSERVER: false
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
|
||||
volumes:
|
||||
uploads:
|
||||
|
|
|
@ -1,25 +1,33 @@
|
|||
version: '3.3'
|
||||
services:
|
||||
postfix:
|
||||
image: registry.mgrote.net/postfix:master
|
||||
container_name: mail-relay
|
||||
restart: always
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
ports:
|
||||
- 1025:25
|
||||
environment:
|
||||
SMTP_SERVER: smtp.strato.de
|
||||
SMTP_USERNAME: info@mgrote.net
|
||||
SMTP_PASSWORD: {{ lookup('keepass', 'strato_smtp_password', 'password') }}
|
||||
SERVER_HOSTNAME: mgrote.net
|
||||
# DEBUG: "yes" # literal
|
||||
ALWAYS_ADD_MISSING_HEADERS: "no" # literal
|
||||
OVERWRITE_FROM: info@mgrote.net
|
||||
# LOG_SUBJECT: "yes" # literal
|
||||
INET_PROTOCOL: ipv4
|
||||
networks:
|
||||
- mail-relay
|
||||
postfix:
|
||||
image: "registry.mgrote.net/postfix:latest"
|
||||
container_name: mail-relay
|
||||
restart: always
|
||||
ports:
|
||||
- 1025:25
|
||||
environment:
|
||||
SMTP_SERVER: smtp.strato.de
|
||||
SMTP_USERNAME: info@mgrote.net
|
||||
SMTP_PASSWORD: "{{ lookup('keepass', 'strato_smtp_password', 'password') }}"
|
||||
SERVER_HOSTNAME: mgrote.net
|
||||
# DEBUG: "yes" # as string not boolean
|
||||
ALWAYS_ADD_MISSING_HEADERS: "no" # as string not boolean
|
||||
# LOG_SUBJECT: "yes" # as string not boolean
|
||||
INET_PROTOCOL: ipv4
|
||||
SMTP_GENERIC_MAP: |
|
||||
/nobody@lldap/ lldap@mgrote.net
|
||||
/mg@pbs.localdomain/ pbs@mgrote.net
|
||||
/root@pbs.localdomain/ pbs@mgrote.net
|
||||
# rewrite FROM "nobody@lldap" to "lldap@mgrote.net"
|
||||
# /.*/ würde alle absender adressen ersetzen
|
||||
networks:
|
||||
- mail-relay
|
||||
healthcheck:
|
||||
test: ["CMD", "sh", "-c", "echo 'EHLO localhost' | nc -w 1 127.0.0.1 25 | grep -q '220 '"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
|
||||
######## Networks ########
|
||||
networks:
|
||||
|
|
|
@ -3,16 +3,16 @@ services:
|
|||
######## Miniflux ########
|
||||
miniflux:
|
||||
container_name: "mf-frontend"
|
||||
image: miniflux/miniflux:latest
|
||||
image: "ghcr.io/miniflux/miniflux:2.1.3"
|
||||
restart: always
|
||||
depends_on:
|
||||
- db
|
||||
- mf-db16
|
||||
environment:
|
||||
DATABASE_URL: postgres://miniflux:{{ lookup('keepass', 'miniflux_postgres_password', 'password') }}@mf-db/miniflux?sslmode=disable
|
||||
DATABASE_URL: "postgres://miniflux:{{ lookup('keepass', 'miniflux_postgres_password', 'password') }}@mf-db16/miniflux?sslmode=disable"
|
||||
RUN_MIGRATIONS: 1
|
||||
# CREATE_ADMIN: 1
|
||||
# ADMIN_USERNAME: adminmf
|
||||
# ADMIN_PASSWORD: {{ lookup('keepass', 'miniflux_admin_password', 'password') }}
|
||||
# ADMIN_PASSWORD: "{{ lookup('keepass', 'miniflux_admin_password', 'password') }}"
|
||||
WORKER_POOL_SIZE: 10
|
||||
POLLING_FREQUENCY: 10
|
||||
CLEANUP_ARCHIVE_UNREAD_DAYS: -1
|
||||
|
@ -21,6 +21,8 @@ services:
|
|||
networks:
|
||||
- intern
|
||||
- traefik
|
||||
healthcheck:
|
||||
test: ["CMD", "/usr/bin/miniflux", "-healthcheck", "auto"]
|
||||
labels:
|
||||
traefik.http.routers.miniflux.rule: Host(`miniflux.mgrote.net`)
|
||||
traefik.enable: true
|
||||
|
@ -29,26 +31,24 @@ services:
|
|||
traefik.http.routers.miniflux.entrypoints: entry_https
|
||||
traefik.http.services.miniflux.loadbalancer.server.port: 8080
|
||||
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
com.centurylinklabs.watchtower.depends-on: mf-db
|
||||
|
||||
|
||||
######## PostGreSQL ########
|
||||
db:
|
||||
container_name: "mf-db"
|
||||
image: postgres:13
|
||||
######## Postgres ########
|
||||
mf-db16:
|
||||
container_name: "mf-db16"
|
||||
image: "postgres:16.3"
|
||||
restart: always
|
||||
environment:
|
||||
POSTGRES_USER: miniflux
|
||||
POSTGRES_PASSWORD: {{ lookup('keepass', 'miniflux_postgres_password', 'password') }}
|
||||
POSTGRES_PASSWORD: "{{ lookup('keepass', 'miniflux_postgres_password', 'password') }}"
|
||||
TZ: Europe/Berlin
|
||||
POSTGRES_HOST_AUTH_METHOD: "md5" # Workaround beim Migration von 13 -> 16; https://eelkevdbos.medium.com/upgrade-postgresql-with-docker-compose-99d995e464 ;
|
||||
volumes:
|
||||
- db:/var/lib/postgresql/data
|
||||
- db16:/var/lib/postgresql/data
|
||||
networks:
|
||||
- intern
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: false
|
||||
com.centurylinklabs.watchtower.monitor-only: true
|
||||
healthcheck:
|
||||
test: ["CMD", "pg_isready", "-U", "miniflux"]
|
||||
interval: 10s
|
||||
start_period: 30s
|
||||
|
||||
######## Miniflux-Filter ########
|
||||
mf-filter:
|
||||
|
@ -58,57 +58,19 @@ services:
|
|||
restart: always
|
||||
environment:
|
||||
TZ: Europe/Berlin
|
||||
MF_AUTH_TOKEN: {{ lookup('keepass', 'miniflux_auth_token', 'password') }}
|
||||
MF_AUTH_TOKEN: "{{ lookup('keepass', 'miniflux_auth_token', 'password') }}"
|
||||
MF_API_URL: https://miniflux.mgrote.net/v1
|
||||
MF_SLEEP: 600
|
||||
#MF_DEBUG: 1
|
||||
image: registry.mgrote.net/miniflux-filter:latest
|
||||
image: "registry.mgrote.net/miniflux-filter:latest"
|
||||
volumes:
|
||||
- ./filter.txt:/data/filter.txt
|
||||
networks:
|
||||
- intern
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
com.centurylinklabs.watchtower.depends-on: mf-frontend
|
||||
|
||||
######## RSS-Bridge ########
|
||||
rssbridge:
|
||||
container_name: "mf-bridge"
|
||||
image: rssbridge/rss-bridge:latest
|
||||
restart: always
|
||||
environment:
|
||||
TZ: Europe/Berlin
|
||||
volumes:
|
||||
- ./whitelist.txt:/app/whitelist.txt
|
||||
networks:
|
||||
- intern
|
||||
ports: #um neue Feeds einzufügen
|
||||
- 3001:80
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
|
||||
######## changedetection ########
|
||||
changedetection.io:
|
||||
image: ghcr.io/dgtlmoon/changedetection.io
|
||||
container_name: mf-changedetection.io
|
||||
hostname: changedetection.io
|
||||
volumes:
|
||||
- changedetection-data:/datastore
|
||||
environment:
|
||||
PORT: 5000
|
||||
BASE_URL: http://docker10.grote.lan:5000
|
||||
ports:
|
||||
- 5000:5000
|
||||
restart: always
|
||||
networks:
|
||||
- intern
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
|
||||
######## Volumes ########
|
||||
volumes:
|
||||
db:
|
||||
changedetection-data:
|
||||
db16:
|
||||
######## Networks ########
|
||||
networks:
|
||||
traefik:
|
||||
|
|
|
@ -1,16 +1,18 @@
|
|||
9to5linux.com::9to5Linux Weekly Roundup:
|
||||
apnic.net::Podcast
|
||||
apnic.net::Event Wrap
|
||||
astralcodexten.substack.com::Open Thread
|
||||
astralcodexten.substack.com::Book Review Contest
|
||||
augengeradeaus.net::Sicherheitshalber der Podcast
|
||||
axios.com::Axios on HBO
|
||||
axios.com::PGA
|
||||
axios.com::football
|
||||
axios.com::PGA
|
||||
computerbase.de::Adrenalin 2020 Edition
|
||||
computerbase.de::Adrenalin 2021 Edition
|
||||
computerbase.de::CB-Funk
|
||||
computerbase.de::CB-Funk-Podcast
|
||||
computerbase.de::Community-Umfrage
|
||||
computerbase.de::Community: Fotowettbewerb
|
||||
computerbase.de::Community-Umfrage
|
||||
computerbase.de::Elon Musk
|
||||
computerbase.de::Fotowettbewerb:
|
||||
computerbase.de::Fussball
|
||||
|
@ -18,94 +20,98 @@ computerbase.de::Fußball
|
|||
computerbase.de::Screenshot-Wettbewerb
|
||||
computerbase.de::Sonntagsfrage:
|
||||
computerbase.de::Twitter
|
||||
computerbase.de::wettbewerb
|
||||
computerbase.de::WM
|
||||
computerbase.de::Wochenrück- und Ausblick:
|
||||
computerbase.de::wettbewerb
|
||||
computerbase.de::Xbox Game Pass
|
||||
computerbase.de::GeForce
|
||||
facebook.com::Bridge returned error
|
||||
golem.de::(g+)
|
||||
golem.de::Anzeige
|
||||
golem.de::Aus dem Verlag:
|
||||
golem.de::Elon Musk
|
||||
golem.de::Fifa
|
||||
golem.de::Fussball
|
||||
golem.de::Fußball
|
||||
golem.de::(g+)
|
||||
golem.de::Golem Karrierewelt
|
||||
www.thedrive.com::Bunker Talk:
|
||||
golem.de::in aller Kürze
|
||||
golem.de::In eigener Sache
|
||||
golem.de::kurznews
|
||||
golem.de::Marvel
|
||||
golem.de::PODCAST BESSER WISSEN:
|
||||
golem.de::Podcast
|
||||
golem.de::PODCAST BESSER WISSEN:
|
||||
golem.de::Sonst noch was?
|
||||
golem.de::Star Trek:
|
||||
golem.de::Tech Talks:
|
||||
golem.de::Twitter
|
||||
golem.de::Wochenrückblick
|
||||
golem.de::in aller Kürze
|
||||
golem.de::kurznews
|
||||
hardwareluxx.de::Der Hardwareluxx-Webwatch:
|
||||
hardwareluxx.de::Die Artikel unserer Partner
|
||||
hardwareluxx.de::Unsere Artikel der letzten Woche
|
||||
heise.de::#TGIQF
|
||||
heise.de::#heiseshow
|
||||
hardwareluxx.de::Shopping Club
|
||||
hardwareluxx.de::KW
|
||||
heise.de::Anzeige
|
||||
heise.de::Auslegungssache
|
||||
heise.de::Bit-Rauschen
|
||||
heise.de::Bit-Rauschen, der Prozessor-Podcast
|
||||
heise.de::c't <webdev>
|
||||
heise.de::c’t-Webinar:
|
||||
heise.de::Desinfec
|
||||
heise.de::Die Bilder der Woche
|
||||
heise.de::Die Bilder der Woche (KW
|
||||
heise.de::Die Highlights bei
|
||||
heise.de::Die Produktwerker
|
||||
heise.de::Dienstag
|
||||
heise.de::Dienstag:
|
||||
heise.de::Die Produktwerker
|
||||
heise.de::Elon Musk
|
||||
heise.de::FIFA
|
||||
heise.de::Ferris Talk
|
||||
heise.de::FIFA
|
||||
heise.de::Freitag
|
||||
heise.de::Fußball-WM
|
||||
heise.de::Heise spielt
|
||||
heise.de::heise+
|
||||
heise.de::heise-Angebot:
|
||||
heise.de::heise Jobs IT Tag
|
||||
heise.de::Heise-Konferenz
|
||||
heise.de::heise meets
|
||||
heise.de::heise meets…
|
||||
heise.de::#heiseshow
|
||||
heise.de::heiseshow
|
||||
heise.de::Heise spielt
|
||||
heise.de::iX-Workshop
|
||||
heise.de::Kurz informiert:
|
||||
heise.de::Mac & i Extra:
|
||||
heise.de::Missing Link
|
||||
heise.de::Mittwoch
|
||||
heise.de::Montag
|
||||
heise.de::Die Bilder der Woche
|
||||
heise.de::Podcast
|
||||
heise.de::Podcast "Die Hupe"
|
||||
heise.de::Podcast "Die Produktwerker"
|
||||
heise.de::samstag
|
||||
heise.de::SoftwareArchitekTOUR
|
||||
heise.de::Sonderheft
|
||||
heise.de::TGIQF
|
||||
heise.de::sonntag
|
||||
heise.de::t 3003
|
||||
heise.de::Tech2go-Podcast:
|
||||
heise.de::TechStage
|
||||
heise.de::TechStage |
|
||||
heise.de::Twitter
|
||||
heise.de::WM 2022
|
||||
heise.de::Was war. Was wird.
|
||||
heise.de::Zugriff auf alle Inhalte von heise+
|
||||
heise.de::c't <webdev>
|
||||
heise.de::c’t-Webinar:
|
||||
heise.de::heise Jobs IT Tag
|
||||
heise.de::heise meets
|
||||
heise.de::heise meets…
|
||||
heise.de::heise+
|
||||
heise.de::heise-Angebot:
|
||||
heise.de::heiseshow
|
||||
heise.de::iX-Workshop
|
||||
heise.de::samstag
|
||||
heise.de::sonntag
|
||||
heise.de::t 3003
|
||||
heise.de::t Fotografie
|
||||
heise.de::t Fotografie-Wettbewerb
|
||||
heise.de::#TGIQF
|
||||
heise.de::TGIQF
|
||||
heise.de::t uplink
|
||||
heise.de::Twitter
|
||||
heise.de::t zockt
|
||||
heise.de::uplink
|
||||
heise.de::Was war. Was wird.
|
||||
heise.de::WM 2022
|
||||
heise.de::zockt
|
||||
heise.de::Zugriff auf alle Inhalte von heise+
|
||||
instagram.com::Bridge returned error
|
||||
ipspace.net::Built.fm
|
||||
ipspace.net::Podcast
|
||||
mdr.de::#MDRklärt:
|
||||
mdr.de::Schwimm-WM
|
||||
mdr.de::DSV
|
||||
mdr.de::Basketball
|
||||
mdr.de::Volleyball
|
||||
mdr.de::DFB
|
||||
mdr.de::DFB-Pokal
|
||||
mdr.de::Fussball
|
||||
|
@ -115,15 +121,15 @@ mdr.de::Leichtathletik:
|
|||
mdr.de::Link des Audios
|
||||
mdr.de::Link des Videos
|
||||
mdr.de::Livestream
|
||||
mdr.de::#MDRklärt:
|
||||
mdr.de::Para-WM
|
||||
mdr.de::Pferdesport:
|
||||
mdr.de::Podcast:
|
||||
mdr.de::Podcast "digital Leben"
|
||||
mdr.de::Podcast "digital Leben":
|
||||
mdr.de::Podcast:
|
||||
mdr.de::Podcastserie
|
||||
mdr.de::Schwimmen:
|
||||
mf-bridge::Bridge encountered an unexpected situation
|
||||
mf-bridge::Bridge returned error 401
|
||||
falseknees.tumblr.com::Kneesvember
|
||||
monkeyuser.com::AdLitteram
|
||||
netzpolitik.org::KW
|
||||
netzpolitik.org::NPP
|
||||
|
@ -142,10 +148,11 @@ planet3dnow.de::KiTTY
|
|||
planet3dnow.de::LibreOffice 7
|
||||
planet3dnow.de::MC Extractor
|
||||
planet3dnow.de::Media Player Classic
|
||||
planet3dnow.de::NVCleanstall v
|
||||
planet3dnow.de::Neue Downloads der KW
|
||||
planet3dnow.de::Notepad++
|
||||
planet3dnow.de::NVCleanstall v
|
||||
planet3dnow.de::Nvidia GeForce-Treiber
|
||||
planet3dnow.de::paint.net
|
||||
planet3dnow.de::PowerToys v
|
||||
planet3dnow.de::Prime95
|
||||
planet3dnow.de::Process Lasso
|
||||
|
@ -161,355 +168,16 @@ planet3dnow.de::Universal Media Server
|
|||
planet3dnow.de::WinRAR
|
||||
planet3dnow.de::WinSCP
|
||||
planet3dnow.de::ZenTimings
|
||||
planet3dnow.de::paint.net
|
||||
portuguesegeese.com::portuguesegeese.com
|
||||
reddit.com::UEFA
|
||||
stackoverflow.blog::Podcast
|
||||
stackoverflow.blog::The Overflow
|
||||
stadt-bremerhaven.de::(Werbung)
|
||||
stadt-bremerhaven.de::Basketball-WM
|
||||
stadt-bremerhaven.de::Bundesliga
|
||||
stadt-bremerhaven.de::Cloud-Gaming-Rückblick
|
||||
stadt-bremerhaven.de::DAZN
|
||||
stadt-bremerhaven.de::Disney+
|
||||
stadt-bremerhaven.de::Eishockey
|
||||
stadt-bremerhaven.de::Elon Musk
|
||||
stadt-bremerhaven.de::FIFA
|
||||
stadt-bremerhaven.de::FUSSBALL
|
||||
stadt-bremerhaven.de::Formel 1
|
||||
stadt-bremerhaven.de::Immer wieder sonntags KW
|
||||
stadt-bremerhaven.de::MagentaSport
|
||||
stadt-bremerhaven.de::Podcast
|
||||
stadt-bremerhaven.de::Rückblick
|
||||
stadt-bremerhaven.de::Sky Ticket
|
||||
stadt-bremerhaven.de::Twitter
|
||||
stadt-bremerhaven.de::WM 2022
|
||||
stadt-bremerhaven.de::eFootball
|
||||
sueddeutsche.de::Ajax
|
||||
sueddeutsche.de::DFB-
|
||||
sueddeutsche.de::St. Pauli
|
||||
sueddeutsche.de::Hoeneß:
|
||||
sueddeutsche.de::2. Liga:
|
||||
sueddeutsche.de::Schalke
|
||||
sueddeutsche.de::CB-Funk-Podcast
|
||||
sueddeutsche.de::Kinderfußball
|
||||
sueddeutsche.de::Podcast "Lanz & Precht"
|
||||
sueddeutsche.de::NBA:
|
||||
sueddeutsche.de::"Ich bin ein Star"
|
||||
sueddeutsche.de::"Tatort"
|
||||
sueddeutsche.de::-Spiel
|
||||
sueddeutsche.de::1. FC Kaiserslautern:
|
||||
sueddeutsche.de::1. FC Köln
|
||||
sueddeutsche.de::1. FC Nürnberg
|
||||
sueddeutsche.de::1. FC Union
|
||||
sueddeutsche.de::1860 München
|
||||
sueddeutsche.de::1:1
|
||||
sueddeutsche.de::2. Liga
|
||||
sueddeutsche.de::3. Liga
|
||||
sueddeutsche.de::ATP Finals
|
||||
sueddeutsche.de::ATP-
|
||||
sueddeutsche.de::Achtelfinale
|
||||
sueddeutsche.de::Afrika-Cup:
|
||||
sueddeutsche.de::Alonso:
|
||||
sueddeutsche.de::Alphonso Davies
|
||||
sueddeutsche.de::American Football:
|
||||
sueddeutsche.de::Amos Pieper
|
||||
sueddeutsche.de::Arminia Bielefeld:
|
||||
sueddeutsche.de::Athlet
|
||||
sueddeutsche.de::Australian Open
|
||||
sueddeutsche.de::Australian Open:
|
||||
sueddeutsche.de::Auswärtstor
|
||||
sueddeutsche.de::BVB
|
||||
sueddeutsche.de::Barça
|
||||
sueddeutsche.de::Baseball
|
||||
sueddeutsche.de::Basketball
|
||||
sueddeutsche.de::Basketball-WM
|
||||
sueddeutsche.de::Bayern
|
||||
sueddeutsche.de::Belenenses
|
||||
sueddeutsche.de::Berlinale
|
||||
sueddeutsche.de::Biathlon
|
||||
sueddeutsche.de::Boateng
|
||||
sueddeutsche.de::Bobfahr
|
||||
sueddeutsche.de::Borussia
|
||||
sueddeutsche.de::Borussia Dortmund
|
||||
sueddeutsche.de::Borussia Dortmund:
|
||||
sueddeutsche.de::Bundesliga
|
||||
sueddeutsche.de::Bundestrainer
|
||||
sueddeutsche.de::Carlos Alcaraz
|
||||
sueddeutsche.de::Champions League:
|
||||
sueddeutsche.de::Champions-League
|
||||
sueddeutsche.de::Chelsea
|
||||
sueddeutsche.de::Claudio Pizarro
|
||||
sueddeutsche.de::Claudio Pizarro:
|
||||
sueddeutsche.de::Conference League
|
||||
sueddeutsche.de::Conference-League
|
||||
sueddeutsche.de::DFB
|
||||
sueddeutsche.de::DFB-Elf
|
||||
sueddeutsche.de::DFB-Frauen:
|
||||
sueddeutsche.de::DFB-Pokal
|
||||
sueddeutsche.de::DFB:
|
||||
sueddeutsche.de::DFL
|
||||
sueddeutsche.de::DFL-Supercup
|
||||
sueddeutsche.de::Daniil Medwedew
|
||||
sueddeutsche.de::Darts
|
||||
sueddeutsche.de::Darts-WM:
|
||||
sueddeutsche.de::Davis Cup
|
||||
sueddeutsche.de::Derby
|
||||
sueddeutsche.de::Deutsche Fußball Liga
|
||||
sueddeutsche.de::Deutsche Nationalmannschaft
|
||||
sueddeutsche.de::Deutsche U21:
|
||||
sueddeutsche.de::Djokovic
|
||||
sueddeutsche.de::Dressur-Weltmeister
|
||||
sueddeutsche.de::Dritte Liga:
|
||||
sueddeutsche.de::Drittliga
|
||||
sueddeutsche.de::Dschungelcamp
|
||||
sueddeutsche.de::EM-Aus
|
||||
sueddeutsche.de::EM:
|
||||
sueddeutsche.de::ESC-Finale
|
||||
sueddeutsche.de::ESC-Vorentscheid
|
||||
sueddeutsche.de::Eintracht
|
||||
sueddeutsche.de::Eintracht Frankfurt
|
||||
sueddeutsche.de::Eisbären Berlin
|
||||
sueddeutsche.de::Eishockey
|
||||
sueddeutsche.de::Eishockey-WM:
|
||||
sueddeutsche.de::Eishockey:
|
||||
sueddeutsche.de::Eiskunstl
|
||||
sueddeutsche.de::Eisschnelllauf
|
||||
sueddeutsche.de::Elfmeter
|
||||
sueddeutsche.de::Emil Forsberg
|
||||
sueddeutsche.de::Englisches Nationalteam:
|
||||
sueddeutsche.de::Eröffnungsspiel
|
||||
sueddeutsche.de::Euroleague
|
||||
sueddeutsche.de::Europa League
|
||||
sueddeutsche.de::Europa-League
|
||||
sueddeutsche.de::Europameister
|
||||
sueddeutsche.de::Europapokal
|
||||
sueddeutsche.de::European Championships
|
||||
sueddeutsche.de::Eurovision Song Contest
|
||||
sueddeutsche.de::Eurovision Song Contest:
|
||||
sueddeutsche.de::FC Augsburg
|
||||
sueddeutsche.de::FC Barcelona
|
||||
sueddeutsche.de::FC Chelsea:
|
||||
sueddeutsche.de::FC Sevilla
|
||||
sueddeutsche.de::Fifa
|
||||
sueddeutsche.de::Fifa:
|
||||
sueddeutsche.de::Formel 1
|
||||
sueddeutsche.de::Frankfurt
|
||||
sueddeutsche.de::French Open
|
||||
sueddeutsche.de::Fussball
|
||||
sueddeutsche.de::Fußball in England:
|
||||
sueddeutsche.de::Fußball-EM
|
||||
sueddeutsche.de::Fußball-Verband
|
||||
sueddeutsche.de::Fußball-WM
|
||||
sueddeutsche.de::Fußball-Weltmeister
|
||||
sueddeutsche.de::Fußball-Weltmeister
|
||||
sueddeutsche.de::Fußball-Weltmeisterschaft
|
||||
sueddeutsche.de::Fußball:
|
||||
sueddeutsche.de::Fußballerinnen
|
||||
sueddeutsche.de::Fußballern
|
||||
sueddeutsche.de::Fußballtorwart
|
||||
sueddeutsche.de::Fußballverband
|
||||
sueddeutsche.de::Galopp
|
||||
sueddeutsche.de::Gerard López
|
||||
sueddeutsche.de::Gladbach
|
||||
sueddeutsche.de::Glasgow Rangers
|
||||
sueddeutsche.de::Golf:
|
||||
sueddeutsche.de::Guardiola
|
||||
sueddeutsche.de::HSV-Verteidiger
|
||||
sueddeutsche.de::Hamburger SV
|
||||
sueddeutsche.de::Handball-EM:
|
||||
sueddeutsche.de::Handball-WM
|
||||
sueddeutsche.de::Hannover 96:
|
||||
sueddeutsche.de::Heldenfußball
|
||||
sueddeutsche.de::Hertha BSC
|
||||
sueddeutsche.de::Hertha BSC:
|
||||
sueddeutsche.de::Hinspiel
|
||||
sueddeutsche.de::Hochspring
|
||||
sueddeutsche.de::Hockey
|
||||
sueddeutsche.de::Hockey-EM
|
||||
sueddeutsche.de::Hockey-WM
|
||||
sueddeutsche.de::Ibrahimović
|
||||
sueddeutsche.de::Infantino
|
||||
sueddeutsche.de::Inter Mailand
|
||||
sueddeutsche.de::Joachim Löw
|
||||
sueddeutsche.de::Jugendwort des Jahres
|
||||
sueddeutsche.de::Julian Nagelsmann
|
||||
sueddeutsche.de::Juve
|
||||
sueddeutsche.de::Kevin Trapp
|
||||
sueddeutsche.de::Klopp
|
||||
sueddeutsche.de::Klosterhalfen
|
||||
sueddeutsche.de::Kolumne
|
||||
sueddeutsche.de::Kroos
|
||||
sueddeutsche.de::LIV Tour
|
||||
sueddeutsche.de::La Boum:
|
||||
sueddeutsche.de::La Liga
|
||||
sueddeutsche.de::Lazio Rom
|
||||
sueddeutsche.de::Leichtathletik
|
||||
sueddeutsche.de::Leichtathletik
|
||||
sueddeutsche.de::Leichtathletik-WM
|
||||
sueddeutsche.de::Leichtathletik-WM:
|
||||
sueddeutsche.de::Leichtathletik-Weltmeisterschaft
|
||||
sueddeutsche.de::Leichtathletik:
|
||||
sueddeutsche.de::Leon Draisaitl
|
||||
sueddeutsche.de::Leverkusen
|
||||
sueddeutsche.de::Lewandowski
|
||||
sueddeutsche.de::Lewis Hamilton
|
||||
sueddeutsche.de::Linda Dallmann
|
||||
sueddeutsche.de::Los Angeles Lakers
|
||||
sueddeutsche.de::Länderspiel
|
||||
sueddeutsche.de::ManCity
|
||||
sueddeutsche.de::ManUnited
|
||||
sueddeutsche.de::Manchester City
|
||||
sueddeutsche.de::Manchester United
|
||||
sueddeutsche.de::Mancini
|
||||
sueddeutsche.de::Markus Weinzierl
|
||||
sueddeutsche.de::Mbappé
|
||||
sueddeutsche.de::Messi
|
||||
sueddeutsche.de::Miroslav Klose
|
||||
sueddeutsche.de::Monza
|
||||
sueddeutsche.de::Mourinho
|
||||
sueddeutsche.de::Musiala
|
||||
sueddeutsche.de::NBA
|
||||
sueddeutsche.de::NFL
|
||||
sueddeutsche.de::Nadal
|
||||
sueddeutsche.de::Nationalmannschaft
|
||||
sueddeutsche.de::Nationalspieler
|
||||
sueddeutsche.de::Nationalteam
|
||||
sueddeutsche.de::Nations League
|
||||
sueddeutsche.de::Netzkolumne
|
||||
sueddeutsche.de::Neujahrsspringen
|
||||
sueddeutsche.de::Neymar
|
||||
sueddeutsche.de::Niklas Süle:
|
||||
sueddeutsche.de::Nordische Ski-WM
|
||||
sueddeutsche.de::OSC Lille
|
||||
sueddeutsche.de::Olympia
|
||||
sueddeutsche.de::Olympia 2022:
|
||||
sueddeutsche.de::Olympia-Ticker:
|
||||
sueddeutsche.de::Olympia:
|
||||
sueddeutsche.de::Olympische Spiele:
|
||||
sueddeutsche.de::Olympische Winterspiele:
|
||||
sueddeutsche.de::Olympischen Spielen:
|
||||
sueddeutsche.de::PSV Eindhoven
|
||||
sueddeutsche.de::Paralympics:
|
||||
sueddeutsche.de::Paris Saint-Germain
|
||||
sueddeutsche.de::Pep Guardiola
|
||||
sueddeutsche.de::Pferdesport
|
||||
sueddeutsche.de::Playoffs
|
||||
sueddeutsche.de::Podcast-Tipps
|
||||
sueddeutsche.de::Podcasts-Tipps im
|
||||
sueddeutsche.de::Pokal-Sieg
|
||||
sueddeutsche.de::Pokalspiel
|
||||
sueddeutsche.de::Polizeiruf 110
|
||||
sueddeutsche.de::Prantls Blick:
|
||||
sueddeutsche.de::Premier
|
||||
sueddeutsche.de::Qualifikationsspiel
|
||||
sueddeutsche.de::RB Leipzig
|
||||
sueddeutsche.de::RB Leipzig:
|
||||
sueddeutsche.de::Raducanu
|
||||
sueddeutsche.de::Rangnick
|
||||
sueddeutsche.de::Real Madrid
|
||||
sueddeutsche.de::Reit-WM
|
||||
sueddeutsche.de::Reiten
|
||||
sueddeutsche.de::Relegation
|
||||
sueddeutsche.de::Rennrodl
|
||||
sueddeutsche.de::Robin Gosens
|
||||
sueddeutsche.de::Rodel-
|
||||
sueddeutsche.de::Rodeln:
|
||||
sueddeutsche.de::Ronaldo
|
||||
sueddeutsche.de::Rudern
|
||||
sueddeutsche.de::SC Freiburg
|
||||
sueddeutsche.de::ST. Pauli
|
||||
sueddeutsche.de::SZ-Audioreihe
|
||||
sueddeutsche.de::SZ-Kolumne "Bester Dinge":
|
||||
sueddeutsche.de::SZ-Kolumne "Mitten in ...":
|
||||
sueddeutsche.de::SZ-Plus-Abonnenten lesen auch
|
||||
sueddeutsche.de::SZ-Podcast
|
||||
sueddeutsche.de::SZ-Podcast "Und nun zum Sport":
|
||||
sueddeutsche.de::Schach-WM
|
||||
sueddeutsche.de::Schalke
|
||||
sueddeutsche.de::Schiedsrichter
|
||||
sueddeutsche.de::Schwimm-WM
|
||||
sueddeutsche.de::Schwimmen:
|
||||
sueddeutsche.de::Serien des Monats
|
||||
sueddeutsche.de::Ski alpin
|
||||
sueddeutsche.de::Ski alpin:
|
||||
sueddeutsche.de::Ski-WM
|
||||
sueddeutsche.de::Ski-Weltcup
|
||||
sueddeutsche.de::Ski-Weltverband
|
||||
sueddeutsche.de::Ski-nordisch-WM:
|
||||
sueddeutsche.de::Skilanglauf
|
||||
sueddeutsche.de::Skirenn
|
||||
sueddeutsche.de::Skispringen
|
||||
sueddeutsche.de::Slalomfahr
|
||||
sueddeutsche.de::Stanley Cup
|
||||
sueddeutsche.de::Stimmen zum Spiel
|
||||
sueddeutsche.de::Stürmer
|
||||
sueddeutsche.de::Super Bowl
|
||||
sueddeutsche.de::Super Bowl Sunday:
|
||||
sueddeutsche.de::Super League
|
||||
sueddeutsche.de::Supercup
|
||||
sueddeutsche.de::Supercup live
|
||||
sueddeutsche.de::TSG Hoffenheim
|
||||
sueddeutsche.de::Tabellenspitze
|
||||
sueddeutsche.de::Tatort München:
|
||||
sueddeutsche.de::Tatort aus
|
||||
sueddeutsche.de::Team-WM
|
||||
sueddeutsche.de::Teamspringen
|
||||
sueddeutsche.de::Tennis
|
||||
sueddeutsche.de::Tennis:
|
||||
sueddeutsche.de::Thomas Müller
|
||||
sueddeutsche.de::Three Lions:
|
||||
sueddeutsche.de::Timo Boll
|
||||
sueddeutsche.de::Tischtennis WM:
|
||||
sueddeutsche.de::Toni Kroos
|
||||
sueddeutsche.de::Tore
|
||||
sueddeutsche.de::Torhüter
|
||||
sueddeutsche.de::Tottenham
|
||||
sueddeutsche.de::Transfermarkt
|
||||
sueddeutsche.de::Trikots
|
||||
sueddeutsche.de::Tuchel
|
||||
sueddeutsche.de::Turn-WM
|
||||
sueddeutsche.de::Türkgücü München
|
||||
sueddeutsche.de::U21-Europameisterschaft
|
||||
sueddeutsche.de::US Open
|
||||
sueddeutsche.de::Ukrainisches Tagebuch
|
||||
sueddeutsche.de::Uli Hoeneß
|
||||
sueddeutsche.de::Union Berlin
|
||||
sueddeutsche.de::Urs Fischer
|
||||
sueddeutsche.de::VfB
|
||||
sueddeutsche.de::VfB Stuttgart
|
||||
sueddeutsche.de::VfL
|
||||
sueddeutsche.de::VfL Wolfsburg
|
||||
sueddeutsche.de::Vierschanzentournee
|
||||
sueddeutsche.de::Viertelfinal
|
||||
sueddeutsche.de::Viertelfinale
|
||||
sueddeutsche.de::Volleyball-WM:
|
||||
sueddeutsche.de::Vuskovic
|
||||
sueddeutsche.de::WM-
|
||||
sueddeutsche.de::WM-Kader
|
||||
sueddeutsche.de::WM-Qualifikation
|
||||
sueddeutsche.de::WM-Silber
|
||||
sueddeutsche.de::WM-Ticket
|
||||
sueddeutsche.de::WM-Titel
|
||||
sueddeutsche.de::WM:
|
||||
sueddeutsche.de::Weitspr
|
||||
sueddeutsche.de::Werder
|
||||
sueddeutsche.de::Wiegman
|
||||
sueddeutsche.de::Wimbledon
|
||||
sueddeutsche.de::Wintersport:
|
||||
sueddeutsche.de::Zlatan
|
||||
sueddeutsche.de::leute:
|
||||
sueddeutsche.de::quoted.
|
||||
sueddeutsche.de::torwart
|
||||
sueddeutsche.de::zweite Liga
|
||||
sueddeutsche.de::zweiten Liga
|
||||
sueddeutsche.de::ückenkemper
|
||||
tagesschau.de::11KM
|
||||
tagesschau.de::11KM-Podcast
|
||||
tagesschau.de::Achtelfinale
|
||||
tagesschau.de::Alpine-Super-Kombination:
|
||||
tagesschau.de::American Football:
|
||||
tagesschau.de::Auslandspodcast
|
||||
tagesschau.de::BVB
|
||||
tagesschau.de::Bahnrad
|
||||
tagesschau.de::Basketball
|
||||
tagesschau.de::Bayern München
|
||||
|
@ -518,18 +186,19 @@ tagesschau.de::Boateng
|
|||
tagesschau.de::Bremer SV
|
||||
tagesschau.de::Bundesliga
|
||||
tagesschau.de::Bundesliga:
|
||||
tagesschau.de::BVB
|
||||
tagesschau.de::Carlsen
|
||||
tagesschau.de::Champions League
|
||||
tagesschau.de::DFB
|
||||
tagesschau.de::DFB-Bundesgericht
|
||||
tagesschau.de::Darts-
|
||||
tagesschau.de::Darts-WM:
|
||||
tagesschau.de::DFB
|
||||
tagesschau.de::DFB-Bundesgericht
|
||||
tagesschau.de::Dressurreit
|
||||
tagesschau.de::Eintracht
|
||||
tagesschau.de::Eishockey:
|
||||
tagesschau.de::Eishockey-WM:
|
||||
tagesschau.de::EM:
|
||||
tagesschau.de::ESC-Finale
|
||||
tagesschau.de::Eintracht
|
||||
tagesschau.de::Eishockey-WM:
|
||||
tagesschau.de::Eishockey:
|
||||
tagesschau.de::European Championships
|
||||
tagesschau.de::Eurovision Song Contest
|
||||
tagesschau.de::Fashion Week
|
||||
|
@ -542,8 +211,8 @@ tagesschau.de::Fußball-Bundesliga
|
|||
tagesschau.de::Fußball-EM
|
||||
tagesschau.de::Gladbach
|
||||
tagesschau.de::Halbfinale
|
||||
tagesschau.de::Handball-EM:
|
||||
tagesschau.de::Handball:
|
||||
tagesschau.de::Handball-EM:
|
||||
tagesschau.de::Hertha BSC
|
||||
tagesschau.de::Hockey
|
||||
tagesschau.de::Hoffenheim
|
||||
|
@ -565,23 +234,23 @@ tagesschau.de::Neymar
|
|||
tagesschau.de::Nordische Kombination:
|
||||
tagesschau.de::Olympia-
|
||||
tagesschau.de::Olympia:
|
||||
tagesschau.de::Olympische Winterspiele:
|
||||
tagesschau.de::Olympischen Winterspiele:
|
||||
tagesschau.de::Olympische Winterspiele:
|
||||
tagesschau.de::Paralympics
|
||||
tagesschau.de::Podcast
|
||||
tagesschau.de::Podcast 11KM
|
||||
tagesschau.de::Profisport
|
||||
tagesschau.de::RKI meldet
|
||||
tagesschau.de::Remis
|
||||
tagesschau.de::Riesenslalom:
|
||||
tagesschau.de::RKI meldet
|
||||
tagesschau.de::Rodel-
|
||||
tagesschau.de::Schach-WM:
|
||||
tagesschau.de::Schalke
|
||||
tagesschau.de::Schwimm-EM
|
||||
tagesschau.de::Schwimm-WM:
|
||||
tagesschau.de::Ski Alpin:
|
||||
tagesschau.de::Ski-WM
|
||||
tagesschau.de::Skispring
|
||||
tagesschau.de::Ski-WM
|
||||
tagesschau.de::Sondersendung:
|
||||
tagesschau.de::Springreiter
|
||||
tagesschau.de::Sprintstaffel
|
||||
|
@ -596,20 +265,25 @@ tagesschau.de::Viererbob
|
|||
tagesschau.de::Vierschanzentournee
|
||||
tagesschau.de::Viertelfinale
|
||||
tagesschau.de::Volleyball-WM
|
||||
tagesschau.de::WM-Auftakt
|
||||
tagesschau.de::WM-Finale:
|
||||
tagesschau.de::WM-Gold
|
||||
tagesschau.de::WM-Qualifikation
|
||||
tagesschau.de::WM-Viertelfinale
|
||||
tagesschau.de::Wasserspringen:
|
||||
tagesschau.de::Weitsprung
|
||||
tagesschau.de::Weltcup
|
||||
tagesschau.de::Weltcup-Sieg
|
||||
tagesschau.de::Weltmeister
|
||||
tagesschau.de::Werders
|
||||
tagesschau.de::WM-Auftakt
|
||||
tagesschau.de::WM-Finale:
|
||||
tagesschau.de::WM-Gold
|
||||
tagesschau.de::WM-Qualifikation
|
||||
tagesschau.de::WM-Viertelfinale
|
||||
tagesschau.de::Zukunftspodcast
|
||||
tagesschau.de::Zweierbob:
|
||||
theguardian.com::Guardiola
|
||||
theguardian.com::Manchester United
|
||||
theycantalk.com::Tinyview
|
||||
toonhole.com::Bernai
|
||||
www.army-technology.com::who are the leaders
|
||||
www.army-technology.com::files patent
|
||||
www.army-technology.com::sees highest patent filings
|
||||
www.army-technology.com::theme innovation strategy
|
||||
www.army-technology.com::gets grant
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
TwitterBridge
|
||||
WikipediaBridge
|
||||
YoutubeBridge
|
||||
FacebookBridge
|
||||
InstagramBridge
|
|
@ -0,0 +1,43 @@
|
|||
version: '3'
|
||||
services:
|
||||
munin:
|
||||
container_name: "munin-master"
|
||||
image: registry.mgrote.net/munin-server:latest
|
||||
restart: always
|
||||
environment:
|
||||
MAILCONTACT: michael.grote@posteo.de
|
||||
MAILSERVER: mail-relay
|
||||
MAILPORT: 25
|
||||
MAILFROM: munin@mgrote.net
|
||||
MAILUSER: munin@mgrote.net
|
||||
MAILNAME: Munin
|
||||
MAILDOMAIN: mgrote.net
|
||||
TZ: Europe/Berlin
|
||||
CRONDELAY: 5
|
||||
NODES: |
|
||||
fileserver3.mgrote.net:fileserver3.mgrote.net
|
||||
ansible2.mgrote.net:ansible2.mgrote.net
|
||||
pve5.mgrote.net:pve5.mgrote.net
|
||||
forgejo.mgrote.net:forgejo.mgrote.net
|
||||
docker10.mgrote.net:docker10.mgrote.net
|
||||
pbs.mgrote.net:pbs.mgrote.net
|
||||
blocky.mgrote.net:blocky.mgrote.net
|
||||
ldap.mgrote.net:ldap.mgrote.net
|
||||
# z.B.
|
||||
# computer-test.mgrote.net.test:192.68.2.4
|
||||
# computer.mgrote.net:computer.mgrote.net
|
||||
volumes:
|
||||
- db:/var/lib/munin
|
||||
- logs:/var/log/munin
|
||||
- cache:/var/cache/munin
|
||||
ports:
|
||||
- 1234:80
|
||||
|
||||
volumes:
|
||||
db:
|
||||
logs:
|
||||
cache:
|
||||
|
||||
networks:
|
||||
mail-relay:
|
||||
external: true
|
|
@ -3,7 +3,7 @@ services:
|
|||
######## navidrome-mg ########
|
||||
navidrome-mg:
|
||||
container_name: "navidrome-mg"
|
||||
image: deluan/navidrome:latest
|
||||
image: "deluan/navidrome:0.52.5"
|
||||
restart: always
|
||||
environment:
|
||||
ND_LOGLEVEL: info
|
||||
|
@ -35,8 +35,6 @@ services:
|
|||
traefik.http.routers.navidrome-mg.tls.certresolver: resolver_letsencrypt
|
||||
traefik.http.routers.navidrome-mg.entrypoints: entry_https
|
||||
traefik.http.services.navidrome-mg.loadbalancer.server.port: 4533
|
||||
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
ports:
|
||||
- "4533:4533"
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@ version: '3.3'
|
|||
services:
|
||||
######## Datenbank ########
|
||||
nextcloud-db:
|
||||
image: mariadb:10
|
||||
image: "mariadb:11.3.2"
|
||||
container_name: nextcloud-db
|
||||
command: --transaction-isolation=READ-COMMITTED --log-bin=ROW --innodb_read_only_compressed=OFF
|
||||
restart: unless-stopped
|
||||
|
@ -11,59 +11,75 @@ services:
|
|||
- /etc/timezone:/etc/timezone:ro
|
||||
- db:/var/lib/mysql
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: {{ lookup('keepass', 'nextcloud_mysql_root_password', 'password') }}
|
||||
MYSQL_PASSWORD: {{ lookup('keepass', 'nextcloud_mysql_password', 'password') }}
|
||||
MYSQL_ROOT_PASSWORD: "{{ lookup('keepass', 'nextcloud_mysql_root_password', 'password') }}"
|
||||
MYSQL_PASSWORD: "{{ lookup('keepass', 'nextcloud_mysql_password', 'password') }}"
|
||||
MYSQL_DATABASE: nextcloud
|
||||
MYSQL_USER: nextcloud
|
||||
MYSQL_INITDB_SKIP_TZINFO: 1
|
||||
networks:
|
||||
- intern
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
healthcheck:
|
||||
interval: 30s
|
||||
retries: 3
|
||||
test:
|
||||
[
|
||||
"CMD",
|
||||
"healthcheck.sh",
|
||||
"--su-mysql",
|
||||
"--connect"
|
||||
]
|
||||
timeout: 30s
|
||||
|
||||
# Error
|
||||
## [ERROR] Incorrect definition of table mysql.column_stats: expected column 'histogram' at position 10 to have type longblob, found type varbinary(255).
|
||||
## [ERROR] Incorrect definition of table mysql.column_stats: expected column 'hist_type' at position 9 to have type enum('SINGLE_PREC_HB','DOUBLE_PREC_HB','JSON_HB'), found type enum('SINGLE_PREC_HB','DOUBLE_PREC_HB').
|
||||
# Fix
|
||||
## docker exec nextcloud-db mysql nextcloud -p<MySQL-Root-Pw> -e "ALTER TABLE mysql.column_stats MODIFY histogram longblob;"
|
||||
## docker exec nextcloud-db mysql nextcloud -p<MySQL-Root-Pw> -e "ALTER TABLE mysql.column_stats MODIFY hist_type enum('SINGLE_PREC_HB','DOUBLE_PREC_HB','JSON_HB');"
|
||||
|
||||
######## Redis ########
|
||||
nextcloud-redis:
|
||||
image: redis:7-alpine
|
||||
image: "redis:7.2.4"
|
||||
container_name: nextcloud-redis
|
||||
hostname: nextcloud-redis
|
||||
networks:
|
||||
- intern
|
||||
restart: unless-stopped
|
||||
command: redis-server --requirepass {{ lookup('keepass', 'nextcloud_redis_host_password', 'password') }}
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
command: "redis-server --requirepass {{ lookup('keepass', 'nextcloud_redis_host_password', 'password') }}"
|
||||
healthcheck:
|
||||
test: ["CMD", "redis-cli", "--pass", "{{ lookup('keepass', 'nextcloud_redis_host_password', 'password') }}", "--no-auth-warning", "ping"]
|
||||
interval: 5s
|
||||
timeout: 2s
|
||||
retries: 3
|
||||
|
||||
######## cron ########
|
||||
nextcloud-cron:
|
||||
container_name: nextcloud-cron
|
||||
image: registry.mgrote.net/nextcloud-cronjob:master
|
||||
image: "registry.mgrote.net/nextcloud-cronjob:latest"
|
||||
restart: unless-stopped
|
||||
network_mode: none
|
||||
depends_on:
|
||||
- nextcloud-app
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
environment:
|
||||
NEXTCLOUD_CONTAINER_NAME: nextcloud-app
|
||||
NEXTCLOUD_CRON_MINUTE_INTERVAL: 1
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
|
||||
######## Nextcloud ########
|
||||
nextcloud-app:
|
||||
image: nextcloud:27
|
||||
image: "nextcloud:29.0.0"
|
||||
container_name: nextcloud-app
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- nextcloud-db
|
||||
- nextcloud-redis
|
||||
- nextcloud-cron
|
||||
environment:
|
||||
REDIS_HOST: nextcloud-redis
|
||||
REDIS_HOST_PASSWORD: {{ lookup('keepass', 'nextcloud_redis_host_password', 'password') }}
|
||||
REDIS_HOST_PASSWORD: "{{ lookup('keepass', 'nextcloud_redis_host_password', 'password') }}"
|
||||
MYSQL_DATABASE: nextcloud
|
||||
MYSQL_USER: nextcloud
|
||||
MYSQL_PASSWORD: {{ lookup('keepass', 'nextcloud_mysql_password', 'password') }}
|
||||
MYSQL_PASSWORD: "{{ lookup('keepass', 'nextcloud_mysql_password', 'password') }}"
|
||||
MYSQL_HOST: nextcloud-db
|
||||
NEXTCLOUD_TRUSTED_DOMAINS: "nextcloud.mgrote.net"
|
||||
SMTP_HOST: mail-relay
|
||||
|
@ -71,27 +87,28 @@ services:
|
|||
SMTP_PORT: 25
|
||||
#SMTP_AUTHTYPE: LOGIN
|
||||
SMTP_NAME: info@mgrote.net
|
||||
#SMTP_PASSWORD: {{ lookup('keepass', 'strato_smtp_password', 'password') }}
|
||||
#SMTP_PASSWORD: "{{ lookup('keepass', 'strato_smtp_password', 'password') }}"
|
||||
MAIL_FROM_ADDRESS: info@mgrote.net
|
||||
PHP_MEMORY_LIMIT: 1024M
|
||||
PHP_UPLOAD_LIMIT: 10G
|
||||
APACHE_DISABLE_REWRITE_IP: 1
|
||||
TRUSTED_PROXIES: "192.168.48.0/24" # Subnetz in dem sich traefik befindet
|
||||
NEXTCLOUD_UPLOAD_LIMIT: 10G
|
||||
NEXTCLOUD_MAX_TIME: 3600
|
||||
APACHE_BODY_LIMIT: 0 # unlimited, https://github.com/nextcloud/docker/issues/1796
|
||||
volumes:
|
||||
- app:/var/www/html
|
||||
- data:/var/www/html/data
|
||||
networks:
|
||||
- intern
|
||||
# ports:
|
||||
# - 80:80
|
||||
networks:
|
||||
- intern
|
||||
- traefik
|
||||
- mail-relay
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "--insecure", "http://localhost:80"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
com.centurylinklabs.watchtower.depends-on: nextcloud-redis,nextcloud-db
|
||||
|
||||
traefik.http.routers.nextcloud.rule: Host(`nextcloud.mgrote.net`)
|
||||
traefik.enable: true
|
||||
traefik.http.routers.nextcloud.tls: true
|
||||
|
@ -126,3 +143,6 @@ volumes:
|
|||
######## Doku ########
|
||||
# Telefonregion
|
||||
# docker exec --user www-data nextcloud-app php occ config:system:set default_phone_region --value="DE"
|
||||
# https://help.nextcloud.com/t/nextcloud-wont-load-any-mixed-content/13565/3
|
||||
# docker exec --user www-data nextcloud-app php occ config:system:set overwriteprotocol --value="https"
|
||||
# docker exec --user www-data nextcloud-app php occ config:system:set overwrite.cli.url --value="http://nextcloud.mgrote.net"
|
||||
|
|
|
@ -3,7 +3,7 @@ services:
|
|||
oci-registry:
|
||||
restart: always
|
||||
container_name: oci-registry
|
||||
image: registry:2
|
||||
image: "registry:2.8.3"
|
||||
volumes:
|
||||
- oci:/var/lib/registry
|
||||
- ./htpasswd:/auth/htpasswd
|
||||
|
@ -11,15 +11,25 @@ services:
|
|||
- traefik
|
||||
- intern
|
||||
depends_on:
|
||||
- oci-registry-ui
|
||||
- oci-registry-redis
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost:5000/v2/"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
environment:
|
||||
TZ: Europe/Berlin
|
||||
REGISTRY_AUTH: none
|
||||
REGISTRY_REDIS_ADDR: oci-registry-redis:6379
|
||||
REGISTRY_REDIS_PASSWORD: {{ lookup('keepass', 'oci-registry-redis-pw', 'password') }}
|
||||
REGISTRY_REDIS_PASSWORD: "{{ lookup('keepass', 'oci-registry-redis-pw', 'password') }}"
|
||||
REGISTRY_STORAGE_DELETE_ENABLED: true
|
||||
REGISTRY_CATALOG_MAXENTRIES: 100000 # https://github.com/Joxit/docker-registry-ui/issues/306
|
||||
# https://joxit.dev/docker-registry-ui/#using-cors
|
||||
REGISTRY_HTTP_HEADERS_Access-Control-Allow-Origin: '[https://registry.mgrote.net/ui/]'
|
||||
REGISTRY_HTTP_HEADERS_Access-Control-Allow-Methods: '[HEAD,GET,OPTIONS,DELETE]'
|
||||
REGISTRY_HTTP_HEADERS_Access-Control-Allow-Credentials: '[true]'
|
||||
REGISTRY_HTTP_HEADERS_Access-Control-Allow-Headers: '[Authorization,Accept,Cache-Control]'
|
||||
REGISTRY_HTTP_HEADERS_Access-Control-Expose-Headers: '[Docker-Content-Digest]'
|
||||
labels:
|
||||
traefik.http.routers.registry.rule: Host(`registry.mgrote.net`)
|
||||
traefik.enable: true
|
||||
|
@ -28,15 +38,12 @@ services:
|
|||
traefik.http.routers.registry.entrypoints: entry_https
|
||||
traefik.http.services.registry.loadbalancer.server.port: 5000
|
||||
|
||||
traefik.http.routers.registry.middlewares: registry-ipwhitelist
|
||||
traefik.http.routers.registry.middlewares: registry-ipallowlist
|
||||
|
||||
traefik.http.middlewares.registry-ipwhitelist.ipwhitelist.sourcerange: 192.168.2.0/24,10.25.25.0/24,192.168.48.0/24 # .48. ist Docker
|
||||
traefik.http.middlewares.registry-ipwhitelist.ipwhitelist.ipstrategy.depth: 0 # https://doc.traefik.io/traefik/middlewares/http/ipwhitelist/#ipstrategydepth
|
||||
traefik.http.middlewares.registry-ipallowlist.ipallowlist.sourcerange: 192.168.2.0/24,10.25.25.0/24,192.168.48.0/24,172.18.0.0/16 # .48. ist Docker
|
||||
traefik.http.middlewares.registry-ipallowlist.ipallowlist.ipstrategy.depth: 0 # https://doc.traefik.io/traefik/middlewares/http/ipallowlist/#ipstrategydepth
|
||||
|
||||
com.centurylinklabs.watchtower.depends-on: oci-registry-redis
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
|
||||
# registry aufräumen: docker exec -it oci-registry /bin/registry garbage-collect [--dry-run] --delete-untagged=true /etc/docker/registry/config.yml
|
||||
# registry aufräumen: docker exec -it oci-registry /bin/registry garbage-collect --delete-untagged=true /etc/docker/registry/config.yml
|
||||
|
||||
# testen mit:
|
||||
# docker pull ubuntu
|
||||
|
@ -45,21 +52,24 @@ services:
|
|||
# docker pull registry.mgrote.net/myfirstimage
|
||||
|
||||
oci-registry-redis:
|
||||
image: redis:7
|
||||
image: "redis:7.2.4"
|
||||
container_name: oci-registry-redis
|
||||
networks:
|
||||
- intern
|
||||
restart: always
|
||||
environment:
|
||||
REDIS_PASSWORD: {{ lookup('keepass', 'oci-registry-redis-pw', 'password') }}
|
||||
REDIS_PASSWORD: "{{ lookup('keepass', 'oci-registry-redis-pw', 'password') }}"
|
||||
MAXMEMORY POLICY: allkeys-lru
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
healthcheck:
|
||||
test: ["CMD", "redis-cli", "ping"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
|
||||
oci-registry-ui:
|
||||
restart: always
|
||||
# url: registry.mgrote.net/ui/index.html
|
||||
image: joxit/docker-registry-ui:latest
|
||||
image: "joxit/docker-registry-ui:2.5.7"
|
||||
container_name: oci-registry-ui
|
||||
environment:
|
||||
DELETE_IMAGES: true
|
||||
|
@ -67,12 +77,20 @@ services:
|
|||
NGINX_PROXY_PASS_URL: http://oci-registry:5000
|
||||
SHOW_CONTENT_DIGEST: true # https://github.com/Joxit/docker-registry-ui/issues/297
|
||||
SHOW_CATALOG_NB_TAGS: true
|
||||
PULL_URL: registry.mgrote.net
|
||||
depends_on:
|
||||
- oci-registry
|
||||
networks:
|
||||
- traefik
|
||||
- intern
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://127.0.0.1"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
labels:
|
||||
traefik.http.routers.registry-ui.rule: Host(`registry.mgrote.net`)&&PathPrefix(`/ui`) # mache unter /ui erreichbar, damit wird demPfad dieser Prefix hinzugefügt, die Anwendung "hört" dort abrer nicht
|
||||
traefik.http.routers.registry-ui.middlewares: registry-ui-strip-prefix,registry-ui-ipwhitelist # also entferne den Prefix danach wieder
|
||||
traefik.http.routers.registry-ui.middlewares: registry-ui-strip-prefix,registry-ui-ipallowlist # also entferne den Prefix danach wieder
|
||||
traefik.http.middlewares.registry-ui-strip-prefix.stripprefix.prefixes: /ui # hier ist die Middleware definiert
|
||||
traefik.enable: true
|
||||
traefik.http.routers.registry-ui.tls: true
|
||||
|
@ -80,13 +98,8 @@ services:
|
|||
traefik.http.routers.registry-ui.entrypoints: entry_https
|
||||
traefik.http.services.registry-ui.loadbalancer.server.port: 80
|
||||
|
||||
traefik.http.middlewares.registry-ui-ipwhitelist.ipwhitelist.sourcerange: 192.168.2.0/24,10.25.25.0/24,192.168.48.0/24 # .48. ist Docker
|
||||
traefik.http.middlewares.registry-ui-ipwhitelist.ipwhitelist.ipstrategy.depth: 0 # https://doc.traefik.io/traefik/middlewares/http/ipwhitelist/#ipstrategydepth
|
||||
|
||||
|
||||
com.centurylinklabs.watchtower.depends-on: oci-registry-redis,oci-registry
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
|
||||
traefik.http.middlewares.registry-ui-ipallowlist.ipallowlist.sourcerange: 192.168.2.0/24,10.25.25.0/24 # .48. ist Docker
|
||||
traefik.http.middlewares.registry-ui-ipallowlist.ipallowlist.ipstrategy.depth: 0 # https://doc.traefik.io/traefik/middlewares/http/ipallowlist/#ipstrategydepth
|
||||
|
||||
######## Networks ########
|
||||
networks:
|
||||
|
|
|
@ -3,7 +3,7 @@ services:
|
|||
routeros-config-export:
|
||||
container_name: routeros-config-export
|
||||
restart: always
|
||||
image: registry.mgrote.net/oxidized-selfmade:master
|
||||
image: "registry.mgrote.net/routeros-config-export:latest"
|
||||
volumes:
|
||||
- ./key_rb5009:/key_rb5009:ro
|
||||
- ./key_hex:/key_hex:ro
|
||||
|
@ -11,11 +11,11 @@ services:
|
|||
- ./deploy_token:/deploy_token:ro
|
||||
environment:
|
||||
DEVICES: |-
|
||||
rb5009.grote.lan,routeros-config-backup,/key_rb5009
|
||||
hex.grote.lan,routeros-config-backup,/key_hex
|
||||
crs305.grote.lan,routeros-config-backup,/key_crs305
|
||||
rb5009.mgrote.net,routeros-config-backup,/key_rb5009
|
||||
hex.mgrote.net,routeros-config-backup,/key_hex
|
||||
crs305.mgrote.net,routeros-config-backup,/key_crs305
|
||||
GIT_REPO_BRANCH: "master"
|
||||
GIT_REPO_URL: "ssh://gitea@gitea.grote.lan:2222/mg/routeros-configs.git"
|
||||
GIT_REPO_URL: "ssh://gitea@forgejo.mgrote.net:2222/mg/routeros-configs.git"
|
||||
GIT_REPO_DEPLOY_KEY: "/deploy_token"
|
||||
GIT_USERNAME: oxidized-selfmade
|
||||
GIT_USER_MAIL: michael.grote@posteo.de
|
||||
|
|
|
@ -2,8 +2,8 @@ version: '3'
|
|||
services:
|
||||
######## traefik ########
|
||||
traefik:
|
||||
container_name: "traefik"
|
||||
image: traefik:latest
|
||||
container_name: traefik
|
||||
image: "traefik:v3.0.0"
|
||||
restart: always
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
|
@ -19,21 +19,48 @@ services:
|
|||
- "2222:2222" # SSH
|
||||
environment:
|
||||
TZ: Europe/Berlin
|
||||
healthcheck:
|
||||
test: ["CMD", "traefik", "healthcheck", "--ping"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
|
||||
######## nforwardauth ########
|
||||
nforwardauth:
|
||||
restart: always
|
||||
image: "nosduco/nforwardauth:v1.4.0"
|
||||
container_name: traefik-nforwardauth
|
||||
environment:
|
||||
TOKEN_SECRET: "{{ lookup('keepass', 'nforwardauth_token_secret', 'password') }}"
|
||||
AUTH_HOST: auth.mgrote.net
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
# hier sind gemeinsame middlewares defniert und zu einer chain zusammengefasst
|
||||
# CAVE: die Reihenfolge innerhalb von Chains/von Middlewares ist wichtig
|
||||
# Aufbau: traefik.http.middlewares.<NAME>.chain.middlewares: middleware1,middleware2,middleware3
|
||||
# diese kann dann direkt eingebunden werden:
|
||||
# Beispiel: XXXXX
|
||||
# beim Einsatz von nforwardauth:
|
||||
# Beispiel: YYYYY
|
||||
traefik.enable: true
|
||||
traefik.http.routers.nforwardauth.rule: Host(`auth.mgrote.net`)
|
||||
|
||||
traefik.http.middlewares.nforwardauth.forwardauth.address: http://nforwardauth:3000
|
||||
|
||||
traefik.http.services.nforwardauth.loadbalancer.server.port: 3000
|
||||
traefik.http.routers.nforwardauth.tls: true
|
||||
traefik.http.routers.nforwardauth.tls.certresolver: resolver_letsencrypt
|
||||
traefik.http.routers.nforwardauth.entrypoints: entry_https
|
||||
volumes:
|
||||
- "./passwd:/passwd:ro" # Mount local passwd file at /passwd as read only
|
||||
networks:
|
||||
- traefik
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "--quiet", "--spider", "--tries=1", "http://127.0.0.1:3000/login"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
|
||||
######## Networks ########
|
||||
networks:
|
||||
traefik:
|
||||
external: true
|
||||
|
||||
######## Volumes ########
|
||||
volumes:
|
||||
acme_data:
|
||||
|
||||
|
||||
# passwd
|
||||
# echo "<user>:$(mkpasswd -m sha-512 <password>)"
|
||||
|
|
|
@ -2,13 +2,6 @@
|
|||
http:
|
||||
###### router #####
|
||||
routers:
|
||||
router_dokuwiki:
|
||||
rule: "Host(`dokuwiki.mgrote.net`,`wiki.mgrote.net`)"
|
||||
service: "service_dokuwiki"
|
||||
entrypoints:
|
||||
- entry_https
|
||||
tls:
|
||||
certresolver: resolver_letsencrypt
|
||||
router_gitea:
|
||||
rule: "Host(`git.mgrote.net`)"
|
||||
service: "service_gitea"
|
||||
|
@ -18,11 +11,7 @@ http:
|
|||
certresolver: resolver_letsencrypt
|
||||
###### services #####
|
||||
services:
|
||||
service_dokuwiki:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: "http://dokuwiki2.grote.lan/"
|
||||
service_gitea:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: "http://gitea.grote.lan:3000/"
|
||||
- url: "http://forgejo.mgrote.net:3000/"
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
{{ lookup('keepass', 'nforwardauth-mg-hash', 'password') }}
|
|
@ -31,8 +31,16 @@ certificatesResolvers:
|
|||
tlsChallenge: true
|
||||
|
||||
log:
|
||||
level: DEBUG
|
||||
level: INFO
|
||||
|
||||
api:
|
||||
insecure: true
|
||||
dashboard: true # unter Port 8081 erreichbar
|
||||
|
||||
ping: {} # für healthcheck
|
||||
|
||||
#experimental:
|
||||
# plugins:
|
||||
# ldapAuth:
|
||||
# moduleName: "github.com/wiltonsr/ldapAuth"
|
||||
# version: "v0.1.4"
|
||||
|
|
|
@ -2,14 +2,14 @@
|
|||
version: "2.1"
|
||||
services:
|
||||
unifi-network-application:
|
||||
image: lscr.io/linuxserver/unifi-network-application:latest
|
||||
image: "lscr.io/linuxserver/unifi-network-application:8.0.28-ls27"
|
||||
container_name: unifi-network-application
|
||||
environment:
|
||||
PUID: 1000
|
||||
PGID: 1000
|
||||
TZ: Etc/UTC
|
||||
MONGO_USER: unifiuser
|
||||
MONGO_PASS: {{ lookup('keepass', 'unifi-mongodb-pass', 'password') }}
|
||||
MONGO_PASS: "{{ lookup('keepass', 'unifi-mongodb-pass', 'password') }}"
|
||||
MONGO_HOST: unifi-db
|
||||
MONGO_PORT: 27017
|
||||
MONGO_DBNAME: unifidb
|
||||
|
@ -28,29 +28,37 @@ services:
|
|||
- 6789:6789 #optional
|
||||
- 5514:5514/udp #optional
|
||||
restart: always
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: false
|
||||
com.centurylinklabs.watchtower.monitor-only: true
|
||||
com.centurylinklabs.watchtower.depends-on: unifi-db
|
||||
networks:
|
||||
- mail-relay
|
||||
- unifi-internal
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "--insecure", "https://localhost:8443"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
depends_on:
|
||||
- unifi-db
|
||||
|
||||
unifi-db:
|
||||
# Starte Container OHNE init-script
|
||||
# IN Container
|
||||
# 1. mongo
|
||||
# In Container
|
||||
# 1. mongosh
|
||||
# 2. db.getSiblingDB("unifidb").createUser({user: "unifiuser", pwd: "GEHEIM", roles: [{role: "dbOwner", db: "unifidb"}, {role: "dbOwner", db: "unifidb_stat"}]});
|
||||
# https://discourse.linuxserver.io/t/cant-connect-to-mongodb-for-unifi-network-application/8166
|
||||
image: docker.io/mongo:4
|
||||
image: "docker.io/mongo:7.0.9"
|
||||
container_name: unifi-db
|
||||
volumes:
|
||||
- db-data:/data/db
|
||||
restart: always
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
environment:
|
||||
MARIADB_AUTO_UPGRADE: "1"
|
||||
networks:
|
||||
- unifi-internal
|
||||
healthcheck:
|
||||
test: ["CMD", "mongosh", "--eval", "db.stats().ok"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
|
||||
######## Volumes ########
|
||||
volumes:
|
||||
|
|
|
@ -1,42 +0,0 @@
|
|||
version: "3"
|
||||
services:
|
||||
watchtower:
|
||||
restart: always
|
||||
container_name: watchtower
|
||||
image: containrrr/watchtower
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
environment:
|
||||
TZ: Europe/Berlin
|
||||
WATCHTOWER_CLEANUP: true
|
||||
WATCHTOWER_INCLUDE_RESTARTING: true
|
||||
WATCHTOWER_INCLUDE_STOPPED: true
|
||||
WATCHTOWER_REVIVE_STOPPED: false
|
||||
WATCHTOWER_SCHEDULE: "0 20 3 * * *" # jeden Tag um 03:20
|
||||
WATCHTOWER_LABEL_ENABLE: true
|
||||
WATCHTOWER_NOTIFICATIONS: email
|
||||
WATCHTOWER_NOTIFICATION_EMAIL_FROM: info@mgrote.net
|
||||
WATCHTOWER_NOTIFICATION_EMAIL_TO: info@mgrote.net
|
||||
WATCHTOWER_NOTIFICATION_EMAIL_SERVER: mail-relay # "container_name" des Relays
|
||||
# WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PORT: 25 # nicht benötigt, nur als Referenz stehen gelassen
|
||||
# WATCHTOWER_NOTIFICATION_EMAIL_SERVER_USER: "" # nicht benötigt, nur als Referenz stehen gelassen
|
||||
# WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PASSWORD: "" # nicht benötigt, nur als Referenz stehen gelassen
|
||||
WATCHTOWER_NOTIFICATION_EMAIL_DELAY: 2
|
||||
WATCHTOWER_NO_STARTUP_MESSAGE: true
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
networks:
|
||||
- mail-relay # binde externe Netzwerk an Container
|
||||
|
||||
# monitore diesen Container nur
|
||||
# labels:
|
||||
# com.centurylinklabs.watchtower.monitor-only: true
|
||||
# dieser container hängt von x ab
|
||||
# com.centurylinklabs.watchtower.depends-on: mf-db
|
||||
# aktualisiere container
|
||||
# com.centurylinklabs.watchtower.enable: true
|
||||
|
||||
######## Networks ########
|
||||
networks:
|
||||
mail-relay: # damit das mail-relaay im anderen Container erreicht werden kann
|
||||
external: true
|
|
@ -1,25 +0,0 @@
|
|||
version: '3'
|
||||
services:
|
||||
# here it works as expected
|
||||
whoami:
|
||||
image: traefik/whoami
|
||||
container_name: whoami
|
||||
restart: always
|
||||
networks:
|
||||
- traefik
|
||||
labels:
|
||||
traefik.http.routers.whoami.rule: Host(`whoami.mgrote.net`)
|
||||
traefik.http.routers.whoami.middlewares: whoami-ipwhitelist
|
||||
|
||||
traefik.http.middlewares.whoami-ipwhitelist.ipwhitelist.sourcerange: 192.168.2.0/24,10.25.25.0/24,192.168.48.0/24 # .48. ist Docker
|
||||
|
||||
traefik.http.middlewares.whoami-ipwhitelist.ipwhitelist.ipstrategy.depth: 0 # https://doc.traefik.io/traefik/middlewares/http/ipwhitelist/#ipstrategydepth
|
||||
traefik.enable: true
|
||||
traefik.http.routers.whoami.tls: true
|
||||
traefik.http.routers.whoami.tls.certresolver: resolver_letsencrypt
|
||||
traefik.http.routers.whoami.entrypoints: entry_https
|
||||
traefik.http.services.whoami.loadbalancer.server.port: 80
|
||||
|
||||
networks:
|
||||
traefik:
|
||||
external: true
|
|
@ -0,0 +1,34 @@
|
|||
version: '3'
|
||||
services:
|
||||
wiki-webserver:
|
||||
container_name: wiki-webserver
|
||||
image: "registry.mgrote.net/httpd:latest"
|
||||
restart: always
|
||||
networks:
|
||||
- traefik
|
||||
ports:
|
||||
- 8087:80
|
||||
volumes:
|
||||
- /docker/wiki/site:/usr/local/apache2/htdocs/
|
||||
# /docker/wiki/site ist ein lokales Verzeichnis auf docker10
|
||||
# dieser Verzeichnis wird direkt in der wiki ci gemountet
|
||||
# und die daten werden dort reingeschrieben
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost/"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
labels:
|
||||
traefik.http.routers.wiki.rule: Host(`wiki.mgrote.net`)
|
||||
traefik.enable: true
|
||||
traefik.http.routers.wiki.tls: true
|
||||
traefik.http.routers.wiki.tls.certresolver: resolver_letsencrypt
|
||||
traefik.http.routers.wiki.entrypoints: entry_https
|
||||
traefik.http.services.wiki.loadbalancer.server.port: 80
|
||||
|
||||
traefik.http.routers.wiki.middlewares: nforwardauth
|
||||
|
||||
######## Networks ########
|
||||
networks:
|
||||
traefik:
|
||||
external: true
|
|
@ -0,0 +1,80 @@
|
|||
# https://woodpecker-ci.org/docs/administration/setup
|
||||
version: '3'
|
||||
|
||||
services:
|
||||
woodpecker-server:
|
||||
restart: always
|
||||
container_name: woodpecker-server
|
||||
image: "woodpeckerci/woodpecker-server:v2.4.1"
|
||||
ports:
|
||||
- 8000:8000
|
||||
volumes:
|
||||
- server-data:/var/lib/woodpecker/
|
||||
environment:
|
||||
WOODPECKER_OPEN: false
|
||||
WOODPECKER_HOST: https://ci.mgrote.net
|
||||
WOODPECKER_WEBHOOK_HOST: http://docker10.mgrote.net:8000
|
||||
WOODPECKER_GITEA: true
|
||||
WOODPECKER_GITEA_URL: https://git.mgrote.net
|
||||
WOODPECKER_GITEA_CLIENT: "{{ lookup('keepass', 'woodpecker-oauth2-client-id', 'password') }}"
|
||||
WOODPECKER_GITEA_SECRET: "{{ lookup('keepass', 'woodpecker-oauth2-client-secret', 'password') }}"
|
||||
WOODPECKER_AGENT_SECRET: "{{ lookup('keepass', 'woodpecker-agent-secret', 'password') }}"
|
||||
WOODPECKER_ADMIN: mg
|
||||
WOODPECKER_LOG_LEVEL: info
|
||||
WOODPECKER_DEBUG_PRETTY: true
|
||||
networks:
|
||||
- intern
|
||||
- traefik
|
||||
labels:
|
||||
traefik.http.routers.woodpecker.rule: Host(`ci.mgrote.net`)
|
||||
traefik.enable: true
|
||||
traefik.http.routers.woodpecker.tls: true
|
||||
traefik.http.routers.woodpecker.tls.certresolver: resolver_letsencrypt
|
||||
traefik.http.routers.woodpecker.entrypoints: entry_https
|
||||
traefik.http.services.woodpecker.loadbalancer.server.port: 8000
|
||||
|
||||
traefik.http.routers.woodpecker.middlewares: woodpecker-ipallowlist
|
||||
|
||||
traefik.http.middlewares.woodpecker-ipallowlist.ipallowlist.sourcerange: "192.168.2.0/24,10.25.25.0/24"
|
||||
traefik.http.middlewares.woodpecker-ipallowlist.ipallowlist.ipstrategy.depth: 0 # https://doc.traefik.io/traefik/middlewares/http/ipallowlist/#ipstrategydepth
|
||||
|
||||
|
||||
woodpecker-agent:
|
||||
container_name: woodpecker-agent
|
||||
image: "woodpeckerci/woodpecker-agent:v2.4.1"
|
||||
command: agent
|
||||
restart: always
|
||||
depends_on:
|
||||
- woodpecker-server
|
||||
ports:
|
||||
- 3032:3000
|
||||
volumes:
|
||||
- agent-config:/etc/woodpecker
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
environment:
|
||||
WOODPECKER_SERVER: woodpecker-server:9000
|
||||
WOODPECKER_AGENT_SECRET: "{{ lookup('keepass', 'woodpecker-agent-secret', 'password') }}"
|
||||
WOODPECKER_MAX_WORKFLOWS: 20
|
||||
WOODPECKER_DEBUG_PRETTY: true
|
||||
WOODPECKER_LOG_LEVEL: info
|
||||
WOODPECKER_HEALTHCHECK: true
|
||||
WOODPECKER_BACKEND: docker
|
||||
networks:
|
||||
- intern
|
||||
|
||||
|
||||
volumes:
|
||||
server-data:
|
||||
agent-config:
|
||||
|
||||
# git.mgrote.net -> Settings -> Applications -> woodpecker
|
||||
# WOODPECKER_GITEA_CLIENT: "{{ lookup('keepass', 'woodpecker-oauth2-client-id', 'password') }}"
|
||||
# WOODPECKER_GITEA_SECRET: "{{ lookup('keepass', 'woodpecker-oauth2-client-secret', 'password') }}"
|
||||
# Redirect URL: https://ci.mgrote.net/authorize
|
||||
|
||||
######## Networks ########
|
||||
networks:
|
||||
traefik:
|
||||
external: true
|
||||
intern:
|
||||
driver: bridge
|
|
@ -0,0 +1,73 @@
|
|||
version: "3"
|
||||
services:
|
||||
######## App ########
|
||||
lldap:
|
||||
image: nitnelave/lldap:stable
|
||||
container_name: lldap-app
|
||||
restart: always
|
||||
ports:
|
||||
# For LDAP
|
||||
- "3890:3890"
|
||||
# For the web front-end
|
||||
- "17170:17170"
|
||||
networks:
|
||||
- intern
|
||||
- traefik
|
||||
- mail-relay
|
||||
volumes:
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
- /etc/timezone:/etc/timezone:ro
|
||||
- "lldap:/data"
|
||||
environment:
|
||||
UID: 1000
|
||||
GID: 1000
|
||||
LLDAP_HTTP_PORT: 17170
|
||||
LLDAP_HTTP_URL: http://docker10.grote.lan:17170
|
||||
LLDAP_KEY_SEED: ganz_lang
|
||||
LLDAP_VERBOSE: true
|
||||
LLDAP_JWT_SECRET: jwt_secret
|
||||
LLDAP_LDAP_BASE_DN: dc=grote,dc=lan
|
||||
LLDAP_USER_DN: admin
|
||||
LLDAP_LDAP_USER_PASS: user_pass_geheim
|
||||
LLDAP_DATABASE_URL: mysql://lldap-db-user:mysql_password@lldap-db/lldap
|
||||
LLDAP_SMTP_OPTIONS__ENABLE_PASSWORD_reset: true
|
||||
LLDAP_SMTP_OPTIONS__FROM: "LLDAP Admin <info@mgrote.net>"
|
||||
LLDAP_SMTP_OPTIONS__REPLY_TO: "Do not reply <info@mgrote.net>"
|
||||
LLDAP_SMTP_OPTIONS__SERVER: mail-relay
|
||||
LLDAP_SMTP_OPTIONS__PORT: 25
|
||||
LLDAP_SMTP_OPTIONS__SMTP_ENCRYPTION: NONE
|
||||
LLDAP_SMTP_OPTIONS__USER: info@mgrote.net
|
||||
labels:
|
||||
- com.centurylinklabs.watchtower.enable=true
|
||||
- com.centurylinklabs.watchtower.depends-on=lldap-db
|
||||
######## DB ########
|
||||
lldap-db:
|
||||
image: mariadb:10.6.14
|
||||
container_name: lldap-db
|
||||
restart: always
|
||||
volumes:
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
- /etc/timezone:/etc/timezone:ro
|
||||
- db:/var/lib/mysql
|
||||
environment:
|
||||
- MYSQL_ROOT_PASSWORD=mysql_root_password
|
||||
- MYSQL_PASSWORD=mysql_password
|
||||
- MYSQL_DATABASE=lldap
|
||||
- MYSQL_USER=lldap-db-user
|
||||
- MYSQL_INITDB_SKIP_TZINFO=1
|
||||
networks:
|
||||
- intern
|
||||
labels:
|
||||
- com.centurylinklabs.watchtower.enable=true
|
||||
|
||||
######## Volumes ########
|
||||
volumes:
|
||||
lldap:
|
||||
db:
|
||||
######## Networks ########
|
||||
networks:
|
||||
intern:
|
||||
traefik:
|
||||
external: true
|
||||
mail-relay:
|
||||
external: true
|
|
@ -0,0 +1,40 @@
|
|||
version: '3'
|
||||
services:
|
||||
wiki-webserver:
|
||||
container_name: wiki-webserver
|
||||
image: httpd:2.4@sha256:ba846154ade27292d216cce2d21f1c7e589f3b66a4a643bff0cdd348efd17aa3
|
||||
restart: always
|
||||
networks:
|
||||
- traefik
|
||||
ports:
|
||||
- 8087:80
|
||||
volumes:
|
||||
- /docker/wiki/site:/usr/local/apache2/htdocs/
|
||||
# /docker/wiki/site ist ein lokales Verzeichnis auf docker10
|
||||
# dieser Verzeichnis wird direkt in der wiki ci gemountet
|
||||
# und die daten werden dort reingeschrieben
|
||||
labels:
|
||||
traefik.http.routers.wiki.rule: Host(`wiki2.mgrote.net`)
|
||||
traefik.enable: true
|
||||
traefik.http.routers.wiki.tls: true
|
||||
traefik.http.routers.wiki.tls.certresolver: resolver_letsencrypt
|
||||
traefik.http.routers.wiki.entrypoints: entry_https
|
||||
traefik.http.services.wiki.loadbalancer.server.port: 80
|
||||
|
||||
traefik.http.routers.wiki.middlewares: nforwardauth
|
||||
# traefik.http.routers.wiki.middlewares: ldap_auth
|
||||
#
|
||||
# # ldapAuth Options
|
||||
# traefik.http.middlewares.ldap_auth.plugin.ldapAuth.enabled: true
|
||||
# traefik.http.middlewares.ldap_auth.plugin.ldapAuth.logLevel: DEBUG
|
||||
# traefik.http.middlewares.ldap_auth.plugin.ldapAuth.url: ldap://lldap-app
|
||||
# traefik.http.middlewares.ldap_auth.plugin.ldapAuth.port: 3890
|
||||
# traefik.http.middlewares.ldap_auth.plugin.ldapAuth.baseDN: "ou=people,dc=grote,dc=lan"
|
||||
# traefik.http.middlewares.ldap_auth.plugin.ldapAuth.attribute: uid
|
||||
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
|
||||
######## Networks ########
|
||||
networks:
|
||||
traefik:
|
||||
external: true
|