As part of my life, I do a fair bit of development. For the last 18 months I’ve been using Docker, an awesome container/virtualisation platform as a daily part of my development routine. There are a number of tools to help you get up and running with Docker, and one of them is Docker for Mac. Docker for Mac provides a VM environment for running container software and makes your overall Docker experience seamless.
Only catch? It’s beta. That out of the way, I went to run up some containers this morning and hit this issue:
% docker-compose start pbxdb Starting pbxdb ... error ERROR: for pbxdb Unknown runtime specified default ERROR: No containers to start
This error was new, and I knew that I previously had this container working. Turns out that it’s a product of the issue described here – namely that between 1.12.0-rc2 and 1.12.0-rc3. Fortunately the fix is simple – recreate your containers. This issue looks like it’s present across all Docker for “X” platforms.
% docker-compose rm Going to remove myapp_pbxdb_1, myapp_app_run_1, myapp_db_1, myapp_redis_1 Are you sure? [yN] y Removing myapp_pbxdb_1 ... done Removing myapp_app_run_1 ... done Removing myapp_db_1 ... done Removing myapp_redis_1 ... done
and rebuild my containers.
Not the end of the world – but hopefully this save someone else 30 minutes of googling and reading comment!
UPDATE: Some people may find recreating their containers problematic if they have non-ephemeral data they don’t want to loose. As this is a dev environment I’ve built to allow me to not care, it doesn’t really affect me too much. But if you want to preserve your containers, you can use this strategy – use docker inspect to find the volume identifier for the container, and then make a new container with the docker command using the same image. This should allow you to dump the data out using whatever tools you need and then re-import it into your rebuilt containers you are using with docker-compose or your favourite tool.