───────┬──────────────────────────────────────────────────────────────────────── │ File: docker-compose.yml ───────┼──────────────────────────────────────────────────────────────────────── 1 │ version: "3" 2 │ services: 3 │ todoapp: 4 │ image: tomcat:9-jdk11-corretto 5 │ container_name: tomcat_todoapp 6 │ ports: 7 │ - 8080:8080 8 │ volumes: # ホストOSのディレクトリ:コンテナOSでのマウント先 9 │ - ./build/libs:/usr/local/tomcat/webapps 10 │ environment: # Docker-compose で起動した時の接続先.application.propertiesも参照のこと. 11 │ DATASTORE: jdbc:mysql://db:3306/todoapp 12 │ db: 13 │ image: mysql:8.0 14 │ container_name: todo_mysql 15 │ restart: always 16 │ ports: # ホストOSのポート番号:コンテナOSのポート番号 17 │ - 13306:3306 18 │ # ホストOSで mysql を起動しっぱなしにしておくため,ポート番号を分ける. 19 │ # 上の DATASTORE のポート番号は db のポート番号であるため,3306 で良い. 20 │ volumes: 21 │ - ./build/mysql/data:/var/lib/mysql # データ置き場 22 │ - ./src/docker/mysql/my.cnf:/etc/mysql/conf.d/my.cnf # 設定ファイル 23 │ environment: 24 │ MYSQL_ROOT_PASSWORD: 'rootroot' 25 │ MYSQL_DATABASE: 'todoapp' 26 │ MYSQL_USER: 'todouser' 27 │ MYSQL_PASSWORD: 'todotodo' 28 │ TZ: 'Asia/Tokyo' ───────┴────────────────────────────────────────────────────────────────────────