diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..6277ed7 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,43 @@ +services: + mysql: + image: mysql:8.4 + container_name: flashcards-mysql + restart: unless-stopped + environment: + MYSQL_ROOT_PASSWORD: root + MYSQL_DATABASE: flashcards + MYSQL_USER: flashcards + MYSQL_PASSWORD: flashcards + ports: + - "13306:3306" + volumes: + - flashcards-mysql-data:/var/lib/mysql + - ./docker/init/mysql:/docker-entrypoint-initdb.d:ro + healthcheck: + test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-uroot", "-proot"] + interval: 5s + timeout: 5s + retries: 20 + + mongo: + image: mongo:8 + container_name: flashcards-mongo + restart: unless-stopped + environment: + MONGO_INITDB_ROOT_USERNAME: flashcards + MONGO_INITDB_ROOT_PASSWORD: flashcards + MONGO_INITDB_DATABASE: flashcards + ports: + - "127017:27017" + volumes: + - flashcards-mongo-data:/data/db + - ./docker/init/mongo:/docker-entrypoint-initdb.d:ro + healthcheck: + test: ["CMD", "mongosh", "--quiet", "--eval", "db.runCommand({ ping: 1 })"] + interval: 5s + timeout: 5s + retries: 20 + +volumes: + flashcards-mysql-data: + flashcards-mongo-data: \ No newline at end of file