mac docker部署jar包流程

mac docker部署jar包流程

默认服务器已经准备好了相关的准备工作,如:docker,docker内安装所需软件数据库,jdk等,将要部署等jar包。

1:将jar 包上传到服务器目录下:/usr/local/service (没有目录可以自己创建一个)

在相同目录下创建Dockerfile

sudo vim Dockerfile

然后输入:

复制代码
# 拉取jdk8作为基础镜像
FROM java:8
# 作者
MAINTAINER xx
# 添加jar到镜像并命名为xx.jar
ADD xx-0.0.1-SNAPSHOT.jar  /app/xx.jar
# 镜像启动后暴露的端口
EXPOSE 8001
# jar运行命令,参数使用逗号隔开
CMD ["nohup","java","-jar","/app/xx.jar","&"]

说明:避免每次发版都删除镜像重新加载,

可以给jar包挂载一个包,

复制代码
sudo mkdir app

把你的jar包cp一份到宿主机/usr/local/service/app目录下并改名为xx.jar 这里一定要在app目录下存放你的jar,不然容器启动会失败,找不到jar

然后使用docker命令打包(注意xx 后有一个点挂载docker配置文件在当前目录) :

打包镜像-创建并运行容器

打包镜像:

docker build -t xx .

创建并运行容器:

docker run -d --name xx -p 8001:8001 -v /usr/local/service/app:/app xx

这样的方式启动完成之后,更新服务时只需要更换宿主机/usr/local/service/app目录下的jar包,然后重启容器即可实现更新,省略了每次更新删除打包创建等过程

其他相关命令:

停止容器(xx:容器名称):

sudo docker stop xx

删除容器:

sudo docker rm xx

删除镜像:

sudo docker rmi xx

查看镜像

sudo docker images

容器日志:

sudo docker logs xx

注:本文章为自己学习记录,且为mac笔记本和win系统有所不同 ,win可能在命令前不用加sudo

相关推荐
余槐i2 小时前
MySQL 8.0 联合索引走错:为什么加了索引查询反而从 200ms 变成 8s
java·spring boot·mysql·docker·性能优化
csdn_aspnet3 小时前
如何在本地 Docker 容器中运行 Redis,并使用 Redis Insight 和 Redis CLI 进行管理
redis·docker·容器
且从容.3 小时前
Ubuntu 安装 Docker
linux·ubuntu·docker
todoitbo4 小时前
我在 Mac 上用 Docker 部署 Nexent:从拉取镜像到接入模型
macos·docker·大模型·ai智能体·nexent·快速入门与环境准备
Goboy5 小时前
夯爆了,我被一个一句话接入的免费可观测平台策反了,那一刻我决定放弃用了3年的Prometheus
后端·docker·kubernetes
java_logo15 小时前
Docker 部署 Liquibase:轻松搭建数据库变更管理
数据库·docker·容器·数据库管理·liquibase·轩辕镜像·数据库变更
IT利刃出鞘1 天前
Docker Compose--解决修改配置后不生效的问题
运维·docker·容器
java_logo1 天前
Docker 部署 CloudBeaver:轻松搭建网页数据库管理平台
数据库·docker·容器·数据库管理·dbeaver·轩辕镜像·cloudbeaver
Lsetea1 天前
Docker更新SSL证书后容器仍读旧文件:单文件挂载与目录挂载排查
运维·nginx·docker·https·ssl证书
好用斋1 天前
拾光坞安装网盘聚合LitePan:把Docker命令翻译成图形界面
运维·docker·容器