Docker and (Console) Logs Problem

Anyone who used docker before and care about quality will have to deal with the logs problem. As we all know, docker runs in a container, and if we don’t handle the logs in a special way, the logs will be lost when the container is restarted.

In order to deal with this, usually we will map the logs folder of our application to the parent host of the container, so that the logs don’t get lost when the container is restarted or changed.

Read more →

Broken Docker in Debian Jessie

So after a few dist-upgrades, docker is not running anymore in my debian Jessie. A quick run of sudo service docker status shows me:

● docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; disabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Wed 2015-09-02 00:03:18 CEST; 8min ago
     Docs: https://docs.docker.com
  Process: 22770 ExecStart=/usr/bin/docker -d -H fd:// $DOCKER_OPTS (code=exited, status=1/FAILURE)
 Main PID: 22770 (code=exited, status=1/FAILURE)

Sep 02 00:03:18 rowanto-mdeb systemd[1]: Started Docker Application Container Engine.
Sep 02 00:03:18 rowanto-mdeb docker[22770]: time="2015-09-02T00:03:18.434820725+02:00" level=error msg="[graphdriver] prior storage driver \"aufs\" failed: driver not supported"
Sep 02 00:03:18 rowanto-mdeb docker[22770]: time="2015-09-02T00:03:18.434912173+02:00" level=fatal msg="Error starting daemon: error initializing graphdriver: driver not supported"
Sep 02 00:03:18 rowanto-mdeb systemd[1]: docker.service: Main process exited, code=exited, status=1/FAILURE
Sep 02 00:03:18 rowanto-mdeb systemd[1]: docker.service: Unit entered failed state.
Sep 02 00:03:18 rowanto-mdeb systemd[1]: docker.service: Failed with result 'exit-code'.

Ops, problem with aufs. A quick fix would be to delete it. You might lose some data, so please do it with care.

Read more →

Java Application Server is dead, so is Docker?

So lately, a lot of people in my circle is talking about why java application server is dead. The reason why is explained in the slides here.

Basically what I get is that because nowdays people only deploy one artifact in one application server, it beats the point of the application server. It’s more like that the application server is already part of the application. So, it would be better to treat the application server as part of the application and ship them together as a package.

Read more →