docker-compose 启动 tomcat 和 mysql

2,839 阅读1分钟

1、编写docker-compose.yml文件

vi docker-compose.yml

version: '3'
services:
  tomcat:
    restart: always
    image: tomcat:7.0.82-jre8
    container_name: tomcat
    ports:
      - 8080:8080
    volumes:
      - /usr/local/docker/tomcat/webapps:/usr/local/tomcat/webapps
    environment:
      TZ: Asia/Shanghai

  mysql:
    restart: always
    image: mysql:5.7.22
    container_name: mysql
    ports:
      - 3306:3306
    environment:
      TZ: Asia/Shanghai
      MYSQL_ROOT_PASSWORD: 123456
    command:
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_general_ci
      --explicit_defaults_for_timestamp=true
      --lower_case_table_names=1
      --max_allowed_packet=128M
      --sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO"
    volumes:
      - /usr/local/docker/mysql/conf:/etc/mysql
      - /usr/local/docker/mysql/logs:/var/log/mysql
      - /usr/local/docker/mysql/data:/var/lib/mysql

2、启动服务

docker-compose up -d

启动时会创建默认的network,同一个docker-compose.yml启动的多个服务之间可以直接通过服务名进行调用,tomcat想连接mysql直接用服务名mysql连接即可,无需知道ip:

jdbc:mysql://mysql:3306/db?useUnicode=true&characterEncoding=UTF-8