ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

利用Docker Compose整合springboot + mongo + redis

2021-03-01 19:01:39  阅读:181  来源: 互联网

标签:Compose springboot redis jar eveng 镜像 docker mongo


利用Docker Compose整合springboot + mongo + redis

大致构架

mongo + redis + java jdk8
用Docker Compose 整合通信

构建springboot的docker镜像

  1. java jdk8
    从docker hub下载镜像,使用的镜像:https://hub.docker.com/r/mayan31370/openjdk-alpine-with-chinese-timezone/tags
    下载镜像:docker pull 镜像
    运行镜像:
    docker run -it repositoty-name

  2. idea打包jar
    可参考这篇博文https://www.cnblogs.com/zscc/articles/9428466.html

  3. 将jar包拷入容器中
    从宿主机拷贝到容器:docker cp source-path container-id:target-path

docker cp /home/icey/IdeaProjects/eveng/out/artifacts/eveng_jar 9101ab6b7b38:/test/
在docker中运行jar包:java -jar jarTest.jar,建议先测试一下具体能不能跑在里面
java -jar eveng.jar

  1. 构建镜像
    在你存放的jar所在的目录下,添加一个命名为Dockerfile的文件
    文件内容如下
# jdk8
FROM java:8
VOLUME /tmp
# 将整个jar文件,包括依赖文件全部复制进镜像中
copy eveng_jar eveng_jar

RUN bash -c 'touch /eveng_jar/eveng.jar'

# 环境运行命令
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/eveng_jar/eveng.jar"]

开始构建镜像docker build -t springboot:eveng .

运行构建好的镜像docker run -it -p 8080:8080 springboot:eveng,开放8080端口供外网IP访问
在这里插入图片描述

mongo部分

mongo镜像:https://hub.docker.com/_/mongo?tab=tags
选好自己要用的版本pull下来

redis部分

参考mongo

docker compass整合

Linux下载compass:sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

  • 创建docker-compose.yml
# yaml 配置
version: '3'
services:
 mongo:
  image: mongo:4.4
  # 数据持久化映射
  volumes:
   - /Users/data/mongo:/data/db
  restart: always
  ports:
   - "27017:27017"
 redis:
  image: redis:latest
  volumes:
   - /Users/data/redis:/data
  restart: always
  ports:
   - "6379:6379"
 springboot:
  image: springboot:eveng
  depends_on:
   - redis
   - mongo
  links:
   - redis
   - mongo
  restart: always
  ports:
   - "8080:8080"

  
  

参考博客

  • Docker 封装java镜像 https://blog.csdn.net/shykevin/article/details/102871399
  • 菜鸟教程Docker Compose https://www.runoob.com/docker/docker-compose.html
  • 使用docker简单启动springboot项目 https://www.cnblogs.com/zhangjianbing/p/9156366.html
  • 使用docker-compose部署springboot项目 https://www.cnblogs.com/davenzeng/p/11491693.html

标签:Compose,springboot,redis,jar,eveng,镜像,docker,mongo
来源: https://blog.csdn.net/qq_39640321/article/details/114269124

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有