使用docker部署springboot应用

释放双眼,带上耳机,听听看~!

修改Springboot应用的application.properties文件,将mysql host改为mysql docker容器名(此处为mysql1跟docker-compose.yaml文件一致。)


1
2
3
4
1spring.datasource.url=jdbc:mysql://mysql1:3306/SPPanBlog?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull
2spring.datasource.username=root
3spring.datasource.password=123456
4

在Springboot应用根目录下使用mvn package打包。
在d:/创建d:/docker目录,里面分别创建blog和mysql目录。
在d:/docker/mysql目录下创建my.cnf文件,内容如下:


1
2
3
4
5
6
1[mysql]
2default-character-set=utf8
3
4[mysqld]
5character-set-server=utf8
6

创建d:/docker/blog/Dockerfile文件,内容如下:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
1#基于哪个镜像
2FROM java:8
3
4# 将本地文件夹挂载到当前容器
5VOLUME /tmp
6
7# 拷贝文件到容器,也可以直接写成ADD microservice-discovery-eureka-0.0.1-SNAPSHOT.jar /app.jar
8ADD SPPanBlog4SpringBoot-0.0.1-SNAPSHOT.jar /app.jar
9#RUN bash -c 'touch /app.jar'
10
11# 开放8080端口
12EXPOSE 8080
13
14# 配置容器启动后执行的命令
15ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]    
16

将应用jar包(此处为SPPanBlog4SpringBoot-0.0.1-SNAPSHOT.jar)拷贝到d:/docker/blog目录下。

创建d:/docker/docker-compose.yaml文件,内容如下:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
1mysql1:
2  image: mysql:5.7
3  volumes:
4         - d:/docker/mysql/my.cnf:/etc/mysql/my.cnf mysql
5         - d:/data/mysql:/var/lib/mysql
6  environment:
7     - MYSQL_ROOT_PASSWORD=123456
8  ports:
9        - "3306:3306"
10  expose:
11         - "3306"
12
13blog:
14  build: ./blog
15  ports:
16    - "8080:8080" #端口映射
17  expose:
18    - 8080        #暴露容器端口
19  links:
20    - mysql1
21
22

进入cmd,执行下面命令


1
2
3
4
1d:
2cd d:/docker
3docker-compose up
4

然后就等待image自动构建,启动后mysql应该能启动,但是应用应该无法启动,原因是未找到对应database。
通过navicat(或者其他数据库工具)连接localhost的mysql,账号root,密码:123456,然后创建SPPanBlog数据库。
执行docker ps,然后执行docker stop ,关闭对应mysql的容器。
再次执行docker-compose up,应该能执行应用。
然后通过navicat连接mysql,导入初始数据(import.sql)。

所有代码已经上传到码云上。https://gitee.com/39627020/sppanblog4springboot

给TA打赏
共{{data.count}}人
人已打赏
安全技术

C/C++内存泄漏及检测

2022-1-11 12:36:11

安全经验

Spring Security 5.1.0.RC2 发布,Spring 安全框架

2018-9-11 11:12:22

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索