Bot Discord pour écouter votre Bibliothèque de Musique dans un salon vocal, tout comme avec Rythme

This commit is contained in:
gigi_dsss 2021-08-03 13:55:12 +02:00
parent 440cc9cb49
commit 066800178a
81 changed files with 1 additions and 5297 deletions

View file

@ -1,54 +0,0 @@
#!/bin/bash
##===========================================================================================##
## Script bridgemacvlan-interface.sh ##
## ##
## Script de création d'interface virtuelle pour les conteneurs en macvlan ##
## Voir tutos : ##
## https://www.nas-forum.com/forum/topic/69319-tuto-docker-macvlan-pi-hole/ ##
## https://www.nas-forum.com/forum/topic/67311-tuto-certificat-ssl-reverse-proxy-via-docker/ ##
## ##
## Rappels des différentes IP : ##
## - Plage d'IP macvlan : 192.168.xxx.MMM/28 == 192.168.2.208/28 ##
## - IP virtuelle unique : 192.168.xxx.zzz/32 == 192.168.2.210/32 ##
## - Plage d'IP du LAN : 192.168.xxx.0/24 == 192.168.2.0/24 ##
## - Passerelle/routeur : 192.168.xxx.1 == 192.168.2.1 ##
## - IP conteneur n°1 : 192.168.xxx.yyy == 192.168.2.209 ##
## - IP conteneur n°2 : 192.168.xxx.ooo == 192.168.2.210 AdGuard_Home ##
## ##
##=============================================================================================
# Set timeout to wait host network is up and running
sleep 60
echo "$(date "+%R:%S - ") Script de création d'une interface virtuelle pour le NAS"
echo "$(date "+%R:%S - ") Exécution des commandes..."
ip link add macv0 link eth0 type macvlan mode bridge # macv0 : est le nom données à l'interface virtuelle
# eth0 : est l'interface réseau utilisée sur le NAS (lorsque VMM n'est pas utilisé)
# si VMM est utilisé, ce sera ovs_eth0
ip addr add 192.168.xxx.zzz/32 dev macv0 # Adresse IP virtuelle 192.168.x.zzz/32 -- Il faut que cette adresse soit libre dans le réseau
# et qu'elle ne fasse pas partie du DHCP du routeur/box
#
#### Dans mon cas, c'est cette commande :
#### ip addr add 192.168.2.230/32 dev macv0
ip link set dev macv0 address 5E:00:01:02:03:04 # MAC adresse pour l'adaptateur ayant l'IP virtuelle
# Il faut que l'adresse MAC respecte ces conditions :
# - Elle n'existe pas déjà sur mon hôte et sur mon réseau.
# - Elle respecte la base hexadécimale, les notations allant de 0 à F.
# - Le premier nombre doit être pair, ici 5E = 94 en base 10, c'est donc OK (vous pouvez
# utiliser un convertisseur en ligne, ou faire vos divisions euclidiennes).
# S'il est impair, vous aurez un message :
# RTNETLINK answers: Cannot assign requested address
ip link set macv0 up
ip route add 192.168.xxx.MMM/28 dev macv0 # 192.168.xxx.MMM/28 : Plage d'adresse macvlan
# IP réellement disponible : voir les calculateurs internet
# Utiliser Portainer ou l'interface Docker ou encore le script : create-macvlan-network.sh
#
#### Dans mon cas, c'est cette commande :
#### ip route add 192.168.2.208/28 dev macv0
echo "$(date "+%R:%S - ") Script terminé"
exit

View file

@ -1,86 +0,0 @@
##==============================================================================================
## ##
## Fichier docker-compose.yml pour Adguard-Home en macvlan ##
## ##
##==============================================================================================
##============================================================================================##
## ##
## Attention, il faut créer le réseau macvlan à l'aide du script : macvlan-network.sh ##
## Ce dernier va créer un réseau macvlan ayant comme IP unique 192.168.2.210 ##
## Cette IP doit être dans la plage d'IP mavclan définie dans le script de création du réseau.##
## Le conteneur sera donc vu comme une machine sur le réseau LAN, mais ne pourra pas être ##
## joint par le NAS lui-même. ##
## Pour celà, il faut utiliser le second script : boot-bridgemacvlan-interface.sh ##
## Ce dernier va créer une IP-interface virtuelle qui pourra être accessible par le NAS. ##
## Cette interface ne persiste pas au démarrage, il faudra mettre le script en tâche ##
## planifiée avec le planificateur de tâches dans DSM. ##
## ##
## Voir tuto : https://www.nas-forum.com/forum/topic/69319-tuto-docker-macvlan-pi-hole/ ##
## ##
## Attention ! ##
## ##
## Ces deux scripts ne sont à utiliser qu'une seule fois, quelque soit le nombre de ##
## conteneurs qui en bénéficieront. ##
## Par exemple, si vous utilisez 2 conteneurs en macvlan, une fois le réseau macvlan créé ##
## pour le 1er, il est inutile (et impossible) de le recréer. ##
## Le script boot-bridgemacvlan-interface.sh ne doit être lancé qu'une seule fois, et à ##
## chaque reboot. L'IP virtuelle est unique, il ne faut pas en recréer une seconde. ##
## ##
##==============================================================================================
---
version: "2.4"
services:
adguardhome_macvlan:
image: adguard/adguardhome:latest # https://github.com/AdguardTeam/AdGuardHome
# https://github.com/AdguardTeam/AdGuardHome/wiki/Docker
container_name: adguardhome_macvlan
hostname: AdGuard-Home--DS920+ # Permet d'avoir un nom pour le conteneur dans AdGuard lui même (sinon c'est une chaine aléatoire)
environment:
- PUID=1000 # Utiliser la commande (en SSH) : id NOM_UTILISATEUR
- PGID=100 # Utiliser la commande (en SSH) : id NOM_UTILISATEUR
- TZ=Europe/Paris
- LANG=fr_FR.UTF8
- LANGUAGE=fr_FR.UTF8
# ---------------------------------------------------------------------------------
# Le label ci-dessous permet à Watchtower de faire les mises à jour automatiquement
# Cela peut-être supprimé si Watchtower n'est pas utilisé.
labels:
- "com.centurylinklabs.watchtower.enable=true"
# ---------------------------------------------------------------------------------
volumes:
- "/volume1/docker/adguardhome_macvlan/work:/opt/adguardhome/work"
- "/volume1/docker/adguardhome_macvlan/conf:/opt/adguardhome/conf"
# La déclaration des ports n'est pas utile lors d'une installation en macvlan, car tous les ports seront directement accessible
# avec l'IP virtuelle.
# ports:
# - "953:53"
# - "967:67/udp"
# - "968:68"
# - "8080:80/tcp"
# - "9443:443/tcp"
# - "9853:853/tcp"
# - "3030:3000/tcp"
networks:
macvlan-network:
ipv4_address: 192.168.xxx.yyy # Mettre ici l'IP macvlan dans la plage définie dans les scripts
# Dans mon cas c'est 192.168.2.210
restart: unless-stopped
healthcheck:
test: "/bin/netstat -pant | /bin/grep 53"
interval: 45s
timeout: 30s
retries: 3
networks:
macvlan-network: # Ce réseau devra bien entendu être créé avant avec le script annexe ou avec Portainer.
external: true

View file

@ -1,59 +0,0 @@
#!/bin/bash
##============================================================================================##
## ##
## Script docker_network_create_macvlan.sh ##
## ##
## Script de création d'interface virtuelle pour les conteneurs qui auront une IP macvlan ##
## Voir tutos : ##
## https://www.nas-forum.com/forum/topic/69319-tuto-docker-macvlan-pi-hole/ ##
## https://www.nas-forum.com/forum/topic/67311-tuto-certificat-ssl-reverse-proxy-via-docker/ ##
## ##
## Les IPs prévues pour les conteneurs sont : ##
## - Conteneur A : 192.168.xxx.yyy ##
## - AdGuard-Home : 192.168.xxx.ooo ##
## ##
## Rappels des différentes IP : ##
## - Plage d'IP macvlan : 192.168.xxx.MMM/28 ##
## - IP virtuelle unique : 192.168.xxx.zzz/32 ##
## - IP conteneur n°1 : 192.168.xxx.yyy ##
## - IP conteneur n°2 : 192.168.xxx.ooo ##
## - Plage d'IP du LAN : 192.168.xxx.0/24 ##
## - Passerelle/routeur : 192.168.xxx.1 ##
## ##
##==============================================================================================
##==============================================================================================
## ##
## --ip-range=192.168.xxx.MMM/28 : cela correspond à la plage d'IP pour le réseau macvlan ##
## sachant que 192.168.xxx.MMM doit être la 1ère IP donnée par les calculateurs internet. ##
## Il se peut que ce ne soit pas la même que l'IP macvlan que l'on veut donner au conteneur ##
## AdGuardHome. ##
## ##
## Quelques calculateurs internet : ##
## https://cric.grenoble.cnrs.fr/Administrateurs/Outils/CalculMasque/ ##
## https://www.cidr.eu/en/calculator/+/192.168.2.208/28 ##
## ##
##==============================================================================================
docker network create -d macvlan \
--subnet=192.168.xxx.0/24 \
--ip-range=192.168.xxx.MMM/28 \
--gateway=192.168.xxx.1 \
-o parent=eth0 \ # Ici, eth0 est à remplacer par votre interface réseau : eth0, ovs_eth0 ou autre...
macvlan-network
##==============================================================================================
## Pour exemple, voilà mes valeurs à moi : ##
## ##
## - Conteneur A : 192.168.2.209 ##
## - AdGuard-Home : 192.168.2.210 ##
## - Conteneur B : 192.168.2.211 ##
## ##
## Rappels des différentes IP : ##
## - Plage d'IP macvlan : 192.168.xxx.MMM/28 == 192.168.2.208/28 ##
## - IP virtuelle unique : 192.168.xxx.zzz/32 == 192.168.2.210/32 ##
## - Plage d'IP du LAN : 192.168.xxx.0/24 == 192.168.2.0/24 ##
## - Passerelle/routeur : 192.168.xxx.1 == 192.168.2.1 ##
##==============================================================================================