创建Docker网络
1
| docker network create server
|
创建Spring MVC项目镜像
Dockerfile
1 2 3 4 5
| from tomcat:9.0.56
COPY meal_ordering_system.war /usr/local/tomcat/webapps
|
docker build -t mos:1.0 .
其中,mos可以替换为其他项目名,1.0为版本号。
使用Docker-Compose编排镜像
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| version: '3' services: mos: restart: always image: mos:1.0 container_name: mos ports: - 8080:8080 depends_on: - mysqldbserver networks: - server mysqldbserver: image: mysql:8.0.28 container_name: mysqldbserver command: --default-authentication-plugin=mysql_native_password --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci restart: unless-stopped environment: MYSQL_ROOT_PASSWORD: 123456 MYSQL_USER: user MYSQL_PASSWORD: user_password ports: - 3366:3306 volumes: - ~/docker/mysql/data:/var/lib/mysql - ~/docker/mysql/conf:/etc/mysql/conf.d - ~/docker/mysql/logs:/logs networks: - server volumes: mysql-data:
networks: server: driver: bridge
|
docker-compose up -d
项目部署效果:外卖订餐系统
出现的问题:
SpringMVC项目镜像无法访问MySQL镜像?
port: 宿主机端口:容器端口
在Navicat等数据库管理软件使用宿主机端口,docker容器之间的通讯使用容器端口。