问题描述

jar包项目,启动后外面不能访问,要过很长时间才可以访问,日志也没有报错。

开始了 漫长的 填坑之路。

lsof -i:端口(方向不对)

第一张图带ipv4是创建容器指定了端口,并且没有配置 --network host参数

第二张图不带ipv4是创建容器配置 --network=host 没有指定端口(这种方式不能指定端口)

结果还是没有解决问题,一直以为是因为使用 --network=host 方式没有ipv4绑定呢,这里走了很多弯路,没有解决,但是为什么没有ipv4也不知道为什么。

下面说一说我对docker network的理解,安装好docker后自动创建下面三种。

1、bridge:桥接网络 默认情况下启动的Docker容器,都是使用 bridge,Docker安装时创建的桥接网络,每次Docker容器重启时,会按照顺序获取对应的IP地址,这个就导致重启下,Docker的IP地址就变了

2、none:无指定网络 使用 --network=none,docker 容器就不会分配局域网的IP。

3、host: 主机网络 使用 --network=host,此时,Docker 容器的网络会附属在主机上,两者是互通的。 例如,在容器中运行一个Web服务,监听8080端口,则主机的8080端口就会自动映射到容器中。这时配置 -p 端口参数是无效的

注:--network=host 和 --net=hos 好像是一样的,说下我的简单理解,如果所有docker 容器都在一台机器上,使用bridge或host都可以,如果是分布在不面的物理机上,必须选择host,如果不指定host那么两台物理机上的容器不能相互访问。

docker exec 不能进入容器

出现这样的问题是由于镜像系统不一,使用错误shell解释器导致,可尝试以下其中一种方案。

docker exec -it container-test /bin/bash

docker exec -it container-test /bin/sh

docker exec -it container-test /bin/csh

正确的解决方法

方法一:

进入容器的 JAVA安装目录    /jre/lib/security/

vi java.security  修改这个文件

找到 securerandom.source=file:/dev/random  修改为  securerandom.source=file:/dev/./urandom

然后重启容器,发现就正常了

方法二:

-Djava.security.egd=file:/dev/./urandom   加入JVM的这个启动参数

也是可以的,这个主要是使用tomcat 随机数引起的,用jetty或undertow在不配置此参数时不知道会不会有这种情况,也不知道为什么会存在这么大的一个问题。

Docker Jar项目启动慢相关推荐

  1. 关于SpringBoot项目通过jar包启动之后无法读取项目根路径静态资源

    前言:这个是昨天晚上在部署一个项目的时候发现的,在此记录一下 关于SpringBoot项目通过jar包启动之后无法读取项目根路径静态资源 问题描述 在部署了一个项目之后,打开项目页面进行测试,发现有一 ...

  2. docker启动后自动退出_Spring Boot项目启动后如何自动执行逻辑

    1. 前言 不知道你有没有接到这种需求,项目启动后立马执行一些逻辑.比如简单的缓存预热,或者上线后的广播之类等等.如果你使用 Spring Boot 框架的话就可以借助其提供的接口CommandLin ...

  3. 使用Nacos项目jar包启动抛出的yml异常

    记录一下项目jar包启动时一直抛出nacos yml编译错误的问题 一开始抛出yml的问题,是编码问题,但是又不知道Nacos里怎么配置编码格式. 所以我只能把nacos中配置文件里的注释含泪删除调试 ...

  4. mvc 扫描jar jsp_SpringBoot+jsp项目启动出现404

    通过maven创建springboot项目启动出现404 application.properties配置 spring.mvc.view.prefix=/WEB-INF/jsp/ spring.mv ...

  5. SpringBoot项目运行jar包启动

    本文来说下SpringBoot项目运行jar包启动 文章目录 概述 概述

  6. java jar 启动项目,SpringBoot项目运行jar包启动的步骤流程解析

    SpringBoot项目在开发中,方便快捷,有一点原因就是SpringBoot项目可以打jar包运行:把jar包直接扔服务器上,然后运行jar包就能访问项目接口了.下面介绍SpringBoot项目打j ...

  7. nohup命令解决SpringBoot/java -jar命令启动项目运行一段时间自动停止问题

    nohup命令解决SpringBoot/java -jar命令启动项目运行一段时间自动停止问题 问题背景 有一个springboot项目,放在测试服务器跑,但是隔一段时间,就会GG,要搞清楚怎么回事. ...

  8. Maven项目启动报错 org.apache.catalina.LifecycleException: Failed to start component,手动添加Oracle JDBC 驱动jar包

     项目启动报错: D:\apache-tomcat-8.5.43\bin\catalina.bat run [2019-09-11 11:31:53,154] Artifact heima_ssm_w ...

  9. Linux 启动jar项目相关命令(解决关闭Linux终端,程序自动停止问题)

    Linux 启动jar项目相关命令 序言 启动jar包命令相关问题及解决办法 问题描述 解决办法 结语 序言 开发中在服务器上部署项目避免不了的,无论是测试还是开发都会遇到要重启项目及部署项目,所以部 ...

  10. centos7 安装 docker + 载入镜像 + 启动项目

    开发十年,就只剩下这套Java开发体系了 >>>    Docker 包括三个基本概念:镜像(Image)容器(Container)仓库(Repository)先理解了这三个概念,就 ...

最新文章

  1. 2021陇南高考成绩查询,2021年陇南中考成绩公布查询时间 陇南中考成绩查询方式入口...
  2. Jquery Easy UI Datagrid 上下移动批量保存数据
  3. shell脚本判断输入参数个数
  4. ML之Hierarchical clustering:利用层次聚类算法来把100张图片自动分成红绿蓝三种色调
  5. 多维柔性作业调用_摆脱困境:从预定作业中调用安全方法
  6. 字符串:你看的懂的KMP算法(带验证)
  7. pandas 索引去重_Pandas 同元素多列去重的实例
  8. Python资料收藏(杂乱版)
  9. Windows Server 2008终端服务详解系列3:结合MOSS 2007部署TS Web Access
  10. js字符串转日期类型
  11. 创意视觉应用︱基于深度学习的CVaaS计算机视觉即服务案例(Computer Vision as a Service)
  12. Installshield 静默安装
  13. html全局背景代码,html背景代码
  14. 使用gca警告: Calling gca() with keyword arguments was deprecated in Matplotlib 3.4.
  15. 远程控制计算机显示为什么不能满屏,win7系统连接远程桌面却不能全屏显示的解决方法...
  16. 校友小程序定制开发 带我们回到那个学生时代
  17. 骗子改电脑配置信息兜售垃圾,怕上当进来学习一下
  18. 程序员延寿指南 | A programmer's guide to live longer
  19. 新点软件怎么导入清单_表格软件excel怎样导入数据 | 新点软件怎么导入excel清单表格 表格有什么要求???...
  20. dart sqlite 嵌入式数据库 sqflite教程

热门文章

  1. 扫描线zbuffer消隐算法
  2. OpenCV 银行卡卡号识别
  3. python读书心得体会范文_读书心得体会范文6篇
  4. 看看阿里双十一970P数据处理得,那叫一个牛啤!
  5. 计算机文件夹里没有显示桌面,桌面没有图标显示的解决方法
  6. 【视频来了】那些未曾学到的Esp8266技术干货,都在本系列公开课直播中一一吸收,奉献开源于国内物联网!
  7. 一些常用的软件网络端口协议分类介绍
  8. RecyclerView加载多类型item 实现淘宝首页布局
  9. 微软修复了国家安全局上报的Windows严重漏洞
  10. Activemq优点和缺点