docker运行springboot+haproxy+mysql+redis
type
status
date
slug
summary
tags
category
icon
password
order
首先新建以下文件和目录,为运行docker做准备,docker内数据要关联到这些文件夹/文件下。
由于我项目是前后端分离,所以需要两个nginx服务器,一个负责前端页面,一个负责反向代理后端SpringBoot,虽然这里都只用了单节点,但还使用了haproxy,方便扩展,要添加服务器时,直接修改haproxy里的配置就行。
notion image
docker-compose.yml文件内容,里面的各个容器都指定了IP,因为在haproxy内需要用到, 映射的端口看自己需要进行变更(其实不需要在宿主机映射端口,因为都是通过haproxy来访问各个容器内的服务了,只需要将haproxy的端口暴漏出来即可,但是为了方便自己测试、检查排错,还是需要将该服务的端口暴漏出来)
docker-compose.yml
后端nginx配置文件backend.conf
前端nginx配置文件frontend.conf,前端程序直接放在www目录下即可
haproxy配置文件haproxy.cfg
都编辑好后,将其上传到服务器,前提是服务器已经装好docker了,本博其他文章写有docker相关安装教程,记得给这些文件夹加个权限chmod -R 777 deploy ,我是习惯777了,给读写权限应该就够了,666
notion image
putty连接上服务器,执行下面命令,-d代表后台执行
如果安装完成,可以在docker管理面板中查看
notion image
docker面板portainer
notion image
haproxy面板
 
haproxy配置参考SpringBoot 打包jar并生成docker镜像