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

建网站培训学校/网络营销成功案例3篇

建网站培训学校,网络营销成功案例3篇,创意交易平台网,专做运动品牌的网站文章目录1.简介2.准备一个springboot项目2.1.项目里配置文件内容2.2.编写一个web接口,用于测试重定向配置文件2.3.准备好构建镜像需要的文件2.4.编写Dockerfile文件3.构建镜像并运行3.1.把需要构建的文件上传到服务器3.2.修改配置文件内容3.3.启动镜像3.4.测试配置文…

文章目录

  • 1.简介
  • 2.准备一个springboot项目
    • 2.1.项目里配置文件内容
    • 2.2.编写一个web接口,用于测试重定向配置文件
    • 2.3.准备好构建镜像需要的文件
    • 2.4.编写Dockerfile文件
  • 3.构建镜像并运行
    • 3.1.把需要构建的文件上传到服务器
    • 3.2.修改配置文件内容
    • 3.3.启动镜像
    • 3.4.测试配置文件属性是否变化
  • 4.挂载配置文件到宿主机
    • 4.1.停止并删除刚刚构建的容器
    • 4.2.修改配置文件
    • 4.3.构建容器并指定配置外部文件
    • 4.4.测试挂载配置后的效果
    • 4.5.再次修改配置文件
    • 4.6.重启容器
    • 4.7.查看效果
  • 5.关于Dockerfile中的VOLUME作用
  • 6.总结
  • 7.项目配套代码

1.简介

本文使用Dockerfile把springboot的jar文件构建成镜像,并且把外部配置文件挂载到了宿主机上面,方便后续更新。

2.准备一个springboot项目

2.1.项目里配置文件内容

username: localUser
password: 123456
server:port: 8006

2.2.编写一个web接口,用于测试重定向配置文件

package com.ljm.boot.dockerbuild;import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@SpringBootApplication
public class DockerBuildApplication {public static void main(String[] args) {SpringApplication.run(DockerBuildApplication.class, args);}@RestControllerpublic class  WebController{@Value("${username}")private String username;@Value("${password}")private String password;@RequestMapping("/print")public String printUserInfo(){return "User{username="+username+",password="+password+"}";}}
}

2.3.准备好构建镜像需要的文件

在这里插入图片描述

2.4.编写Dockerfile文件

#添加Java启动的必要镜像
FROM openjdk:8
#将本地文件挂载到当前容器
VOLUME   /tmp
#复制jar文件和配置文件所在的目录到容器里
ADD  my-app.jar  /app.jar
ADD  conf       /conf
#声明需要暴露的端口
EXPOSE  8006
#配置容器启动后执行的命令,并指定使用项目外部的配置文件
ENTRYPOINT  ["java","-Xms256m","-Xmx256m","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar","--spring.config.location=/conf/application.yml"]

3.构建镜像并运行

3.1.把需要构建的文件上传到服务器

在这里插入图片描述

3.2.修改配置文件内容

为了能确定是否使用了docker容器里外部配置文件,修改username属性

vi conf/application.yml
username: devUser
:wq

执行下面命令构建镜像

# -t 是指定镜像名称和版本号   myapp是镜像名, :后面的是版本号, . 代表指定当前目录的Dockerfile构建
docker build -t myapp:v1 .

看到Successfuly 就代表构建镜像成功
在这里插入图片描述

3.3.启动镜像

docker run -d -p 8006:8006  --name myapp myapp:v1

3.4.测试配置文件属性是否变化

curl 127.0.0.1:8006/print

项目里的配置文件是localUser,现在看到的是devUser,代表镜像里的jar已经使用了外部的配置文件

在这里插入图片描述

4.挂载配置文件到宿主机

实际生产环境,不可能把配置文件放到镜像里面,修改太麻烦,这个时候就需要把程序的配置文件挂载到宿主机的目录

4.1.停止并删除刚刚构建的容器

docker stop myapp
docker rm myapp

4.2.修改配置文件

把配置文件里的username改成prodUser

vi conf/application.yml
username: prodUser
:wq

4.3.构建容器并指定配置外部文件

docker run -d -p 8006:8006 -v /home/ljm/docker-build/conf:/conf --name myapp myapp:v1
参数描述(-p -v : 左边的参数都是宿主机,右边是容器)
-d守护进程的方式启动
-p把容器内的端口8006映射到宿主机的8006
-v把宿主机上的 /home/ljm/docker-build/conf挂载到容器的/conf目录上面
–name容器的名称
myapp:v1指定镜像名称和版本

4.4.测试挂载配置后的效果

curl 127.0.0.1:8006/print

看到下面的username=prodUser 代表宿主机的配置文件已经生效了.
在这里插入图片描述

4.5.再次修改配置文件

vi conf/application.yml
username: prodUser_19951224
:wq

4.6.重启容器

docker restart myapp

4.7.查看效果

看到username=prodUser19951224,代表修改宿主机的配置文件后,重启docker容器后就生效了。
在这里插入图片描述

5.关于Dockerfile中的VOLUME作用

VOLUME是指定某些目录挂载为匿名卷用的,通过执行 docker inspect myapp 可以查看挂载信息,下面的Source是宿主机的路径存储,Destination是容器里的路径,往容器的/tmp目录下写的文件会保存到Source对应的路径下
在这里插入图片描述

6.总结

  • 首先要在构建镜像的Dockerfile文件中启动jar的命令里加上
    –spring.config.location=/conf/application.yml ,指定使用容器里的/conf/application.yml作为项目的启动配置文件
  • 使用docker run 构建容器的时候, 使用 -v 命令把/conf目录挂载到宿主机的指定位置**

7.项目配套代码

github地址

创作不易,要是觉得我写的对你有点帮助的话,麻烦在github上帮我点下 Star

【SpringBoot框架篇】其它文章如下,后续会继续更新。
【SpringBoot框架篇】其它文章如下,后续会继续更新。

  • 1.搭建第一个springboot项目
  • 2.Thymeleaf模板引擎实战
  • 3.优化代码,让代码更简洁高效
  • 4.集成jta-atomikos实现分布式事务
  • 5.分布式锁的实现方式
  • 6.docker部署,并挂载配置文件到宿主机上面
  • 7.项目发布到生产环境
  • 8.搭建自己的spring-boot-starter
  • 9.dubbo入门实战
  • 10.API接口限流实战
  • 11.Spring Data Jpa实战
  • 12.使用druid的monitor工具查看sql执行性能
  • 13.使用springboot admin对springboot应用进行监控
  • 14.mybatis-plus实战
  • 15.使用shiro对web应用进行权限认证
  • 16.security整合jwt实现对前后端分离的项目进行权限认证
  • 17.使用swagger2生成RESTful风格的接口文档
  • 18.使用Netty加websocket实现在线聊天功能
  • 19.使用spring-session加redis来实现session共享
  • 20.自定义@Configuration配置类启用开关
  • 21.对springboot框架编译后的jar文件瘦身
  • 22.集成RocketMQ实现消息发布和订阅
  • 23.集成smart-doc插件零侵入自动生成RESTful格式API文档
  • 24.集成FastDFS实现文件的分布式存储
  • 25.集成Minio实现文件的私有化对象存储
  • 26.集成spring-boot-starter-validation对接口参数校验
  • 27.集成mail实现邮件推送带网页样式的消息
  • 28.使用JdbcTemplate操作数据库
  • 29.Jpa+vue实现单模型的低代码平台
  • 30.使用sharding-jdbc实现读写分离和分库分表
  • 31.基于分布式锁或xxl-job实现分布式任务调度
  • 32.基于注解+redis实现表单防重复提交
http://www.lbrq.cn/news/1375651.html

相关文章:

  • 网站开发语言哪一种好些/百度排名工具
  • 做公司网站首页/成都网络推广哪家好
  • 电子商务网站系统/百度快照是啥
  • asp.net网站项目建设/新媒体口碑营销案例
  • 济南设计开发app/关键词优化排名哪家好
  • 附近电脑培训班零基础/seo分析报告
  • 虫点子创意设计公司/湖南seo服务
  • 做网站的背景像素/长沙的seo网络公司
  • 网站建设价格对比单/百度发广告怎么发
  • cms网站后台模版/如何在手机上制作网站
  • 深圳网站制作服务公/关键词林俊杰在线听免费
  • 夸克建站系统源码下载/电子邮件营销
  • 360浏览器直接进入网站/网站怎样优化关键词好
  • 网站开发论文初稿/搜索最多的关键词的排名
  • 南宁市做网站/免费注册
  • 美食网站html代码/北京seo服务销售
  • 网站数据库大小/seo美式
  • 浙江建设信息港网站查询/百度seo网站优化 网络服务
  • 信誉好的企业网站建设/外贸网站建设案例
  • 天津网站开发建设/一个产品营销策划方案
  • 北京融安特智能科技营销型网站/代哥seo
  • 地区网站建设/建设网站的网站首页
  • 机关网站建设引导语/整合营销的概念
  • 小网站开发用哪些技术/百度竞价排名利弊
  • 网站被劫持应该怎么做/济南seo全网营销
  • 怎么建设网站卖东西/国家免费技能培训平台
  • 深圳网站建设的费用/关键词推广怎么做
  • 陕西免费做网站公司/营业推广策划
  • phpcmsv9手机网站开发/长沙建设网站制作
  • 谁能帮忙做网站备案/seo结算系统
  • 面经——电子电路技术知识详解
  • linux进度条程序
  • Python 字典为什么查询高效
  • “神威·太湖之光”:科技创新引擎与国家算力基石的崛起之路
  • 神经网络学习笔记
  • flutter release调试插件