docker 部署带多种配置文件的 springboot 项目
docker 配置spring boot项目带配置文件准备工作:1、将要制作镜像的Springboot项目打成 jar 包。2、将 jar 包和该程序所有配置文件放在同一文件夹下(xml、yml、txt、jar等)3、在该文件夹下写Dockerfile文件,内容如Dockerfile.txt所示。# 指含有jdk1.8的镜像FROM java# 将当前目录下面的json-0.0.1-SNAPSHO
·
准备工作:
1、将要制作镜像的Springboot项目打成 jar 包。
2、将 jar 包和该程序所有配置文件放在同一文件夹下(xml、yml、txt、jar等),我这里文件夹名字为 json
3、在该文件夹下写Dockerfile.txt文件:
# 指含有jdk1.8的镜像
FROM java
# 将当前目录下面的 json-0.0.1-SNAPSHOT.jar 复制命名为 app.jar(复制后的名字可以自定义)。
copy application.yml application.yml
copy cityCode.txt cityCode.txt
copy Dockerfile.txt Dockerfile.txt
copy json-0.0.1-SNAPSHOT.jar app.jar
copy kpiCode.txt kpiCode.txt
copy logback-spring.xml logback-spring.xml
copy provCode.txt provCode.txt
#修改docker的时间和宿主机时间一致
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
# 开放内部端口7071
EXPOSE 7071
# 制作镜像完成最后执行的命令,类似如下命令,只不过执行的是拷贝后的getacctvalues.jar名称
ENTRYPOINT ["java","-jar","/app.jar"]
4、将该文件夹用 XFtp 传到 linux 系统上;或者你自己在linux系统上创建一个文件夹,然后把上边copy后边的那些文件传到你创建的文件夹里也行。
创建镜像:
docker build -f /root/json/Dockerfile.txt -t json:1.0 .
参数介绍:
-f /root/json/Dockerfile.txt 指定Dockerfile文件所在地址
json 是镜像名称(自定义);
镜像名称后面是冒号(:1.0) ,1.0当前版本号(自定义的);
最后是空格加上一个点,不然会报错
创建容器:
docker create --name eureka -t -p 8089:8089 json:1.0
参数介绍:
--name 是别名为eureka
-t 让docker分配一个伪终端并绑定到容器的标准输入上
-p 8100:8100 是项目的端口号,前面是外部通讯号,后边是项目真实端口号,二者相关联,外部端口可以随意设置,此处设置为一致
json:1.0 是镜像名称和版本号
启动容器并查看日志:
docker start eureka && docker logs -f eureka
参数介绍:
docker start eureka是启动容器
&& docker logs -f eureka 启动完成之后查看日志,-f 是持续不中断(如果不想查看日志可以不写)
将容器制作成镜像
格式:docker commit -m '镜像描述' -a '制作者' 容器名 镜像名
docker commit -m 'json-test01' -a 'zhangsan' eureka json
将制作好的镜像打成 tar 包
格式:docker save -o tar包的名字 镜像名
docker save -o /opt/json-1.tar json
将打包好的 tar 包传给别人
格式:scp tar包所在路径 用户名@IP地址:要上传的路径
scp /opt/json-1.tar root@192.168.183.131:/opt/
别人接收到 tar 包之后,怎么使用 tar 包
格式:docker load < tar 包所在路径
docker load < /opt/json-1.tar
使用镜像
docker run -dit --name=getacctvalues --net host 544fa18ef66c /bin/bash
docker exec -it getacctvalues /bin/bash
页面访问
在 Idea 启动的时候,页面怎么访问,现在就怎么访问!
一定要关闭防火墙
sudo systemctl stop firewalld
docker小知识点
查看有哪些镜像
docker images
查看有哪些容器
docker ps -a
查看有哪些正在运行容器
docker ps

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)