Il y a quelques temps je vous ai fait découvrir EarnApp, une application qui permet de rentabiliser sa connexion internet. Le service vous rémunère en effet contre l'utilisation de la bande passante que vous n'utilisez pas. Dans cette première présentation, je vous avais expliqué comment utiliser un Raspberry Pi Zero à 15€, pour gagner chaque mois 15$ en automatique. Nous avons vu ensuite comment créer une machine virtuelle EarnApp sur Synology, pratique pour ceux n'ayant pas de Raspberry Pi, ou ne voulant pas en acheter un. Mais il existe encore une autre solution, plus simple et moins gourmande qu'une machine virtuelle: l'installation d'un container EarnApp sous Docker. C'est ce que je vous propose de découvrir aujourd'hui dans ce petit tuto.
Je ne reviendrai pas sur le détail de la société et du fonctionnement du service, puisque j'ai déjà tout expliqué dans l'article précédent.
Pré-requis
Il faudra bien sûr posséder une installation Docker, que ce soit sur un ordinateur, un serveur, ou un Nas Synology comme ici. L'installation proposée ici est faite sur un NAS Synology 1019+, mais elle sera semblable sur les autres solutions.
Sur Synology, si vous ne possédez pas Docker, il suffira de l'installer via le centre de paquets Synology:
Il vous faudra bien sûr également un compte sur EarnApp, et un identifiant de machine.
Chaque fois que vous installez EarnApp (que ce soit sur Windows, Android, Raspberry Pi, ou une machine virtuelle), le logiciel crée un identifiant unique pour identifier votre machine et l'ajouter à son tableau de bord. Le container Docker que nous allons installer ici ne crée pas d'identifiant lui même, il faut donc en récupérer un d'une autre installation afin d'avoir un identifiant valide.
En pratique:
- installez le logiciel EarnApp sur un appareil, que ce soit un ordinateur Windows, un smartphone Android, un Raspberry Pi, ou une machine virtuelle, et liez le programme à votre compte EarnApp, en suivant la procédure habituelle
- sur le tableau de bord EarnApp, récupérez l'identifiant créé. Exemple ici j'ai fait l'installation sur mon smartphone OnePlus Nord:
- une fois l'identifiant copié dans un coin, vous pouvez désinstaller le programme EarnApp de l'appareil en question. Nous en avions juste besoin pour créer un identifiant valide
On peut maintenant passer à la création de notre container EarnApp Docker.
Création du container EarnApp Docker
Il existe de nombreux containers Docker déjà paramétrés, qu'on peut réutiliser facilement. Et il en existe déjà un pour EarnApp. Il suffit de se rendre dans Docker, Registre, puis chercher EarnApp:
On sélectionne l'image “fazalfarhan01/earnapp”, on clique sur “Télécharger”, et on sélectionne la version “Lite” dans la liste déroulante. C'est la version qui demande le moins de privilèges et qui fonctionne très bien sur Synology:
On se rend ensuite dans le menu “Image” à gauche. A droite, on retrouve l'image “fazalfarhan01/earnapp:lite” fraichement téléchargée:
On la sélectionne, puis on clique sur “Lancer”. Là on peut donner un nom à notre conteneur:
On laisse les autres paramètres par défaut, mais on clique sur “Paramètres avancés”. Sur le premier écran, on peut cocher “Activer le redémarrage automatique”, si on veut être sûr que le container EarnApp redémarre automatiquement après un redémarrage du Nas par exemple (suite à une mise à jour ou autre).
On se rend ensuite dans l'onglet “Environnement”. Là, on ajoute une variable nommée “EARNAPP_UUID”, puis dans valeur on colle l'identifiant EarnApp relevé plus haut, récupéré grâce à l'installation faite sur un autre appareil (smartphone, pc windows, etc.).
On applique les modifications, et on valide la machine. Celle ci va se lancer automatiquement:
Si on se rend dans “Conteneur”, on doit voir notre conteneur Docker EarnApp Lite en fonctionnement:
Comme on le voit cette installation consomme très peu de ressources, puisqu'elle n'utilise ici que 170Mb de mémoire vive et 0,55% du CPU sur mon Syno. En réalité, après un certain temps, elle ne consomme même plus qu'une soixantaine de Mo en mémoire, et 0,03% du CPU, ce qui est dérisoire, comme on le peut le voir ici avec deux instances:
Dernière chose: sur le Dashboard EarnApp, je renomme mon Device à l'aide du petit crayon à gauche, avec le même nom que j'ai donné à mon conteneur Docker. Cela me permet de mieux m'y retrouver avec plusieurs instances en fonctionnement:
Voilà il ne reste plus qu'à laisser tourner tranquillement. Au bout de quelques minutes EarnApp détectera le pays, l'IP, et commencera à utiliser la bande passante de votre machine virtuelle.
Conclusion
L'utilisation de Docker a le grand avantage de créer des machines virtuelles extra légères, beaucoup plus légères que celles gérées avec Virtual Station Manager. Comme on l'a vu ici, l'installation se fait en 5min à peine.
L'utilisation du container dans sa version “Lite” pose la contrainte de récupérer un identifiant EarnApp depuis une autre machine. En revanche elle a l'avantage de pouvoir créer autant de machines qu'on le souhaite, avec des identifiants différents. Ici, j'en ai par exemple deux qui tournent en même temps pour EarnApp, sur le même Nas, et ceci avec un impact très négligeable sur les performances. Attention toutefois: inutile d'en créer une vingtaine comme ca, l'impact sur le rendement sera négligeable. Jusqu'à 3-4 machines avec EarnApp sur la même adresse IP, on obtient des résultats corrects. Après, le delta est nul.
Il reste cependant intéressant de multiplier les machines si on peut les utiliser sur différentes adresses IP. Ainsi, par exemple, mon Nas ayant deux ports ethernet, l'un est branché sur ma ligne ADSL habituelle, l'autre sur un routeur 4G, que j'utilise habituellement quand je suis en voyage. Comme mes déplacements sont très limités depuis la pandémie, je rentabilise mon abonnement en utilisant le routeur 4G sur mon Nas. Malheureusement je n'ai pas réussi sous Docker à affecter un container à un port ethernet spécifique. Si certains d'entre vous savent comment faire, je suis preneur de la marche à suivre !
Du coup, pour le moment, j'ai deux installations EarnApp Docker sur la ligne ADSL classique, et une machine virtuelle (sous Virtual Station Manager donc) qui elle est connectée via le routeur 4G, car l'affectation des cartes réseau sous VMM est beaucoup plus simple.
Comme je l'avais expliqué dans le dernier guide, malgré la baisse de rémunération de EarnApp, je continue à utiliser le service, qui reste rentable (ici avec 6 machines sur 3 IP différentes), et qui a fait ses preuves. La société communique beaucoup, notamment via son Discord qui regroupe une très grosse communauté, elle répond aux éventuelles questions, organise des évènements (concours, bonus selon les occasions comme récemment avec la St Valentin, etc.), et paye rapidement dès qu'on atteint le minimum nécessaire (perso j'ai généralement les paiements dans la journée).
Dans quelques jours, je vous présenterai une autre installation sous Docker, cette fois pour Honeygain, qui propose le même type de service. Vous avez été plusieurs à me demander comment faire, je vous expliquerai tout ca en détail ;-) Une bonne manière de multiplier un peu les revenus !
Merci Cédric !
Quid de l’usage des HDDs ? De ce que je comprends c’est surtout la bande-passante qui est utilisée mais l’usage des disques dur m’embêterai un peu plus…
Aucun usage des disques dur, c’est vraiment simplement de la requête web, comme on le ferait avec un VPN par exemple.
Top Merci.
marche tres bien sur qnap ts 230 merci pour l installation
Ils divisent la rémunération par 2 tous les 3 mois… c’était rentable y’a un an, mais actuellement c’est limite…
Merci pour la confirmation !
Bonjour et merci pour le tuto.
Le container tourne mais le pays etc n’est pas remonté au niveau du dashboard EarnApp (ni la data utilisée of course):
J’ai pourtant ce message dans les logs peu de temps après le démarrage du container:
2022-02-21 16:05:47 stdout 2022-02-21 16:05:47.425 ERR: perr register_client {“msg”:”ls13c3p443_XX.XX.XX.XX_43159″,”body”:”{\”type\”:\”eth0\”,\”myip\”:\”{\\\”ip\\\”:\\\”XX.XX.XX.XX\\\”,\\\”country\\\”:\\\”FR\\\”,\\\”asn\\\”:{\\\”asnum\\\”:3215,\\\”org_name\\\”:\\\”Orange\\\”},\\\”geo\\\”:{\\\”city\\\”:\\\”Celoux\\\”,\\\”region\\\”:\\\”ARA\\\”,\\\”region_name\\\”:\\\”Auvergne-Rhone-Alpes\\\”,\\\”postal_code\\\”:\\\”15500\\\”,\\\”latitude\\\”:45.1451,\\\”longitude\\\”:3.2641,\\\”tz\\\”:\\\”Europe/Paris\\\”,\\\”lum_city\\\”:\\\”celoux\\\”,\\\”lum_region\\\”:\\\”ara\\\”}}\”}”}
2022-02-21 16:05:47 stdout session_key undefined
J’ai remplacé l’IP par des XX mais il s’agit bien de mon IP/région etc…
Un idée?
Merci d’avance
Bonjour. Il faut parfois quelques minutes pour que ce soit à jour sur le dashboard. Si malgré tout ca ne se met pas à jour, essayez ceci:
– éteignez le conteneur EarnApp
– créez un autre bridge avec le nom que vous souhaitez dans la partie Réseau (ajouter, donnez un nom, par exemple “BridgeEarnApp”, validez)
– cliquez ensuite dessus, bouton “gérer”, et ajoutez le container docker EarnApp à la liste
– cliquez sur le bridge initial (celui utilisé au départ par EarnApp, qui doit sans doute s’appeler simplement “Bridge”), bouton “gérer”, et là supprimez Earnapp de la liste.
– redémarrez votre container EarnApp
Cette manipulation a pour but de passer EarnApp sur un autre Bridge réseau et l’isoler des autres containers qui pourraient déjà tourner. Ca résoud parfois le problème.
Bonjour, et merci pour l’ensemble des tutos que j’ai suivi de nombreuses fois sur ce blog !
Je suis comme ZAG : mon conteneur tourne. Dans le journal, je constate les différentes connexions mais sur le dashboard d’Earnapp, je reste avec le petit point rouge et rien n’est comptabilisé ! Meme après la manip sur le Bridge… j’avoue que je sèche !
Merci d’avance !
Bonjour,
Tout d’abord merci Cédric.
Je suis, moi aussi avec mes deux dockers qui restent désespérément avec les points rouges… comme si le rate n’était pas activé.
Si quelqu’un a la solution je suis preneur.
Bonjour. Malheureusement là je sèche aussi sur ce problème :/ J’ai fais plusieurs installations, et il n’y a rien de plus à faire, en suivant ce guide ca devrait fonctionner sans problème. Aurais tu le parefeu activé sur ton Nas ? Ca bloque peut être la sortie.
j’ai recommencé le tuto de nombreuses fois, mais toujours en obtenant l’ID avec l’installation sur Android (12) sur un Pixel 4a. Cette appli est bloquée en quelques minutes par PlayProtect. Je viens de refaire la manip mais sur Windows, et enfin cela fonctionne !!!
Dernière précision, le téléchargement sur PC a été bloqué par Kaspersky (présence virus…)
Super, ca m’a permit de remplacer mes VM Ubutu par des dockers moins gourmands en ressources !
C’est faisable avec HoneyGain ?
Merci
Pour HoneyGain, c’est possible aussi ! Le tuto arrive jeudi ;-)
Top merci
Bonjour,
Pour ceux que sa pourrait intéresser .
Il suffit de le lancer puis taper la commande dans le conteneur earnapp showid et de l’insérer dans le dashboard.
version: ‘3.9’
services:
EarnApp1:
privileged: ‘true’
image: ‘fazalfarhan01/earnapp’
container_name: ‘EarnAPP1’
network_mode: ‘bridge’
hostname: ‘EarnAPP1’
domainname: ‘lan’
restart: ‘no’
volumes:
– ‘EarnAPP1:/etc/earnapp’
– ‘/sys/fs/cgroup:/sys/fs/cgroup:ro’
labels:
cacher: ‘non’
volumes:
EarnAPP1:
external: ‘false’
Yes c’est aussi simple que ca, j’ai recu mes premiers €€euh $ sur paypal 2.55dollars apres 14jours. 1 seul docker qui tourne sur mon compte.
Pour honeygain, j’ai commencé par un docker, puis je suis passé en VM pour espéré avoir un gain ‘contest’ mais je suis toujours en ‘queue’ (en file d’attente ) pour pouvoir utiliser ce service qui rapporte 6 crédits par heure de connexion. Si ça continue je retourne sur un docker
Bonjour,
J’avoue que je n’ai pas compris ton post :)
S.
C’est une autre installation d’un docker pour EarnApp, qui lui a son propre ID. Il faut l’installer ici en ligne de commande, il faut déjà connaitre un peu ;-) Dans le tuto j’ai opté pour la méthode la plus simple possible (à mon avis).
Vous devriez faire un article sur la sécurité de votre réseau surtout sur un site spécialisé sur les objets connectés. Et toujours cité cette article en début de tout vos articles. Car je trouve que c’est un énorme manquement de votre part.
Surtout que vous casualiser les choses ce qui est excellent n’importe qui peut suivre vos tutoriel même des enfants et adultes naïf sans faire le minimum pour sécuriser son réseau et se retrouver avec des problème.
Vos articles sont super mais considéré mon commentaire… Avec ça en plus il serait proche de la perfection et ça devrait être votre priorité surtout quand vous partager ce type de solution personnes est a l’abri d’un enfant qui installe des app du genre sur son smartphone + le réseau maison pour avoir un peu plus d’argent de poche et cela sans prendre de précaution. A ce titre votre article sans lien ou recommandations simple a mettre en place pour la sécurité et je parle bien d’un tuto simple step by step pas d’une réponse en commentaire pose vraiment problème.
Ça vaut aussi sur des articles domotique traditionnelle car plus il y a d’objet connecter plus la surface d’attaque pour les hacker et donc de risques pour la cyber-securite et important pour les utilisateurs. Veuillez donc considérer un article qui casualise la mise en place d’un réseau domestique sécurisé et quelques recommandations comme quelque chose de nécessaire et a prioriser merci.
Bonjour,
Il se passe quoi si quelqu’un utilise la solution earnapp pour allez sur des sites illégaux (pédo… etc).
A réfléchir je pense
Bonjour Cedric.
J’ai essayé d’installer Docker sur mon DS216+ mais apparemment il faut une version 7.1 du DSM. La dernière version du mien semble être 7.0.1. Si tu connais une solution pour résoudre ce problème ça serait top sinon existe t’il une autre alternative pour installer earn app sur Nas en utilisant peu de ressources.
Merci d’avance.
Un autre Cedric
Bonjour, j’ai un problème avec mon ip qui est considérée comme un datacenter donc refusée.
je suis chez Bouygues.
La même instal avac une ip chez free fonctionne sur ubuntu.
j’ai 2 ports eth sur mon syno 218+ (le 2eme rajouté par un adaptateur usb) je ne sais pas sur lequel le docker se connecte. Bouygues ou free.
pour l’instant je sèche.
Bonjour. Docker utilise par défaut le port ethernet n°1 du NAS. Il faut peut être inverser les deux connexions, du coup.
Merci Cédric pour ce post !!!
Bonjour, super le tuto et encore plus facile quand on suit les étapes bien détaillées ! Merci et je me permets de vous partager mon lien de parrainage : https://earnapp.com/i/8z3ghm9
Pour le tutoriel sur Honeygain, je me demande bien sûr quelle machine allez vous commencer. Raspberry Pi, ou Nas Sygnology.
Bonjour. Ce sera sur Docker. Honeygain ne propose que cette solution sous Linux. Pour les autres installations (Windows, Mac, smartphone), l’installation est tellement simple qu’elle ne nécessite pas de guide. Mais ce tuto sera aussi l’occasion de faire le point sur le service en question, comme j’avais fait avec EarnApp dans le premier article.
Merci, j’ai hâte
Bonjour,
Peut on cumuler earnapp et honeygain ?
Ou il faut obligatoirement choisir l’un des deux ?
Hello ! Oui tu peux cumuler sans problème EarnApp et Honeygain, c’est ce que je fais ! J’ai 2 x 2 machines de chaque sur des IP différentes, ca tourne sans problème.
C’est en ligne ici :)
J’ai pu monter un premier docker qui tourne sans problème, mais impossible d’en rajouter d’autres. J’ai l’impression d’après le journal qu’il travaille, mais rien ne remonte dans l’interface (coche rouge). J’ai bien tenté de faire un nouveau bridge, mais pas mieux… Du coup ça bosse, mais les gains sont assez minimes avec un seul. Mais sans rien faire c’est toujours ça !
idem UUID renseigné mais device ne remonte pas dans le dashboard…. Rageant…
Bonsoir à tous,
je rencontre hélas le même problème que tout le monde ici, en modalité docker DSM 7.1 sur un DS415+, le container tourne masi EarnApp le considére offline.
Pour expérience, l’aplication EarnApp sous Android en modalité Wifi (avec le même UUID donc) fait bien passer le service comme online (vu dashboard EarnApp)
Mes deux sous, les logs applicatif du container sont remplis d’erreur de type connection timeout
Exemple : 2022-02-24 17:06:15.869 ERR: [code=ECONNABORTED] Error: timeout of 60000ms exceeded
Comme cela fonctionne en Wifi depuis yune device Android, cela implique que c’est la sortie du NAS vers la BOX qui ne fonctionne pas.
j’ai tenté la proposition de déclarer un bridge spécifique à ce container, masi cela ne change strictement rien
A creuser, ce qui se cache dérriere ces connections timeout en boucle
Bonjour, est-il possible d’installer l’appli (earnapp) sur docker desktop (windows 10 et 11) avec wsl2.
si quelqu’un à une idée de la procédure car je n’ai pas réussi :-(
Hello,
J’avance mais limite des mes compétences Docker:
Au sein du container, il semble ne pas y avoir défini de résolution DNS, ce qui explique qu’en boucle on reçoit des erreurs : EAI_AGAIN (Rien à voir avec le soft : erreur de résolution)
Pour illustration, dans un container récupéré pour faire tourner domoticz , une résolution wget de google.com fonctionne nickel, or dans ce container, la résolution wget répond :
wget: unable to resolve host address ‘www.google.com’
Bref, si quelqu’un sait comment configurer correctement les DNS en Docker (Via DSM)
Hello Cedric,
Merci pour ce tuto, vraiment très clair.
Je me permets de mettre un com parce que tu indiques qu’il est possible de mettre images docker sur le meme Nas sur la meme IP.
J’ai fait un link avec mon android, aucun soucis tout fonctionne.
Par contre j’ai installé earnapp sur le pc pour récuperer un identifiant supplémenaire mais celui ci me dit que le device est deja linked une fois que je lance le second docker.
Tu aurais une idée ?
Hello ! Si je suis bien ta procédure, tu as bien deux identifiants différents, un récupéré sur ton Android, l’autre sur ton PC. Quand tu lances tes deux dockers, tes apps Android et Windows sont bien coupées ?
Quant au message te disant que le device est déjà linked, normalement ca n’arrive que quand tu tentes de linker de nouveau le même device. Si ton android ou ton windows sont déjà ajoutés sur EarnApp, tu n’as pas à ajouter ton Docker sur EarnApp, car il utilise l’identifiant d’un appareil déjà linké. Ca ne devrait pas poser de soucis.
Bonjour et merci Cédric !
une petite question, j’utilise un VPN sur mon nas synology.
J’ai testé EarnApp avec une machine virtuelle et tout fonctionne. SI je passe par Docker, l’adresse IP remontée par le dashboard est l’adresse IP du VPN. Y’a t’il un moyen de résoudre mon problème ?
Hello ! Malheureusement Docker semble utiliser la connexion principale du NAS, sans possibilité de la modifier :/ Ca m’a posé problème pour avoir des Docker sur la ligne ADSL, et d’autres sur la ligne 4G, mon Nas ayant deux ports ethernet. Pas moyen d’indiquer quelle carte utiliser.
Du coup je l’ai résolu en installant une machine virtuelle Debian, et en installant dessus Docker + Portainer, pour simplifier la gestion.
J’ai donc:
– des machines Docker utilisant le Docker intégré au Synology, qui passent par la connexion principale du Nas, c’est à dire l’ADSL
– des machines Dockers dans la VM, qui elles passent par la connexion 4G du Nas, car là en revanche pour une VM il est très simple d’indiquer la carte réseau à utiliser
C’est pas le plus simple, mais faute de mieux pour l’instant, ca fait le boulot.
La version du container docker Honeygain de fazalfarhan01 est identifée comme un trojan de risque élevé par Synology Threat prévention, avec la signature ET MALWARE Observed Honeygain Domain (api .honeygain .com in TLS SNI).
Le malware identifé par CISCO (http://blog.talosintelligence.com/2021/08/proxyware-abuse.html).
A titre d’exemple, le container officiel de Earnapp n’est absolument par remonté par Threat Prevention.
Méfiance…
Pour ceux qui ont le soucis de remontée dans Earnapp avec Synology.
L’ID dans l’interface Web Earnapp n’est pas complete (tronquée)
Perso j’ai install EarnApp sur un linux. j’ai récupéré l’ID complet et j’ai indiqué ca dans mon syno. Ensuite j’ai supprimé earnapp de mon Linux :)
Pour moi ça ne marche pas j’ai l’erreur suivante dans les logs
invalidate req: invalid uuid: sdk-android-XXXX
pourtant cet ID est bien présent dans mon dashboard et issu de l’appli androidf
Bonjour
Pour moi également le device docker lite ne remonte pas dans le dahsboard bien que le UUID soit bon et présent dans le dashboard (généré par l’app android).
Dans les logs j’ai cette erreur : invalidate req: invalid uuid: sdk-android-XXXXXXX.
A noter que l’IP d’installation de l’app sous android a été rejeté. Je ne sais pas si c’est à cause de ça que ça ne fonctionne pas. On dirait qu’il ne prend pas la nouvelle IP publique utilisée par docker.
Effectivement la méthode de PELOPS fonctionne
J’ai finalement utilisé la méthode d’un contener LXC sur proxmox.
L’image docker lite n’est pas à jour et il y a un avertissement dans la console qui dit que l’app n’est pas à jour et qu’elle ne pourra pas se mettre de suite à jour.
La sécurité étant importante, j’ai préféré du coup utiliser une vrai install debian sur un contener (et non uyne VM) qu’une image docker non à jour
bonjour,
je suis sous synology DS720+ et docker
mais après plusieurs essais : rien ne fonctionne
en fin de log j’ai cela :
023-03-10 09:42:15.491 ERR: perr tun_start {}
2023-03-10 09:42:15.491 NOTICE: cmd_tun http://www.google.fr:443
2023-03-10 09:42:19.608 NOTICE: cmd_tun_close 2
Je précise que sur 1 Pc Windows et 1 RPI3, cela fonctionne bien
merci
bonjour @loic et @pelops
avec l’image officielle ou Lite sur Synology Docker ?
Merci