Spring Boot and Docker

I went through this Spring Framework page describing running a Spring Boot application in a Docker container.  Pretty cool.  I will investigate Spring Boot some more and also the Dockerfile used to create the image being used.  There are a couple of new items I’ve never seen, including “ENTRYPOINT” and “VOLUME”.

What I’d like to do is add a bit of database access to this skeletal project.  Maybe utilize the MySQL Docker image I downloaded a few days ago with this new Spring Boot image to make a CRUD-type application with the two images.

I got a Spring Data JPA project going and working against my Docker MySQL image.  One difficulty I ran into was the port on which MySQL is running.  I’m already running MySQL on this machine, so 3306 is in use.  And when I fire up the image, it’s just grabbing a random port which makes it difficult to configure the Spring app’s datasource.  Not sure how much I’ll work on that for now…

Continuing with Docker

Today I’m continuing to look at Docker.  I am going to look into creating my own images and playing with some existing ones.  I’ve pulled the MySQL image and I’m going to poke around on it.  I might also look at securing a container or the daemon with some keys.

Hold on!  It seems there’s something I don’t quite get about images and containers.  I tried to remove one of the images I downloaded during the tutorial, but I was told it was in use by a container.  I ran “docker ps” and didn’t see any running.  Why are these containers hanging around?  I’ve gotta investigate that.

I found a couple relevant pages.  Here and here.

Looking at Docker (Again)

I downloaded and installed the new Netbeans IDE (version 8.2) and noticed that it had Docker support.  It’s been a while since I looked at Docker, so today I’m going to revisit it.

Got Docker upgraded and running by following the online tutorial.  When I tried to add the Docker instance to Netbeans, I noticed I’d have to change the daemon’s configuration to listen on a TCP port (instead of a Unix socket that I think it runs on by default).  After modifying /etc/default/docker and adding the instance to Netbeans, I could no longer use the client commands like “docker images”.  After sorting through the docs for a while, I found out that the Docker client will use the “DOCKER_HOST” environment variable to set the “-H” option (for “host”).

I also set up a Docker Hub account while going through the tutorial.

In any case, I’ve got a few ideas I’d like to try to exercise Docker a little bit and hopefully I’ll be able to get to it and log what I do on this blog.