version: "3.7" services: backend: build: args: - NODE_ENV=development context: backend command: npm run start-watch environment: - DATABASE_DB=example - DATABASE_USER=root - DATABASE_PASSWORD=/run/secrets/db-password - DATABASE_HOST=db - NODE_ENV=development ports: - 8080:80 - 9229:9229 - 9230:9230 secrets: - db-password volumes: - ./backend/src:/code/src:ro - ./backend/package.json:/code/package.json - ./backend/package-lock.json:/code/package-lock.json - back-notused:/opt/app/node_modules networks: - public - private depends_on: - db db: environment: MYSQL_DATABASE: example MYSQL_ROOT_PASSWORD_FILE: /run/secrets/db-password image: mysql:8.0.19 restart: always secrets: - db-password volumes: - db-data:/var/lib/mysql networks: - private frontend: build: context: frontend target: development ports: - 9000:3000 volumes: - ./frontend/src:/code/src - /code/node_modules networks: - public depends_on: - backend networks: public: {} private: {} volumes: back-notused: {} db-data: {} secrets: db-password: file: db/password.txt