Développement

Docker exec un jour, docker exec toujours !

S'il y a bien une astuce Docker à retenir quand on l'utilise sur son environnement de développement, c'est bien docker exec. Cette commande permet d'exécuter une commande dans un conteneur existant. Comme démontré avec des exemples concrets précédemment, cela permet de créer une collection Solr ou bien de faire un dump MySQL. Et si un nouveau conteneur autonome avait été créé lors de la création d'un cluster Cassandra pour créer une table, il aurait été possible d'utiliser le conteneur d'un…
Lire d'avantage
Développement

Dump MySQL avec un LAMP conteneurisé

L'article sur la conteneurisation d'un LAMP avec Docker décrit comment initialiser la base de données MySQL et comment restaurer des données précédemment sauvegardées. Ces procédures sont suffisantes pour commencer un projet LAMP avec Docker. Mais comment sauvegarder les données du LAMP conteneurisé avec Docker ? C'est assez simple. La solution met en œuvre les liens et les volumes Docker. Voici la commande pour réaliser un dump d'une base de données MySQL se nommant mysite et se trouvant dans un conteneur…
Lire d'avantage
Développement

Composer avec Docker

Le PHP a souvent l'image d'un langage destiné aux bricoleurs. Cela était peut-être un peu vrai au tout début. Mais avec le temps, il s'équipe d'outils d'industrialisation tel que Composer. C'est un outil de gestion de dépendances écrit en PHP et publié sous licence Open Source. Le dépôt utilisé par défaut pour télécharger les dépendances est celui de Packagist. Pour l'exécuter, il faut avoir PHP en ligne de commande. Néanmoins, un développeur l'a empaqueté dans un conteneur Docker et est…
Lire d'avantage
Conception

Swagger est mort, vive l’Open API Initiative !

Aujourd'hui, nous n'allons pas parler de RAML mais plutôt de Swagger. Ce framework se compose d'une spécification ainsi qu'un ensemble d'implémentations pour décrire, produire, consommer et visualiser des APIs RESTful. Même si l'adoption de RAML progresse, Swagger reste la solution la plus connue et répandue pour documenter vos APIs RESTful. Ce ne sont d'ailleurs pas les seuls solutions car il existe bien d'autres DSL d'APIs RESTful. Alors que RAML permet d'avoir une approche Top-Down (Contract-First), Swagger est initialement orienté Bottom-Up…
Lire d'avantage
Développement

PHP 7.0.0

C'est aujourd'hui le 3 décembre 2015 que la version finale de PHP a été rendue publique. Le principal objectif de cette version est d'améliorer les performances. L'équipe de développement annonce que PHP 7 est deux fois plus rapide que PHP 5 et consomme 1/3 de mémoire en moins. Il faut toujours rester prudent avec ce genre de chiffre. Néanmoins, l'annonce mérite de faire quelques tests. Le langage propose également quelques améliorations : Opérateur de comparaison combinée Spaceship operator <=> :…
Lire d'avantage
Développement

Codeurs en Seine 2015, trois et ça continue !

La semaine dernière, s'est tenu la troisième édition de Codeurs en Seine. Comme lors de Codeurs en Seine 2014, il y avait 4 tracks : Web, Agile, Java et Tech. La track innovation ayant été renommée en Tech. En parallèle, il y avait 2 ateliers découverte : ELK le matin et Spark l'après-midi. Il y avait donc du choix ! Pour rappel, Codeurs en Seine est une conférence gratuite sur une journée. Voici les présentations auxquelles j'ai pu assister :…
Lire d'avantage
Développement

SolrCloud avec Docker Compose

Cet article sur la mise en place de SolrCloud fait écho à celui sur le cluster Cassandra avec Docker. Pour comprendre certains points abordés ci-dessous, il est nécessaire de connaitre la terminologie SolrCloud. Premiers essais avec Docker Comme précédemment, la première étape se résume à valider les images et la communication entre les conteneurs du cluster du moteur d'indexation via la ligne de commande docker. Comme souvent, l'équipe Docker propose une image officielle pour Solr avec un mode distribué qui…
Lire d'avantage
Conception

RAML – bientôt en version 1.0

Le projet RAML vient d'annoncer la Release Candidate de la version La spécification RAML est disponible sur le site officiel. Si vous de connaissez pas encore RAML, il n'est pas encore trop tard. C'est un langage de description d'une API RESTful. Si Swagger est une des solutions la plus pertinente et la plus utilisée pour documenter une API existante, ce n'est pas le cas pour une nouvelle API. RAML a été créé pour combler ce manque et se place au…
Lire d'avantage
Développement

Git – le b.a.-ba – mémoriser son mot de passe

Cela fait un petit moment qu'il n'y a pas eu d'article dans la série Git – le Comment faire pour ne pas à avoir à saisir son identifiant et son mot de passe à chaque fois que Git interagit avec le serveur distant ? Il existe plusieurs façons de faire. Découvrons les 3 plus simples. Utilisation du Credential Helper La première solution est valable depuis Git Le credential helper permet de stocker en mémoire pendant un temps déterminé le mot…
Lire d'avantage
Développement

phpunit – détecter les tests trop lents avec SpeedTrap

Introduction Les tests unitaires sont exécutés très souvent. Il est important que le temps d'exécution soit très court pour deux raisons : Avoir le retour sur leurs status le plus rapidement possible Ne pas dissuader les développeurs de les lancer (même si la plateforme d'intégration est le garde-fou des tests automatisés) Cependant, avec le temps, ces tests sont souvent de plus en plus lents à s'exécuter. Parfois, ce temps augmente significativement suite à l'ajout de nouveaux tests ou de nouvelles…
Lire d'avantage