@Dimebag Darrell
Bonjour,
Qu'entends-tu par nouvelles fonctionnalités ? au niveau speedtest ou d'autres applications à installer sous docker ?
Dans ce dernier cas, personnellement j'ai supprimé toutes mes synchronisations faites sur la base de Synology Drive pour les remplacer par l'installation de Syncthing sous Docker. Garantit : y-a pas photo ! notamment avec les synchros sous Android.
Sinon pour Speedtest, voici une procédure d'installation qui prend en compte les modifs de @bruno78 :
Installation speedtest2
• Prérequis :
o Une database dédiée configurée sous influxdb, avec son user/pwd dédié.
root@MonNAS:/volume1/docker/speedtest# docker exec -it influxdb influx -username admin -password admin
> CREATE DATABASE nas_speedtest
> USE nas_speedtest
> CREATE USER speedtest WITH PASSWORD 'speedtest'
> GRANT ALL ON nas_speedtest TO speedtest
> SHOW DATABASES
> SHOW USERS
> exit
docker restart influxdb
• Télécharger le fichier speedtest2.tar (speedtest2.tar : https://www.nas-forum.com/forum/applications/core/interface/file/attachment.php?id=15317). Il contient :
o Dockerfile : fichier de commande pour générer la nouvelle image
o InfluxdbSpeedtest.py : fichier de lancement du test, très légèrement modifié (on fait un simple 'ping' de la base influxdb)
o SpeedTest_Net_Server_List.xml : en prime la liste des serveurs utilisés, avec leurs identifiants. Pour amélioration du dashboard grafana (source github)
• Etat avant modification :
o image
root@MonNAS:/volume1/docker/speedtest# docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
...
atribe/speedtest-for-influxdb-and-grafana latest 99c2c10d1e41 16 months ago 111MB
...
o container
root@Maeva56:/volume1/docker/speedtest# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
...
bc4340b44afd atribe/speedtest-for-influxdb-and-grafana:latest "python -u /src/infl…" 3 days ago Up 43 hours speedtest
...
• On arrête le container speedtest en cours
root@MonNAS:/volume1/docker/speedtest# docker stop speedtest
• On construit la nouvelle image /!\ ne pas oublier le "." (point) à la fin de la commande /!\
root@MonNAS:/volume1/docker/speedtest# docker build -f Dockerfile --rm --tag speedtest2 .
Sending build context to Docker daemon 959kB
Step 1/2 : FROM atribe/speedtest-for-influxdb-and-grafana:latest
---> 99c2c10d1e41
Step 2/2 : COPY ./InfluxdbSpeedtest.py /src/influxspeedtest/
---> 08847e4b7b5e
Successfully built 08847e4b7b5e
Successfully tagged speedtest2:latest
• On vérifie que l'image speedtest2 a bien été créée (on a toujours l'ancienne)
root@Maeva56:/volume1/docker/speedtest# docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
speedtest2 latest 08847e4b7b5e 15 seconds ago 111MB
...
atribe/speedtest-for-influxdb-and-grafana latest 99c2c10d1e41 16 months ago 111MB
...
• On met à jour le docker-compose.yml pour prendre en compte cette nouvelle image
root@MonNAS:/volume1/docker/speedtest# cat docker-compose.yml
version: "2.1"
services:
speedtest2:
image: speedtest2:latest
container_name: speedtest2
volumes:
- ./config.ini:/src/config.ini
restart: unless-stopped
mem_limit: 256M
network_mode: bridge
• On met à jour le fichier config.ini pour modifier le user/pwd à utiliser
root@MonNAS:/volume1/docker/speedtest# cat config.ini
[GENERAL]
# Duree en secondes entre deux mesures ---> A adapter au besoin !
# Delay = 3600
Delay = 10800
[INFLUXDB]
Address = 172.20.0.2
Port = 8086
Database = nas_speedtest
#Username = admin
#Password = admin
Username = speedtest
Password = speedtest
Verify_SSL = True
[SPEEDTEST]
# Leave blank to auto pick server
Server =
[LOGGING]
# Valid Options: critical, error, warning, info, debug
Level = debug
• On peut enfin lancer le nouveau container avec la nouvelle image :
root@Maeva56:/volume1/docker/speedtest# docker-compose up -d
Creating speedtest2 ... done
• On attend une petite minute et on vérifie que tout est en place :
root@MonNAS:/volume1/docker/speedtest# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
498d69abfe03 speedtest2:latest "python -u /src/infl…" About a minute ago Up About a minute speedtest2
...
root@MonNAS:/volume1/docker/speedtest# docker logs -f speedtest2
Loading Configuration File config.ini
Configuration Successfully Loaded
2021-01-07 13:22:38,148 - DEBUG: Testing connection to InfluxDb using provided credentials
2021-01-07 13:22:38,341 - DEBUG: Successful connection to InfluxDb
2021-01-07 13:22:38,341 - INFO: Starting Speed Test For Server None
2021-01-07 13:22:38,357 - DEBUG: Setting up SpeedTest.net client
2021-01-07 13:22:38,586 - DEBUG: Picking the closest server
2021-01-07 13:23:08,886 - INFO: Selected Server 16676 in Paris
2021-01-07 13:23:08,887 - INFO: Starting download test
2021-01-07 13:23:13,306 - INFO: Starting upload test
2021-01-07 13:23:16,028 - DEBUG: [{'measurement': 'speed_test_results', 'fields': {'download': 741713644.1996006, 'upload': 549366763.0788989, 'ping': 5.709, 'server': '16676', 'server_name': 'Paris'}, 'tags': {'server': '16676', 'server_name': 'Paris', 'server_country': 'France'}}]
2021-01-07 13:23:16,242 - DEBUG: Data written to InfluxDB
2021-01-07 13:23:16,242 - INFO: Download: 741.71Mbps - Upload: 549.37Mbps - Latency: 5.709ms
2021-01-07 13:23:16,242 - INFO: Waiting 10800 seconds until next test
• Et je retrouve ce test dans mon dashboard (je n'ai pas mis à jour le fuseaux horaire ...) :
Cordialement
oracle7😉