Docker image for Wallabag v2

Sometimes I want to save articles that I want to read for later, because I don’t have the time to read right now. There are a couple of free online services that you can use, like Instapaper or Pocket. The services all work the same: you give them a link to a webpage you want to read later they scrape the page and store the text when you got time, you open the service in your browser or a mobile app and read the article you can save, delete, star the article But with my ongoing quest to avoid services and host my own versions of them, I began using my own installation of Wallabag a couple weeks ago....

01. Oktober 2016 · Carsten

Using haproxy to load balance tomcat instances with Docker

Today I wanted to set up my local environment with a load balancer for my tomcats. To get started, I took a look at the dockercloud-haproxy image and the provided example configuration for docker-compose: version: '2' services: web: image: dockercloud/hello-world lb: image: dockercloud/haproxy links: - web volumes: - /var/run/docker.sock:/var/run/docker.sock ports: - 80:80 You can run this example right away and open http://localhost to see the load balance hello-world page. To scale the web service, use docker-compose scale web=2 and reload the page a couple of times....

13. September 2016 · Carsten

Dockerfile to build qdirstat

Today I wanted to check how much diskspace I wasted in my home directory. On windows I’d use WinDirStat and on linux there is the alternative qdirstat. Unfortunately there is no pre-build binary for my distribution, so I decided to build from source. But I don’t want litter my system with Qt dependencies, so I decided to build it in a docker container. Here’s my Dockerfile: FROM ubuntu:14.04 RUN apt-get update -y && apt-get install -y build-essential qtbase5-dev zlib1g-dev qttools5-dev-tools qt5-default gdb git VOLUME ["/usr/target/"] RUN cd /usr/src && git clone https://github....

28. Juli 2016 · Carsten

Running a local Docker registry

When you’re using Docker extensively, you sometimes need to run your own registry in order to push images around in your local network - or even on your local machine. For that you need a registry where you can push and pull images. With Docker itself, it’s easy to set it up. Here is a small docker-compose.yml which runs a registry and a simple frontend: registry: image: registry:2 volumes: - data:/var/lib/registry ports: - 5000:5000 frontend: image: konradkleine/docker-registry-frontend:v2 links: - registry ports: - 8080:80 environment: - ENV_DOCKER_REGISTRY_HOST=registry - ENV_DOCKER_REGISTRY_PORT=5000 The registry is persisting its data into the directory data, so nothing is lost if you throw away and recreate the container....

09. Februar 2016 · Carsten

Minimal Docker image for DokuWiki

Yesterday I upgraded my Docker setup from v1.5 to v.10. I had to do a full apt-get dist-upgrade as well to bring my system up to Debian Jessie. On the way I discovered that my backup script wasn’t backing up anything from my personal wiki running with DokuWiki. Another case of Schroedingers Backup: The backup is only there, if it can be successfully restored. ☹ Anyway, I had only a few snippets from my daily development work and some links to software I tend to use on the wiki, so not that much of a loss....

07. Februar 2016 · Carsten

Updating my ELK stack with GELF appender

A couple of days ago I wrote about setting up an ELK stack with docker-compose. I did some small changes to the set up, so I thought it’s worth an update. First change is in the docker-compose.yml to enable logstashs gelf input, move the Log4j socket to port 12202 and add an UDP port forwarding for docker on port 12201: elasticsearch: image: elasticsearch ports: - 9200:9200 logstash: image: logstash:latest links: - elasticsearch:elasticsearch ports: - 12201:12201/udp - 12202:12202 command: logstash agent -e 'input { gelf { port => "12201" } log4j { mode => "server" port => "12202"} } output { elasticsearch { hosts => ["elasticsearch"] } }' kibana: image: kibana links: - elasticsearch:elasticsearch ports: - 5601:5601 environment: - ELASTICSEARCH_URL=http://elasticsearch:9200 This way, logstash will listen to ports 12201 with the gelf input and port 12202 with the Log4j socket input....

28. Januar 2016 · Carsten

Building an ELK stack with docker-compose

Because I have a hard time searching logfiles during development (I like to run everything on DEBUG), I decided to build myself an ELK stack (elasticsearch, logstash and kibana) to throw all my logs into and have a nice UI to search for a special log message. Fortunately there are official docker images for these tools: https://hub.docker.com/_/elasticsearch/ https://hub.docker.com/_/logstash/ https://hub.docker.com/_/kibana/ So, everything is easily available, I just needed to figure out how to glue it together....

26. Januar 2016 · Carsten

Docker FTW!

The past few days I was playing around with Docker to set up a small testbed with ActiveMQ, StatsD and Grafana. I want to test how to collect metrics from Apache Camel routes and display them via a webfrontend in nice graphcs. That’s exactly what Grafana is doing best. I started with running a few ActiveMQ instances via Docker. Then I created a simple Camel application using camel-archetype-activemq and modified it to write a random amount of messages into my already running ActiveMQ instances using the failover Transport....

15. November 2014 · Carsten

Running Minecraft in a Docker container

If you ever want to run a minecraft server, but you don’t want to add all the Java and minecraft files directly to your servers filesystem, you can use the following Dockerfile: FROM google/debian:wheezy RUN apt-get -y update RUN apt-get -y install openjdk-7-jre-headless wget RUN wget https://s3.amazonaws.com/Minecraft.Download/versions/1.8/minecraft_server.1.8.jar EXPOSE 25565 RUN echo eula=true > eula.txt CMD ["java", "-jar", "minecraft_server.1.8.jar"] You can then build a Docker container with the following command: sudo docker build ....

02. Oktober 2014 · Carsten