As a tool to learn Docker, I have created a Docker image to create a container that hosts and runs the River4 RSS Agreggator. The image is available in a public repository in the Docker Hub. The container has everything needed to run River4, including a sample RSS reading list. The reading list OPML file within the container includes my personal RSS subscriptions that I use in my personal river. Unfortunately, the current iteration does not include a way to make changes to the reading list, nor is the application state saved when you stop the container. I have more studying to do about how persistence and data storage is done in containers.

Here are some notes for how to obtain and use the container for those who are familiar with Docker.

  • Obtain the image by running docker pull fmcpherson/river4

  • To run River4 as a background process using the default port 1337 enter docker run -p 1337:1337 -d fmcpherson/river4. Note that the -p 1337:1337 portion of this statement provides the port mapping, the left side of the colon indicates the host server port, the right side has the port the application is expecting for communication. If you want you can map River4 to port 80 by entering -p 80:1337 in the run command.

  • If you want to see the server output of the server running in the background, you need to first get the container ID using the docker ps command, then enter docker logs [container id]

  • If you want to run River4 interactively so that you see the server output enter docker run -p 1337:1337 -t -i fmcpherson/river4 /bin/bash

  • If you are running Docker on a physical computer, you can access the River4 app by entering http://localhost:1337 in a web browser

  • If you are running Docker on a virtual server, or if you want to access the River4 app from a computer on your network other than the one hosting Docker, you will need to obtain the IP address of the host and then enter http://[Host IP address]:1337

If you are not familiar with Docker, or just heard a little bit about it, but are interested in trying it on a Windows or Mac, the simplest way to get started is by using Kitematic. Kitematic provides a graphical interface to Docker, which is otherwise a command line tool. Be aware that Kitematic uses Virtual Box for hosting Docker and any containers.

If you are familiar with Docker and you want to look at the Dockerfile that I wrote to create this image, you will find it in my DockerizedRiver4 Github repository.

08/10/15; 03:30:02 PM

Last built: Wed, Feb 17, 2016 at 3:26 PM

By Frank McPherson, Monday, August 10, 2015 at 3:30 PM.