A common problem I tend to face when starting a project is setting up databases. Even when I use docker-compose to do the job, the steps are repetitive and configuration of each individual db is hard to remember. Thus, dcdbs. It’s a
docker-compose.yml file with a bit of everything I’ve used via docker-compose. You can find a continuously updated version on my GitHub.
Databases include MongoDB, ElasticSearch, PostgreSQL and Redis. I threw in a web-based admin interface for each database. I’ve included Portainer to manage docker itself. Finally, I added a local version of httpbin to test sensitive APIs.
To bootstrap a new project, either just clone dcdbs and use as-is or use it after deleting anything you don’t need. You can actually get by with using a common
docker-compose.yml file for small projects. That’s what I tend to do.
I’ll keep this blog post updated as I make changes to the contents but refer to the repository’s README.md and also the docker-compose.yml file for information on how to get started.
Note that I only tested dcdbs on Docker for Linux. It should run on docker-machine since it is nothing but Linux. I cannot make promises about performance on native docker for Windows and Macintosh.
Have fun and happy hacking!
Leave a Reply