Je souhaite obtenir des informations sur une formation complète concernant le thème DIVI dispensé
par un organisme de formation certifié par l’état.
Que la formation soit finançable par mon CPF (idéalement) ou autre


Je dois admettre que je suis loin d’embaucher le meilleur développeur Web du monde, mais je fais de mon mieux. De plus, je développe principalement pour moi-même, à part les très rares et minuscules extraits de code WordPress PHP que j’ai partagés avec mes amis encore plus incompétents sur le plan technologique. J’ai récemment dû installer ce développeur web fedora pour un projet sur l’un de mes sites web.


Cela dit, j’étais rouillé et il était difficile de trouver le bon environnement de développement local. J’utilise habituellement juste LocalWP de FlyWheel et atome. Cela fonctionne bien pour mes projets de personnalisation WordPress beaucoup plus petits qui ne semblent jamais aller au-delà d’une seule page de code, mais cette fois c’était un projet plus complexe et les limites de LocalWP sont rapidement devenues évidentes.

Le plugin inclut l’utilisation d’une API externe. Non seulement je devrais pouvoir appeler l’API, mais l’API devrait également pouvoir atteindre mon serveur local. J’ai un VPS (Serveur privé virtuel) traîner mais pousser constamment du code dessus est ennuyeux étant donné la vitesse de téléchargement limitée de ma connexion.


Certaines personnes m’ont suggéré d’utiliser un outil appelé Ngrok pour rendre mon site Web local accessible à Internet, mais l’accès au site Web à partir de l’URL fournie était extrêmement lent. Je soupçonne que ma connexion Internet était à blâmer ici.

Alors je me suis tourné vers Docker

Après le même pneu avec XAMPP et Bitnami J’ai juste abandonné et je me suis tourné vers le visage docker. Un peu exagéré, je sais, mais j’étais vraiment désespéré. Pour ceux d’entre vous qui découvrent Docker, c’est comme le proverbial éléphant hindou qui vous permet de déployer rapidement des applications dans des conteneurs isolés. Je l’utilise déjà pour gérer mon serveur multimédia, alors j’aime penser que je suis assez bon dans ce domaine, même si c’est beaucoup plus facile qu’il n’y paraît que je suis sur le point de le démontrer.

j’utilise Ubuntu Je suppose donc que vous utilisez également Ubuntu. Je veux dire le vrai Ubuntu ici et non WSL Ubuntu. La première chose à faire est d’installer Docker. Ouvrez votre terminal et exécutez les commandes suivantes:

  • N’installez pas Docker à partir des référentiels Ubuntu. Bien que cela fonctionnera probablement, ce sont généralement quelques versions qui sont nulles.
  • Ajoutez Official Docker PPA et installez la dernière version de Docker à partir de PPA: wget -qO- https://get.docker.com/ | Sch ‘
  • Ajoutez l’utilisateur actuel à Docker: sudo usermod -aG docker $ USER
  • Redémarrer

C’est tout ce que vous avez à faire et Docker est installé. Je voulais utiliser un environnement LEMP donc je viens de trouver un conteneur LEMP pré-emballé sur Github. Vous n’avez rien à télécharger. Vous exécutez simplement une commande spécifique qui vous permet d’utiliser cette image. Dans le Terminal, accédez au dossier dans lequel vous souhaitez héberger vos fichiers. Par exemple, mon projet était dans ~ / source / woocommerce /.

  • Docker run -p 8080: 80 -p 8888: 88 -v pwd: / var / www / html -name lemp -d adhocore / lemp: 7.4

Et juste comme ça, vous avez installé et préconfiguré l’intégralité de la pile LEMP. Ensuite, j’ai téléchargé et installé WordPress. C’était une déception car je ne pouvais pas installer de plugins WordPress en raison de problèmes d’autorisation de fichier.

Nginx s’attend à ce que les fichiers appartiennent aux données WWW de l’utilisateur dans le conteneur. Pour résoudre ce problème, j’ai ouvert un terminal et l’ai connecté au terminal du conteneur. N’oubliez pas que le conteneur est presque comme un VPS sur votre ordinateur et qu’il a donc son propre shell.

  • docker exec -it lemp / bin / bash
  • Dans le terminal, j’ai ensuite résolu les problèmes d’autorisation en exécutant: chown www-data: ww-data -R / var / www / html

C’était ce que mon environnement WordPress local exécutait sur localhost: 8080, mais rappelez-vous que tout le but était de rendre mon environnement de développement local accessible à Internet.

Entrez ZOL et IPV6

ZOL a distribué des blocs IPV6 / 64. Vous n’avez rien à faire sur Fibroniks, IPV6 est activé par défaut. Vous pouvez le confirmer en recherchant sur Google « mon adresse IP ». S’il s’agit d’une adresse IP avec des lettres et / ou des caractères, vous êtes prêt à partir. Sinon, cela signifie probablement qu’il y a une mauvaise configuration quelque part. Comme il s’agit de fibre optique, vous pouvez probablement vous en tirer de toute façon avec Ngrok.

Avec les Wibroniks à l’extérieur, vous devez relier votre routeur sans fil. Les instructions exactes varient d’un routeur à l’autre, mais ce n’est pas sorcier. Quelques clics clés et un redémarrage et vous devriez être prêt à partir. Quoi qu’il en soit, si vous gâchez quelque chose, vous pouvez simplement appuyer sur le bouton de réinitialisation du routeur et réessayer.

Les adresses IPV6 peuvent être acheminées, c’est-à-dire accessibles via Internet. Le protocole vise à garantir qu’il n’y a pas de barrières entre les appareils et Internet, contrairement à IPV4, qui utilise NAT tout le temps. Je déteste le NAT. Dès que nous avons une adresse IPV6, cela signifie que notre site Web est désormais accessible via Internet avec quelques modifications.

Dès que vous avez activé IPV6 dans votre LAN, vous pouvez également l’activer dans Docker. Pour ce faire, ouvrez votre terminal:

  • Ouvrez ou créez un fichier daemon.json pour Docker: sudo nano /etc/docker/daemon.json
  • Collez le contenu suivant:

{
« IPv6 »: vrai,
« Fixed-cidr-v6 »: « fd00 :: / 80 »
}}

  • Enregistrez et fermez le fichier. Appuyez sur Ctrl + x, puis sur Entrée.
  • Redémarrez votre ordinateur
  • Si vous ouvrez maintenant votre navigateur et visitez http: //[::]: 8080 Vous devriez pouvoir voir votre site web dans mon cas, mon site WordPress
  • Vous pouvez également consulter votre site Web à l’adresse http: //[YOUR_IPV6_IP]: 8080

Votre site Web est maintenant disponible sur Internet. Eh bien, seulement une partie de celui-ci. Le fait est que, comme la plupart des gens sur Internet, l’API avec laquelle je travaillais avait une adresse IPV4 et ne pouvait voir que les ordinateurs IPV6. Pour résoudre ce problème, j’ai utilisé Cloudflare.

Cloudflare à la rescousse

Cloudflare est un pare-feu d’application Web. Ainsi, si un nom de domaine comme example.com est hébergé avec eux, les ordinateurs ne verront que l’adresse IP Cloudflare. Le trafic vers example.com sera ensuite d’abord transmis à votre ordinateur via Cloudflare. Cloudflare prend en charge IPV4 et IPV6. J’ai donc configuré mon domaine example.com avec eux et mis en place des enregistrements AAA pour foo.example.com, où foo est le sous-domaine que j’utilise pour mes projets.

Maintenant, lorsque je visite foo.example.com:8080, je vois mon site WordPress. Mais ensuite, je suis tombé sur un crochet et même si j’ai pu accéder à mon site Web en utilisant cette méthode, je n’ai pas pu activer le cloud orange que vous pouvez utiliser pour activer le proxy. Ma solution Cloudflare n’avait donc pas encore résolu le problème.

Pour résoudre ce problème, j’avais deux options:

  1. Revenez à Docker et changez le port de surveillance de mon serveur LEMP en: 80 au lieu de: 8080:
    • Ensuite, je devrais activer le proxy dans CloudFlare, activer Flexible SSL, puis configurer des règles de page qui me permettent de rediriger tout le trafic vers la version https du site local
    • C’était facile et n’impliquerait aucun autre logiciel, mais il y a un inconvénient majeur. Tout mon trafic, y compris le trafic local. Le résultat serait un Internet lent comme la configuration de Ngrok. Utiliser cette solution serait stupide de raconter la liste.
  2. Utilisez un proxy inverse comme Caddy. C’est ce que j’ai fait. Maintenant, il était trivial de mettre en place Caddy. J’ai juste exécuté les commandes suivantes:
    • echo « deb [trusted=yes] https://apt.fury.io/caddy/ / ”| sudo tee -a /etc/apt/sources.list.d/caddy-fury.list
    • mise à jour sudo apt
    • sudo apt install caddy
    • Configurer le proxy inverse: sudo caddy –reverse-proxy -de foo.example.com -à localhost: 80
    • C’est ça. Vous pouvez maintenant simplement définir un enregistrement AAA dans Cloudflare qui pointe vers foo.example.com et activer ce nuage orange
    • Pour empêcher le trafic local d’être envoyé via Cloudflare, vous devez modifier le fichier / etc / host et ajouter les deux enregistrements suivants:

127.0.0.1 foo.example.com # Site local
:: 1 foo.example.com # site local

Caddy redirige également tout le trafic localement via HTTPS. Du côté de Cloudflare, les hôtes IP4 se voient attribuer une adresse IPV4, puis Cloudflare envoie le trafic vers notre ordinateur via IPV6, la personne à l’autre bout n’étant pas plus intelligente. Même notre API peut nous rappeler à https://foo.example.com/end-point.

rompre

Avec toutes ces pannes de courant ZESA, et parfois de routine, les adresses IPV6 changent beaucoup. Il serait fastidieux de rechercher notre adresse IP sur Google, de la copier, de se connecter à Cloudflare et de la mettre à jour. Heureusement, Ubuntu a été fait pour des choses comme ça. Tout ce que nous avons à faire est de télécharger un client DDNS depuis Github et de le configurer via Cron pour vérifier régulièrement l’adresse IP et la mettre à jour lorsque des modifications sont apportées à Cloudflare. Vous pouvez consulter le client que j’utilise ici.

Il ne restait plus qu’à télécharger Atom et à se mettre au travail, ce que j’ai fait. L’environnement de développement a bien fonctionné. Cela semble long et compliqué, mais l’ensemble du processus a pris moins d’une heure du début à la fin.

Comment votre développement local actuel est-il structuré?

NB:

Il n’était absolument pas nécessaire d’activer l’IPV6 de Docker, comme je l’ai appris plus tard après avoir perdu du temps dessus. Parfois, vous apprenez les choses à la dure. Pour désactiver IPV6 dans Docker, supprimez simplement les entrées ci-dessus et redémarrez.

Il est également important de noter que vous pouvez utiliser Xampp avec Cady sans Docker et que vous en avez terminé. Mais où est le plaisir?

Si vous êtes un développeur à temps partiel comme moi qui fait rarement ces choses, vous pouvez facilement supprimer les conteneurs, le caddie, le docker et le dossier de projet et votre système reviendra à son état d’origine.


Recharge rapide du temps d’antenne NetOne, Econet et Telecel



Source link

Recent Posts