微服务实战(使用Dockerfile)
将gitee开源项目若依系统部署docker
从gitee中下载项目
地址:https://gitee.com/y_project/RuoYi
# 下载到本地文件夹
git clone https://gitee.com/y_project/RuoYi
配置数据库
将数据库部署在docker容器中
docker run -p 3307:3306 --name=mysql --privileged=true -v /mydata/mysql-master/log:/var/log/mysql -v /mydata/mysql-master/data:/var/lib/mysql -v /mydata/mysql-master/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7
# 没有下载镜像会自动下载
将ruoyi文件夹中的两个sql文件传入容器中
docker cp /quartz.sql /ry_20240112 mysql:/
进入mysql容器导入sql
# 进入容器
docker exec -it mysql bash
# 进入数据库
mysql -uroot -proot
-- 创建quartz数据库
create database quartz;
use quartz;
-- 导入sql
source /quartz.sql;
-- 创建ry_20240112数据库
create database ry_20240112;
use ry_20240112;
-- 导入sql
source /ry_20240112;
修改idea中数据库配置
在application-druid.yml中
修改主数据库源为:
数据库ip地址加端口
密码改为自己数据库的密码
将项目打成jar包并传入服务器中
点击Maven插件并双击package
将jar包传入服务器
编写Dockerfile将jar打成镜像
创建myfile文件夹,并把jar包和Dockrfile放在一起
mkdir /root/myfile
mv jar /root/myfile
编写Dockerfile
vim Dockerfile
FROM java:8
MAINTAINER chuntian
VOLUME /tmp
ADD ruoyi-admin.jar sp.jar
RUN bash -c 'touch /sp.jar'
ENTRYPOINT ["java","-jar","/sp.jar"]
EXPOSE 80
运行Dockerfile
# 语法
docker build -t 新镜像名字:版本号
# 构建
docker build -t ruoyi:1.0 . # .为当前目录
运行ruoyi:1.0镜像
docker run -d --name ry -p 80:80 ruoyi:1.0
注意端口不要被占用
访问ip地址+80