Configurer automatiquement Nginx avec Docker et Docker-gen

Dans cet article, je vous propose de mettre en place un serveur web NGINX qui va servir de frontal pour vos différents conteneurs Docker.

La solution retenu permet de configurer automatiquement NGINX à partir des images et containers démarrés par Docker sans opération manuelle de votre part sur Nginx. Nous utilisons l’outil docker-gen pour la configuration de nginx. Un deuxième article sera bientôt disponible pour activer https et vous aider à gérer les certificats automatiquement avec Let’s Encrypt

Lire la suite

Docker et ses networks

Arrivé avec la version 1.9 en octobre 2015, les networks de Docker ont apporté une meilleur gestion de la configuration réseaux et remplace aisément l’ancienne fonctionnalités de linking de Docker.

La gestion des networks a été égalementajoutée à la version 2 de docker-compose, ce qui aurait dû en accélérer l’adoption. Pourtant, on trouve beaucoup d’exemples récents n’utilisant pas encore les networks, et trop de personnes ne savent pas utiliser pleinement.

Je vous propose donc un petit tour d’horizon des fonctionnalités apportées par Docker Network

Lire la suite

Angular 2 annonce enfin une version stable

angular2La version 2 du désormais célèbre framework Angular développé par Google arrive en version stable.

Après une première version très populaire, la communauté Angular a décidé de renouveler son framework et d’innover à nouveau (quitte à rendre incompatible les versions et à déstabiliser les adaptes de la première version)

 

Au programme de cette nouvelle version:

  • L’utilisation de TypeScript est désormais recommandée (il s’agit surcouche à Javascript respectant le standard ECMAScript 6, un trans-compilation permet d’obtenir du javascript pour les anciens navigateurs)
  • Angular 2 est WebComponent ready, il repose au maximum sur ce nouveau standard w3c, et assure la rétro-compatibilité si les Web Components ne sont pas supportés. Pour simplifier, les directives dans Angular v2 sont désormais des web components
  • Le framework est plus modulaire, le coeur est plus léger, le reste se charge à la volée via des imports et/ou des annotations (on sent l’influence des développeurs Java)
  • le scope et le rootScope disparaisent (enfin presque), et c’est une bonne chose, les développeurs en avait un mauvais usage. Le scope est désormais lié au contexte des composants
  • La version 2 d’angular est plus performant (grâce à la séparation par composant notamment)
  • Le rendu côté serveur est désormais possible (pour une meilleur performance et  meilleur visibilité SEO)

Malheureusement, la nouveauté a un coût, il vous sera très difficile de migrer une application Angular 1 vers Angular 2, surtout si vous utilisiez intensivement les scopes. Les applications utilisant les recommandations de John Papa devront être les plus facile à migrer, mais ne pourront pas se faire automatiquement.

Pour en savoir plus, je vous invite à lire

 

 

Le déclin des serveurs d’applications Java

tomcat-dockerLes serveurs d’applications Java sont-ils en train de mourir à cause de Docker? c’est la question que s’est posé James Strachan dans son article écrit en anglais: the decline of Java application servers when using docker containers
Trouvant l’article particulièrement intéressant, j’ai demandé l’autorisation à son auteur pour le traduire afin de vous le proposer en français. L’article est traduit le plus fidèlement possible, seul la conclusion a été raccourcie et adaptée mais elle reste conforme à la vision de l’auteur initial.

Depuis des années, l’éco-système Java utilise les serveurs d’application. Le principe d’un serveur d’application Java (Servlet, JEE ou OSGi) repose sur un processus Java dans lequel on déploie & retire du code grâce à une archive de déploiement (jar, war, ear, bundle, etc). Le processus Java reste donc actif dans le temps et s’adapte au code. Les serveurs d’application ont donc le plus souvent un répertoire ou l’on dépose  une archive qui va modifier le code en cours d’exécution.

Lire la suite