使用docker-compose启动springboot
在test目录下创建docker-compose.yml文件:
#使用 Docker Compose 版本 3 的语法格式
version: '3'
services: #定义一个名为 test 的服务#使用镜像 test:1.0(本地构建的镜像)test: image: "test:1.0"#指定容器名称为 test(而不是自动生成)container_name: test#容器退出时总是自动重启restart: always#将宿主机的28080端口映射到容器的8080端口ports: - 28080:8080#将宿主机的 ./data/ 目录挂载到容器的 /app 目录volumes: - ./data/:/app#设置容器时区为亚洲/上海(北京时间)environment: - TZ=Asia/Shanghainetworks: - test
#docker内网
networks:test: external: true
#服务连接到名为 test 的 Docker 网络
#external: true 表示使用已存在的网络
test目录下创建一个data目录用来进行挂载操作,把jar包移动到里面:

注意Dockfile尽量和docker-compose在同一级目录下,便于管理
然后创建网络组

启动容器

查看日志

访问:

编写一键更新脚本
在test目录下创建脚本vi build.sh
#!/bin/bash
echo "停用所有容器"
docker-compose down
echo "删除镜像"
docker rmi test:1.0
echo "构建镜像"
docker build -t test:1.0 .
echo "运行镜像"
docker-compose up -d
然后运行
sh build.sh
运行前记得把有关的在运行的容器删除,否则是删不了镜像的

查看日志:

注意:
因为我们已经在docker-compose里面进行了挂载,所以Dockerfile里面的ADD指令可以去掉
