docker-compose部署springboot项目

本文介绍了如何在Windows 10的Ubuntu子系统中使用docker-compose部署SpringBoot项目。首先确保安装了docker和docker-compose,然后创建docker-compose.yml文件配置MySQL和Redis服务,并定义SpringBoot应用服务。接着,通过Dockerfile构建应用镜像,最后执行docker-compose up启动服务。在部署过程中可能会遇到数据库连接问题,可以调整Dockerfile中的端口设置。

因为本人最近玩过用docker-compose部署项目的经历,所以就简单介绍下自己研究出来的经验。首先用docker-compose部署项目,要先拥有一个docker环境,一个springboot项目,本人用的的在window10下的子系统Ubuntu中安装的docker,装好docker后还要安装docker-compose,这里不介绍docker及docker-compose的安装,可自行百度,很简单的。springboot项目就不用说了,可用idea工具创建一个项目。

    准备工作完了,说说docker-compose部署项目需要的文件:docker-compose .yml、Dockerfile,

    Dockerfile的作用是根据一系列命令及springboot项目jar包生成镜像;

    docker-compose.yml能够根据已存在的镜像及官方规定的关键字命令生成所需要的容器,docker-compose.yml中配置的每个容器都可以作为一个服务,可以被别的服务引用,docker-compose.yml文件有三个版本,在这里我用的是三。

本次实例中saas项目服务就依赖到了redis服务、mysql服务,下面是本人实际开发中写的两个文件的样板,仅供参考,想了解更多可以查看官方文档。

1、docker-compose.yml配置文件介绍:

version: “3”
services:
#指定服务名称
mysql:
#指定服务使用的镜像
image: mysql:5.7
#指定容器名称
container_name: saasmysql
restart: always
#指定服务运行的端口
ports :
- “3306:3306”
#指定容器的环境变量
environment:
#数据库密码
- MYSQL_ROOT_PASSWORD=123456
#创建的库
- MYSQL_DATABASE=saas
#允许多IP连接数据库
- MYSQL_ROOT_HOST=%
redis:
image: redis
#指定容器名称
container_name: saasredis
ports:
- “6379:6379”
#指定服务名称
saas:

镜像名:版本

image: saas:v1
container_name: saas
#restart: always
#指定服务运行的端口
ports:
- “10083:10083”
#启动时,要覆盖的环境变量配置
environment:
#数据库IP
- DATABASE_HOST=mysql
#数据库用户名
- DATABASE_USER=root
#数据库密码
- DATABASE_PASSWORD=123456
#初始化的数据库
- DATABASE_NAME=saas
#数据库端口
- DATABASE_PORT=3306
#redis的IP
- REDIS_HOST=redis
#redis的端口
- REDIS_PORT=6379
#依赖的服务
depends_on:
- mysql
- redis
2、部署步骤

创建两个文件夹:例如创建saas文件夹,mkdir saas,进入saas文件夹:cd saas,然后创建saasapp文件,mkdir saasapp;

saas文件夹中中的内容:

saasapp文件夹的内容:

Dockerfile文件为制作项目镜像的配置文件,saas-be-0.0.1-SNAPSHOT.jar为项目打包后的jar包

Dockerfile文件内容:

FROM java:8
ADD saas-be-0.0.1-SNAPSHOT.jar app.jar
RUN bash -c ‘touch /app.jar’
EXPOSE “10083”
ENTRYPOINT sleep 60 && java -Dspring.profiles.active=prod -Dspring.datasource.hostname=

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

46007090

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值