Docker-compose 部署SpringCloud微服务步骤及遇到的问题
部署环境
CenterOS 7
Docker version 1.13.1, build 7d71120/1.13.1
1. 安装docker-compose
参考视频
黑马程序员 第58节参考文件在评论的下方
安装完成版本如下
[root@raw microservice_bash]# docker-compose -v
docker-compose version 1.29.1, build c34c88b2
2. 开始部署
1. 发生报错
[root@raw microservice_bash]# docker-compose up -d
Building system
unknown flag: --iidfile
See 'docker build --help'.
ERROR: Service 'system' failed to build : Build failed
2. 解决办法 修改docker-compose 版本
2.1 直接替换源文件
下载方式
https://pan.baidu.com/s/1cxuly3dRoZ8BgVklmxfriQ 密码:rcqi
修改文件名称为 docker-compose删除参考视频中的文件
重新上传授权
查看版本
[root@raw microservice_bash]# docker-compose -v
docker-compose version 1.26.2, build eefe0d31
3. 继续部署
4. 如果你按照这个步骤还是报错的话那可能就是语法错误了
可以回复你的报错 我帮你看看
3. 查看状态
### 进入容器查看日志(看你自己有没有配)
[root@raw microservice_bash]# docker exec -it 0f4a41b99275 /bin/sh
/ # ls
bin dev etc home lib linuxrc logs media mnt proc root run sbin srv sys tmp usr var
4. 测试接口
4.1 其他一切正常 发现文件导出接口发生报错
报错内容如下
java.lang.NullPointerException: nullat sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264)at sun.awt.FontConfiguration.readFontConfigFile(FontConfiguration.java:219)at sun.awt.FontConfiguration.init(FontConfiguration.java:107)at sun.awt.X11FontManager.createFontConfiguration(X11FontManager.java:774)at sun.font.SunFontManager$2.run(SunFontManager.java:431)at java.security.AccessController.doPrivileged(Native Method)at sun.font.SunFontManager.<init>(SunFontManager.java:376)at sun.awt.FcFontManager.<init>(FcFontManager.java:35)at sun.awt.X11FontManager.<init>(X11FontManager.java:57)at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)at java.lang.reflect.Constructor.newInstance(Constructor.java:423)at java.lang.Class.newInstance(Class.java:442)at sun.font.FontManagerFactory$1.run(FontManagerFactory.java:83)at java.security.AccessController.doPrivileged(Native Method)at sun.font.FontManagerFactory.getInstance(FontManagerFactory.java:74)at java.awt.Font.getFont2D(Font.java:491)at java.awt.Font.canDisplayUpTo(Font.java:2060)at java.awt.font.TextLayout.singleFont(TextLayout.java:470)at java.awt.font.TextLayout.<init>(TextLayout.java:531)at org.apache.poi.ss.util.SheetUtil.getDefaultCharWidth(SheetUtil.java:273)at org.apache.poi.ss.util.SheetUtil.getColumnWidth(SheetUtil.java:248)at org.apache.poi.ss.util.SheetUtil.getColumnWidth(SheetUtil.java:233)at org.apache.poi.hssf.usermodel.HSSFSheet.autoSizeColumn(HSSFSheet.java:2220)at org.apache.poi.hssf.usermodel.HSSFSheet.autoSizeColumn(HSSFSheet.java:2202)at cn.hutool.poi.excel.ExcelWriter.autoSizeColumn(ExcelWriter.java:256)at cn.hutool.poi.excel.ExcelWriter.autoSizeColumnAll(ExcelWriter.java:242)at com.microservice.common.utils.excel.ExcelUtils.downloadData(ExcelUtils.java:81)at
4.2 解决办法
参考文档
https://www.cnblogs.com/pxblog/p/15189127.html
修改需要文件导出的项目的Dockerfile
将· FROM java:8-alpine
修改为 FROM frolvlad/alpine-java:jdk8-slim
重新部署
[root@raw microservice_bash]# docker-compose up -d
Building system
Step 1/3 : FROM frolvlad/alpine-java:jdk8-slim
Trying to pull repository docker.io/frolvlad/alpine-java ...
jdk8-slim: Pulling from docker.io/frolvlad/alpine-java
6c40cc604d8e: Pull complete
1e2704e84e24: Pull complete
09525ade415b: Pull complete
Digest: sha256:b2b04c2a3ae4a9ec317cd9b07416beb831302ec8822da130f4e649a6ceff783
这个时候我们继续使用导出接口就不会发生报错了
其他配置
docker 限制启动的jar项目的运行内存
很多小伙伴都是使用vmware运行的服务 内存的话可能只有1 2G 这时候要是全力运行的话 内存就爆啦(俺也一样) 使用以下方式进行限制内存运行
- 方式一:
修改Dockerfile
文件 加入以下内容 -Xms300m -Xmx512m
-Xmx 表示JVM最大的内存
-Xms 表示JVM初始内存
ENTRYPOINT java -Xms300m -Xmx512m -jar /tmp/app.jar
- 方式二:
待完善及测试
Docker-compose 部署SpringCloud微服务步骤及遇到的问题相关推荐
- Docker Compose配置springboot微服务项目
[Docker那些事]系列文章 docker 安装 与 卸载 centos Dockerfile 文件结构.docker镜像构建过程详细介绍 Dockerfile文件中CMD指令与ENTRYPOINT ...
- Docker实战-部署GPE微服务的监控体系(二)
前言 上篇文章:我们介绍了GPE体系中,grafana的部署和安装(<Docker实战-部署GPE微服务的监控体系>),今天这个文章,我们继续介绍GPE体系中,Prometheus和Exp ...
- Docker实战-部署GPE微服务的监控体系
Docker实战-部署GPE微服务的监控体系 前言 微服务体系架构里,有很多的解决方案都是使用GPE作为微服务体系的监控体系, 如下图所示: 我们这里经常提到的GPE,包括Grafana,Promet ...
- centos7.9使用jenkins部署springcloud微服务_配合SVN_脚本_实现自动部署后端以及前端程序_亲测成功---持续集成部署Jenkins工作笔记0023
以前有个jekins教程,还比较详细,但是,那个是基于git和svn,并且需要配置jekins支持git,svn的插件. 配置以后就可以实现只要提交代码,就会自动触发部署,但那个时候安装jenkins ...
- docker 部署java_使用Docker堆栈部署的微服务-WildFly,Java EE和Couchbase
docker 部署java 关于微服务的资料很多,只是用谷歌搜索就可以了 ! 几年前,我在比利时的Devoxx上发表了有关将单片重构为微服务的演讲,它获得了很好的评价: 该博客将展示Docker如何简 ...
- 使用Docker堆栈部署的微服务-WildFly,Java EE和Couchbase
关于微服务的资料很多,只是用谷歌搜索就可以了 ! 几年前,我在比利时的Devoxx上发表了有关将单片重构为微服务的演讲,它得到了很好的评价: 该博客将展示Docker如何简化微服务的创建和关闭. 该博 ...
- docker中部署piggymetrics微服务项目
1.环境 vmware 10. centos7.0,Docker(version 18.09.7, build 2d0083d),docker-compose(version 1.24.1, buil ...
- 容器化技术与微服务结合---结合springcloud微服务框架进行部署(含切换成阿里云docker仓库)(五)
目录 系列 更换成阿里云仓库 开通阿里云镜像服务 创建仓库 本地k8s切换成阿里云的镜像仓库 测试阿里云镜像 准备简单的微服务 eureka 应用配置 k8s配置: demo-a 应用配置 k8s配置 ...
- 关于华为私有云部署若依springcloud微服务项目改造及部署
关于华为私有云部署若依springcloud微服务项目改造及部署 1.项目介绍 当前微服务项目主流的注册中心为阿里巴巴的nacos,但介于甲方要求使用华为的注册中心,所以在接下来讲解项目改造: 2 ...
最新文章
- C++中Reference与指针(Pointer)的使用对比
- 那些总是写“烂代码”的同学,强烈推荐你使用这款IDEA插件!
- Iterator(迭代器)的一般用法
- 编程之美2.15 二维数组最大子数组的和(数组下标从(1,1)开始)
- linux 下进入oracle,linux 下的oracle怎么启动
- leetcode 189. 旋转数组
- 2021 程序媛跳槽记:学习计划篇(已收获字节等offer)
- bat循环执行带参数_wxappUnpacker的bingo.bat脚本逐行解读
- 信息安全工程师笔记-恶意代码防范技术原理
- 算法63----丑数【动态规划】
- VMLite 安装linux系统,VMlite安装XPMode及xp、win7、linux的虚拟磁盘到D盘的方法(15页)-原创力文档...
- ArcGIS——Window Server2016中的安装10.2问题
- Codeforces Round #456 (Div. 2): E. Prime Gift(折半枚举)
- MQTT基础--MQTT 客户端和代理以及 MQTT 服务器和连接建立说明:第 3 部分
- 数据分析统计工具有哪些?
- android音乐播放器源代码,android音乐播放器源代码.doc
- 科研写作——常见句式(十一)
- 使用BadBoy录制JMeter脚本
- uniapp从开发App到上架应用市场需要经历什么?
- java 通过SSL/TLS加密https建立连接