Archive pour janvier 2019
Utilisation du compilateur nuitka pour python3 sur Alpine Linux ARMHF (musl)
Motivation pidoctor est écrit en Python (car il n'y avait pas de moyen facile de faire fonctionner Crystal sur ARMHF / musl). Cela signifie une dépendance à Python - ce qui ajoute une surcharge. Je soupçonne que cette surcharge est la raison pour laquelle pidoctor ne fonctionne pas sur les Raspberry Pi de 256 MB - parce que la RAM est épuisée...
WeiterlesenDéboguer le processus de démarrage d'Alpine
Comme indiqué dans mon précédent article, Alpine Linux passe par plusieurs étapes lors du démarrage. Juste après avoir monté le média de démarrage, et l'avoir analysé pour les apkovl (avec nlplug-findfs), il y a une option pour obtenir une console, en mettant $SINGLEMODE à yes. Mettre SINGLEMODE à oui est facile, vous ajoutez simplement le mot "single"...
Weiterlesenkemal-session ne persiste pas les données
https://github.com/kemalcr/kemal-session Analysez ce qui se passe avec votre cookie de session. Dans mon cas, le cookie de session a été réinitialisé chaque fois que j'ai voulu me connecter. J'ai réalisé que mon idée de nettoyer l'ancienne session en tant que première déclaration après une connexion réussie, avant de configurer la nouvelle session, n'est pas une bonne idée. Je soupçonne que le...
WeiterlesenUtilisation de modules en cristal
Au fur et à mesure que votre application se développe, vous souhaitez passer d'un gros fichier .cr à une séparation de votre code en fichiers plus petits. Vous pouvez utiliser require depuis votre fichier .cr principal pour ajouter du code provenant d'autres fichiers : require "./tools/*" Cette instruction ajoutera le code du répertoire tools, par rapport à votre fichier .cr principal. Cela va...
WeiterlesenLa portée d'ecr dans crystal : ou comment passer des variables et des objets dans les modèles ECR ?
En tant que débutant dans le langage Crystal, j'ai encore du mal à me faire une idée de certains de ses concepts et à me familiariser avec le codage en Crystal. Lorsque je rencontre des problèmes difficiles, que je résous ou que je commence à comprendre, j'en parle sur mon blog, afin que d'autres puissent en profiter - comme le manque de documentation...
WeiterlesenRoute & Redirection avec envoy
Un exemple de envoy.yaml montrant comment router et rediriger. Il y a différentes options, voir ici https://www.envoyproxy.io/docs/envoy/latest/api-v2/api/v2/route/route.proto#route-redirectaction Cet envoy.yaml route /taxgod et /taxgod/ (le second pourrait probablement être omis parce que le premier devrait aussi correspondre, je pense) vers un nouveau port et un protocole différent. /picockpit est simplement redirigé vers / et enfin...
WeiterlesenEnvoy routage et réécriture snippet
Il est possible de réécrire des URLs avec Envoy pour le backend. Veuillez noter que la sortie HTML doit avoir les routes appropriées ! (C'est pourquoi je ne vais pas investiguer plus loin dans cette direction). REF : https://www.envoyproxy.io/docs/envoy/latest/api-v2/api/v2/route/route.proto#route-route Notez aussi que la chaîne sera rendue littéralement pour direct_response -> body -> inline_string,...
Weiterlesenenvoy comme proxy frontal http 2 - activer http 2 pour envoy (aka h2)
Par défaut, envoy n'est pas configuré pour établir des connexions avec les clients qui se connectent à lui avec le nouveau HTTP/2. HTTP/2 est optimisé pour le web moderne, avec des en-têtes binaires, etc. - une vitesse plus élevée. Puisque envoy est capable de parler de HTTP/2 aux clients, il est évident de le configurer. Et la configuration...
Weiterlesenenvoy force SSL exemple envoy.yaml
ressources_statiques : auditeurs : - address : socket_address : address : 0.0.0.0 port_value : 80 filter_chains : - filters : - name : envoy.http_connection_manager config : codec_type : auto stat_prefix : ingress_http route_config : virtual_hosts : - nom : backend domaines : ["*"] routes : - match : { prefix : "/" } redirect : path_redirect : "/" https_redirect : true http_filters : - name : envoy.router config : {} - address : socket_address : address : 0.0.0.0 port_value : 443 filter_chains : - tls_context : ...
WeiterlesenConfiguration d'envoy comme proxy frontal sur Docker avec communication vers d'autres conteneurs Docker
J'ai déjà des conteneurs existants pour lesquels je veux utiliser envoy comme proxy et gestionnaire https. J'apprends à utiliser envoy, et je partage ici certaines de mes connaissances, car la documentation est un peu confuse au départ. Mon conteneur déjà existant s'appelle "taxgod" - il exécute un Crystal...
Weiterlesen