[](
)二、DockerCompose详解
)1. 使用DockerCompose步骤
使用 Dockerfile
构建自定义镜像上传服务器,一般需要修改初始镜像行为时才需要使用。
使用 docker-compose.yml
文件定义需要部署的应用程序服务,这样它们可以在隔离环境中一起运行,以便执行脚本一
【一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义】 浏览器打开:qq.cn.hn/FTf 免费领取
次性部署。
docker-compose up
命令来创建并启动所有服务。)2. docker-compose.yml常用命令
version
描述 Compose 文件的版本信息,各版本详细信息可以参考 [官方文档](
) 。
version: ‘3’
services
services 节点下面的即是定义的各种服务,服务之下为容器,容器与容器直之间可以以服务名称为域名进行访问。
image
指定运行的镜像名称。
image: mysql:5.7
container_name
指定容器名称。
container_name: admin_mysql
ports
指定宿主机和容器的端口映射。
ports:
volumes
将宿主机的文件或目录挂载到容器中。
volumes:
/itwxe/dockerData/mysql/data:/var/lib/mysql
/itwxe/dockerData/mysql/conf:/etc/mysql
/itwxe/dockerData/mysql/log:/var/log/mysql
environment
配置环境变量。
environment:
links
连接其他容器的服务。
links:
)3. Docker Compose常用命令
启动所有相关容器
docker-compose up -d
指定文件启动
docker-compose -f docker-compose.yml up -d
停止所有相关容器
docker-compose stop
列出所有容器信息
docker-compose ps
停止并删除所有容器(注意数据挂载)
docker-compose down
[](
)三、SpringBoot示例
此处还是以自己写的项目为示例,我的项目依赖 MySQL、Redis、minio(非必要)。
1、打包 SpringBoot 项目镜像,打包可以参考 [Docker使用maven插件打包SpringBoot项目](
)。
2、我的项目启动依赖 MySQL 中的 sunny 库,首先得创建容器,挂载宿主机目录,可以参考 [Docker搭建MySQL并挂载数据](
)。
3、项目依赖 Redis 镜像自定义配置启动,可以参考 [Docker搭建Redis5.0并挂载数据](
)。
4、修改项目 MySQL 和 Redis 使用别名访问,以 MySQL 为例。
jdbc:mysql://192.168.5.33:3306/sunny?useUnicode=true&characterEncoding=utf8mb4&serverTimezone=GMT%2B8