DEV Community

Ayuth Mangmesap
Ayuth Mangmesap

Posted on

The docker-compose Database Snippets for Development

Recently, I work on several projects that has different kind of databases. It requires lots of setups and managing overhead.

For development purpose, I have to setup the development environment to help my fellas mitigate the overhead of setting up their machine for each kind of database on each project.

Here are my snippets that might help you getting started to setup the dev environment quickly as possible. The snippet is just a boilerplate. You can add, edit or remove anything as you wish to match the project requirements.


Snippets

To run the snippets:

  1. Create docker-compose.yml file and paste the selected database below.
  2. Runs the $ docker-compose up -d command to spawn the environment.
  3. If you're not using it, just runs $ docker-compose stop to stop the services or $ docker-compose down to stop and remove all the services, containers, networks and images.

MySQL

services: database: image: mysql:5.7.32 ports: - 3306:3306 environment: - MYSQL_ALLOW_EMPTY_PASSWORD=yes restart: always 
Enter fullscreen mode Exit fullscreen mode

MariaDB

version: '3.1' services: mariadb: image: mariadb restart: 'on-failure' ports: - 3306:3306 environment: MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:?err} volumes: - ./mariadb/data:/var/lib/mysql 
Enter fullscreen mode Exit fullscreen mode

MongoDB + Mongo Expree docker-compose.yml file.

version: '3.1' services: mongo: image: mongo restart: always volumes: - ./mongo/data:/data/db ports: - 27017:27017 environment: MONGO_INITDB_ROOT_USERNAME: root # change your username MONGO_INITDB_ROOT_PASSWORD: example # change your password mongo-express: image: mongo-express restart: always ports: - 8081:8081 environment: ME_CONFIG_MONGODB_ADMINUSERNAME: root ME_CONFIG_MONGODB_ADMINPASSWORD: example ME_CONFIG_MONGODB_URL: mongodb://root:example@mongo:27017/ 
Enter fullscreen mode Exit fullscreen mode

Redis

services: redis: image: redis:6.2.1 ports: - 6379:6379 restart: always 
Enter fullscreen mode Exit fullscreen mode

References

Top comments (0)