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