Datafari on Docker

NOTE: This is the English version. For the French version, please scroll down.

UPDATE 08/08/16 : update of the post for Datafari v3

UPDATE 01/04/16 : beware that there is a bug with Docker toolbox 1.9.1 for the use of Cassandra (which is a component of Datafari). Update your Docker to 1.10+
https://github.com/docker/docker/issues/18180

This time, we’ll talk about the release of Datafari on Docker.

If you don’t know it yet, Docker is an emulation mechanism that works at a low level of the Linux kernel, hence making it faster than widespread technologies of virtualisation such as VMWare. As its name suggests, you can “dock” applications in an isolated manner, and it will work as a standalone system on your OS.

Although we recommend installing Datafari alone on systems when used in a productive environment, using Datafari on Docker allows you to quickly install Datafari without impacting the configuration and packages in place in your system. Just download the docker image, and the remainder is being taken care of by Docker.

To run it, start the following command line:

docker pull datafari/datafariv3 docker run -t -i -p 8080:8080 datafari/datafariv3

Note that once you trigger this command line, it automatically starts the datafari server, which you can access from your browser using :

http://localhost:8080/Datafari

If you need to change the port from which you access the datafari webpages, change in the command line the first part of the [host_port]:[container_port] parameter.

If you care a bit about security and want to change the credentials (thus requiring to edit the Datafari config files), or if you want to play with the Solr config files within the Datafari image, you need to connect to this image. By default, you can do so via the standard docker mechanism: ssh. As a reminder, check this page explaining the procedure to connect to your docker image via SSH.

The docker image relies internally on a Debian environnement, but the beauty of Docker is that this image can work on any OS that can run the Docker agent. This means the image will run on Windows, CentOS, Ubuntu, Mac, etc…

Note that we provide you with 2 flavors of the Datafari docker image:

1. The one available on the docker.com marketplace, which is a docker image. This image is run using the above mentioned command line, but is not flexible and uses a fixed version of Datafari.

2. The one available on github, which is not an docker image but a docker file. To run it, the command lines are different:
Download the docker file and store it in a folder.
From this folder, start the following command:

sudo docker build -t datafari .

Now you can run your datafari docker image:

sudo docker run -p 8080:8080 datafari 

This build file is more flexible as it allows you to play with docker parameters. Plus, it always uses the latest version of Datafari since it does a wget on the Datafari rep. Also, it will give you hints on the way we built our own Datafari docker image.

Again, we are always glad to hear feedback from you, so if please drop a message here, or do a quick tweet about it ūüôā

French Version:

UPDATE 08/08/16 : Mise à jour du post pour Datafari v3

UPDATE 01/04/16 : Fa√ģtes attention √† ne pas utiliser la version 1.9.1 de Docker toolbox. Un bug est pr√©sent qui emp√™che le fonctionnement de Cassandra dans les containers (ce qui est le cas de Datafari). Il faut mettre √† jour Docker Toolbox √† partir de 1.10+
https://github.com/docker/docker/issues/18180

Dans cette entr√©e, nous parlerons de l’image Docker Datafari.

Si vous ne connaissez pas encore Docker, il s’agit d’un m√©canisme d’√©mulation qui op√®re √† bas niveau dans le noyau Linux, le rendant plus rapide que les technologies r√©pandues de virtualisation telles que VMWare. Comme son nom le sugg√®re, vous pouvez “docker” des applications de fa√ßon isol√©e (√† l’image des containers dans les docks des ports), et une application dock√©e fonctionnera de mani√®re isol√©e et autonome dans votre syst√®me d’exploitation.

Bien que dans les environnements de production, nous recommandions d’installer Datafari dans un syst√®me d√©di√©, l’utilisation de l’image Datafari Docker vous permet de rapidement installer Datafari sans toucher √† la configuration de votre syst√®me ni √† ses packages en place. Vous avez juste besoin de t√©l√©charger l’image docker, et Docker s’occupe du reste.

Pour lancer l’image, executer la commande suivante:

docker pull datafari/datafariv3 docker run -t -i -p 8080:8080 datafari/datafariv3

Lorsque vous lancez cette commande, le serveur Datafari se lance automatiquement, et vous pouvez alors y acc√©der depuis votre navigateur internet, √† l’url suivante:

http://localhost:8080/Datafari

Si vous voulez changer le port auquel vous connecter depuis le navigateur, changer dans la ligne de commande la première partie du paramètre [host_port]:[container_port].

Si vous vous souciez un peu de la s√©curit√© et que vous voulez changer les codes d’acc√®s (ce qui n√©cessite d’√©diter des fichiers de config de Datafari), ou si par exemple vous voulez jouer avec les fichiers de config du Solr de Datafari, vous devez vous connecter √† cette image. Par d√©faut, vous le fa√ģtes en utilisant le m√©canisme standard de Docker: ssh. Pour rappel, vous pouvez consulter cette page qui explique la proc√©dure pour se connecter √† son image docker via SSH.

Notre image Docker utilise en interne un environnement Debian, mais la beaut√© de Docker fait que cette image pourra tourner sous tout OS supportant l’agent Docker. Et donc notre image peut tourner sous Windows, Centos, Ubuntu, Mac, etc…

Nous vous fournissons Datafari sous Docker sous deux formes::

1. L’image Docker, disponible sur la place de march√© de docker.com. Cette image s’execute par la commande mentionn√©e plus haut, mais n’est pas flexible et utilise une version fixe de Datafari.

2. Le docker file – et non pas l’image docker, disponible sur github. Pour la construire, executer les op√©rations suivantes:
Télécharger le docker file et mettez-le dans le repertoire de votre choix.
Allez dans ce repertoire, et lancez la commande suivante:

sudo docker build -t datafari .

Vous pouvez à present lancer votre image docker Datafari:

sudo docker run -p 8080:8080 datafari 

Ce fichier √† builder est plus flexible car il vous permet de jouer avec les param√®tres de Docker. De plus, il vous permet d’utiliser la derni√®re version de Datafari car il r√©alise un wget sur le repo github de Datafari. Enfin, il vous permet de comprendre comment nous construisons notre image Datafari, et donc vous pouvez vous en inspirer.

Pensez √† nous laisser un message ou un commentaire si vous avez appr√©cier ce blog, ou fa√ģtes un rapide tweet √† ce sujet ūüôā