Closed3

Dockerizeをやめる

yuma ishikawayuma ishikawa

docker composeでdepends_onにconditionを設定できるらしいので、それを使ってmysqlの起動を待ってみる

yuma ishikawayuma ishikawa
services:
  server:
    container_name: awesome-server
    build:
      context: .
      dockerfile: docker/dev/Dockerfile
    ports:
      - '3000:3000'
    depends_on:
      awesome-mysql:
        condition: service_healthy

  mysql:
    container_name: awesome-mysql
    image: mysql:8.0
    environment:
      MYSQL_DATABASE: hello
      MYSQL_ROOT_PASSWORD: password
    ports:
      - '33082:3306'
    healthcheck:
      test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"]
      timeout: 20s
      retries: 10

これで

$ docker compose up server

でmysqlが起動してからserverが立ち上がる
いいね

このスクラップは2023/01/11にクローズされました