当前位置:   article > 正文

Docker服务部署案例(通过Dockerfile构建服务访问redis数据)

docke 打包自己的代码和访问redis数据库

本文通过docker的方式启动并运行redis。通过构建springboot项目用来统计网页访问人数(该人数纪录在redis中)。最终,采用Dockerfile打包springboot项目,将其部署至服务器运行。

  1. 使用 Docker 部署 redis 容器
  1. # 1.拉取最新的redis镜像
  2. docker pull redis
  3. # 2.查看dockerhub确认redis存储数据和配置文件的位置,并通过docker启动redis
  4. # 将redis的data目录挂载至宿主机
  5. # 将redis的conf文件挂载至宿主机
  6. # -d 后台启动
  7. # --name 指定名称
  8. # -p 映射端口
  9. # redis-server /usr/local/etc/redis/redis.conf 采用配置文件的配置启动redis
  10. docker run \
  11. -v /Users/yorick/Documents/study/code/my-redis-docker-env/data:/data \
  12. -v /Users/yorick/Documents/study/code/my-redis-docker-env/redis.conf:/usr/local/etc/redis/redis.conf \
  13. -d --name=myredis \
  14. -p 6379:6379 \
  15. redis redis-server /usr/local/etc/redis/redis.conf
  1. # redis.conf
  2. appendonly yes # 持久化数据
  3. requirepass 199748 # 需要指定密码
  1. 通过 SpringBoot Initializer 生成 SpringBoot 项目。并编写操作redis的接口,实现访问人数自增的功能
  1. @RestController
  2. public class CountPersonNumberController {
  3. @Autowired
  4. private StringRedisTemplate redisTemplate;
  5. @GetMapping("/person/count")
  6. public String GetPersonCount() {
  7. Long personCount = redisTemplate.opsForValue().increment("personCount");
  8. return "get person count: " + personCount;
  9. }
  10. }
  1. # application.yaml
  2. spring:
  3. redis:
  4. host: 10.23.107.247
  5. port: 6379
  6. password: 199748
  1. 本地测试执行效果
image-20220416141520632.png
  1. Maven打包服务,并编写Dockerfile
  1. FROM openjdk:8-slim
  2. LABEL maintainer=yaoqijun
  3. COPY target/*.jar /app
  4. ENTRYPOINT ["java","-jar","/app"]
  1. 构建SpringBoot服务的Docker镜像
  1. # 注意,Dockerfile与target在同级目录下,使用该命令可以使得Dockerfile中通过相对路径找到copy文件的位置所在
  2. docker build -t java-demo:v1.0 .
image-20220416142144196.png
  1. 使用Docker启动构建的java-demo容器,并访问页面查看人数访问结果
docker run -d -p 8080:8080 --name java-demo-app java-demo:v1.0
  1. 远程dockerhub推送,方便其他同事下载使用docker镜像,进行环境服务一键部署
  1. # 登陆dockerhub
  2. docker login
  3. # 将构建的镜像打标签,前缀为dockerhub账号的名称
  4. docker tag java-demo:v1.0 yaokuku123/java-demo:v1.0
  5. # 将打好标签的镜像推送至dockerhub
  6. docker push yaokuku123/java-demo:v1.0
image-20220416143422418.png
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/537905
推荐阅读
相关标签
  

闽ICP备14008679号