当前位置: 首页 > news >正文

后端项目部署教程

一、打包jar包

lyamanoblog-server-0.0.1.jar
ps:运行时可能会提醒不能有大写字母,所以用的都是小写字母

二、编写Dockerfile文件

FROM java:8
VOLUME /tmp
ADD lyamanoblog-server-0.0.1.jarblog.jar       
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/blog.jar"] 

三、编写blog-start.sh脚本

#源jar路径  
SOURCE_PATH=/usr/local/blogServer
#docker 镜像/容器名字或者jar名字 这里都命名为这个
SERVER_NAME=lyamanoblog-server-0.0.1.jar
TAG=latest
SERVER_PORT=3300
#容器id
CID=$(docker ps | grep "$SERVER_NAME" | awk '{print $1}')
#镜像id
IID=$(docker images | grep "$SERVER_NAME:$TAG" | awk '{print $3}')
if [ -n "$CID" ]; thenecho "存在容器$SERVER_NAME, CID-$CID"docker stop $SERVER_NAMEdocker rm $SERVER_NAME
fi
# 构建docker镜像
if [ -n "$IID" ]; thenecho "存在$SERVER_NAME:$TAG镜像,IID=$IID"docker rmi $SERVER_NAME:$TAG
elseecho "不存在$SERVER_NAME:$TAG镜像,开始构建镜像"cd $SOURCE_PATHdocker build -t $SERVER_NAME:$TAG .
fi
# 运行docker容器
docker run --name $SERVER_NAME -v /usr/localblogServer:/usr/local/blogServer -d -p $SERVER_PORT:$SERVER_PORT $SERVER_NAME:$TAG
echo "$SERVER_NAME容器创建完成"

ps:sh文件需要用notepad++转为Unix格式

四、将jar包、Dockerfile文件、blog-start.sh脚本传输到服务器/usr/local/blogServer目录下

五、进入服务器/usr/local/blogServer下,构建后端镜像

 ./blog-start.sh 

构建完成后自动创建镜像、容器、自动启动容器。只要容器正常运行、以后更新后端只需要更新jar包、重新运行blog-start.sh脚本即可。

注意的坑: springboot不能使用本地地址连接mysql、rabbitmq、redis。会出现连接不上。因为docker容器都是互相独立的。

http://www.lryc.cn/news/336509.html

相关文章:

  • 【微命令】git 如何修改某个分支的名字(git branch -m newbranch)
  • Unity UI 优化技巧
  • 前端学习之DOM编程案例:抽奖案例
  • 解决windows下Qt Creator显示界面过大的问题
  • MySQL 通信协议 tcp c/s架构 jdbc java
  • 蓝桥杯第十三届电子类单片机组决赛程序设计
  • 【Entity Framework】如何使用EF中的生成值
  • 【MATLAB源码-第185期】基于matlab的16QAM系统相位偏移估计EOS算法仿真,对比补偿前后的星座图误码率。
  • C++入门语法(命名空间缺省函数函数重载引用内联函数nullptr)
  • 9.vector的使用介绍和模拟实现
  • 探索设计模式的魅力:MVVM模式在AI大模型领域的创新应用-打破传统,迎接智能未来
  • Docker使用— Docker部署安装Nginx
  • C/C++基础----运算符
  • YOLOv9:下一代目标检测的革新
  • Leetcode算法训练日记 | day20
  • conda创建虚拟环境太慢,Collecting package metadata (current_repodata.json): failed
  • Tensorflow(GPU版本配置)一步到位!!!
  • STL之map
  • 闲谈2024(一)
  • SQL注入利用 学习- 布尔盲注
  • 前端项目部署教程——有域名有证书
  • 《看漫画学C++》第12章 可大可小的“容器”——向量
  • OpenAI推出GPTBot网络爬虫:提升AI模型同时引发道德法律争议
  • Claude使用教程
  • 【经典算法】LeetCode25:K 个一组翻转链表(Java/C/Python3,Hard)
  • 6.11物联网RK3399项目开发实录-驱动开发之定时器的使用(wulianjishu666)
  • 算法训练营第二十三天(二叉树完结)
  • mysql主从复制Slave_SQL_Running: No
  • 【SpringBoot】SpringBoot项目快速搭建
  • Terraform 状态不同步处理