【问题标题】:Instance always down when running into docker运行到 docker 时实例总是关闭
【发布时间】:2018-07-06 16:19:30
【问题描述】:

我在 docker for windows 中运行我的微服务系统,这里是我的 docker-compose.yml

version: '3'
services:
  zookeeper:
    image: wurstmeister/zookeeper:3.4.6
    restart: always
    ports:
      - "8400:8400"
      - "2181:2181"
  kafka:
    image: wurstmeister/kafka:1.1.0
    restart: always
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: localhost
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
  registry-jhipster:
    image: jhipster/jhipster-registry:v3.2.4
    restart: always    
    ports:
      - "8761:8761"      
    environment:
      - SPRING_PROFILES_ACTIVE=dev,native
      - JHIPSTER_REGISTRY_PASSWORD=admin
      - JHIPSTER_SECURITY_AUTHENTICATION_JWT_SECRET=secret
      - SPRING_CLOUD_CONFIG_SERVER_NATIVE_SEARCH_LOCATIONS=file:./central-config/
    volumes:
      - ./central-config:/central-config
  db:
    image: mariadb
    restart: always
    ports:
      - "3306:3306"
    environment:    
      MYSQL_ROOT_PASSWORD: password  
    volumes:
        - ./db-init:/docker-entrypoint-initdb.d
  tomcat:
    image: tomcat:8.5-alpine
    environment:
      - JVM_OPTS=-Xmx12g -Xms12g -XX:MaxPermSize=1024m
    links:
      - db:mysql
      - registry-jhipster:registry
      - kafka:kafka
    ports:
      - "8080:8080"
    volumes:
      - ./tomcat/webapps/app.original.war:/usr/local/tomcat/webapps/app.original.war
      - ./tomcat/conf/tomcat-users.xml:/usr/local/tomcat/conf/tomcat-users.xml:ro

运行后...一切都设置好了,我可以看到我的注册表,但 app 实例始终处于关闭状态。

将这些放入 tomcat 容器日志中:

2018-07-06 16:16:48.395  WARN 1 --- [nfoReplicator-0] o.a.k.clients.consumer.ConsumerConfig    : The configuration 'value.serializer'  was supplied but isn't a known config.
2018-07-06 16:16:48.396  WARN 1 --- [nfoReplicator-0] o.a.k.clients.consumer.ConsumerConfig    : The configuration 'key.serializer' was supplied but isn't a known config.
2018-07-06 16:16:48.936  WARN 1 --- [nfoReplicator-0] c.n.discovery.InstanceInfoReplicator     : There was a problem with the instance info replicator
2018-07-06T16:16:48.936993100Z 
java.lang.OutOfMemoryError: Java heap space

发生了什么?以及如何修复我的应用并使其可用?

【问题讨论】:

  • "java.lang.OutOfMemoryError: Java heap space" 通常意味着内存不足。您的系统是否有超过 12gb(加上 Zookeeper/Registry 要求)?
  • 您是否看到任何日志来验证app.original.war 已开始处理部署描述符......以及应用程序继续运行多长时间......
  • 使用docker stats查看容器内存是否稳定?

标签: docker jhipster tomcat8 jhipster-registry


【解决方案1】:

我找到了解决方案。我将此添加到我的 docker-compose.yml

jhipster-registry:
     container_name: registry
     hostname: registry

在我的应用程序的 boostrap.yml 中

    Spring:
        cloud:
            config:
                uri: http://admin:${jhipster.registry.password}@registry:8761/config

它可以工作

【讨论】:

    猜你喜欢
    • 2021-10-08
    • 2014-08-07
    • 2020-12-21
    • 2015-07-01
    • 1970-01-01
    • 2013-10-19
    • 2022-11-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多