RabbitMQ Docker容器不能在AWS EC2实例上工作

我有一个RabbitMQdocker容器运行,由PHP AMQ库和Docker组合使用。

当我的笔记本电脑本地运行一切正常,RabbitMQ可以接受请求。

但是,当部署到t2.medium实例进行testing时,RabbitMQ容器每40-50秒不断重新启动并崩溃。

更糟糕的是,我无法在EC2实例中finderl_crash.dump文件。

  Crash dump is being written to: erl_crash.dump... RabbitMQ 3.6.14. Copyright (C) 2007-2017 Pivotal Software, Inc. ## ## Licensed under the MPL. See http://www.rabbitmq.com/ ## ## ########## Logs: tty ###### ## tty ########## Starting broker... =INFO REPORT==== 5-Dec-2017::13:49:05 === Starting RabbitMQ 3.6.14 on Erlang 19.2.1 Copyright (C) 2007-2017 Pivotal Software, Inc. Licensed under the MPL. See http://www.rabbitmq.com/ =INFO REPORT==== 5-Dec-2017::13:49:05 === node : rabbit@bbee863f0066 home dir : /var/lib/rabbitmq config file(s) : /etc/rabbitmq/rabbitmq.config cookie hash : o9UBS7q82y5P84WzdKnCaw== log : tty sasl log : tty database dir : /var/lib/rabbitmq/mnesia/rabbit@bbee863f0066 erl_child_setup closed Crash dump is being written to: erl_crash.dump...erl_child_setup closed RabbitMQ 3.6.14. Copyright (C) 2007-2017 Pivotal Software, Inc. ## ## Licensed under the MPL. See http://www.rabbitmq.com/ ## ## ########## Logs: tty ###### ## tty ########## Starting broker... =INFO REPORT==== 5-Dec-2017::13:49:13 === Starting RabbitMQ 3.6.14 on Erlang 19.2.1 Copyright (C) 2007-2017 Pivotal Software, Inc. Licensed under the MPL. See http://www.rabbitmq.com/ =INFO REPORT==== 5-Dec-2017::13:49:13 === node : rabbit@bbee863f0066 home dir : /var/lib/rabbitmq config file(s) : /etc/rabbitmq/rabbitmq.config cookie hash : o9UBS7q82y5P84WzdKnCaw== log : tty sasl log : tty database dir : /var/lib/rabbitmq/mnesia/rabbit@bbee863f0066 =ERROR REPORT==== 5-Dec-2017::13:49:15 === Loading of /usr/lib/erlang/lib/stdlib-3.2/ebin/dets_v9.beam failed: badfile WARNING: module dets_v9 not found, so not scanned for boot steps. =ERROR REPORT==== 5-Dec-2017::13:49:15 === beam/beam_load.c(1179): Error loading module dets_v9: form size 113612 greater than size 82440 of binary erl_child_setup closed Crash dump is being written to: erl_crash.dump...erl_child_setup closed Crash dump is being written to: erl_crash.dump... RabbitMQ 3.6.14. Copyright (C) 2007-2017 Pivotal Software, Inc. ## ## Licensed under the MPL. See http://www.rabbitmq.com/ ## ## ########## Logs: tty ###### ## tty ########## Starting broker... =INFO REPORT==== 5-Dec-2017::13:49:05 === Starting RabbitMQ 3.6.14 on Erlang 19.2.1 Copyright (C) 2007-2017 Pivotal Software, Inc. Licensed under the MPL. See http://www.rabbitmq.com/ =INFO REPORT==== 5-Dec-2017::13:49:05 === node : rabbit@bbee863f0066 home dir : /var/lib/rabbitmq config file(s) : /etc/rabbitmq/rabbitmq.config cookie hash : o9UBS7q82y5P84WzdKnCaw== log : tty sasl log : tty database dir : /var/lib/rabbitmq/mnesia/rabbit@bbee863f0066 erl_child_setup closed Crash dump is being written to: erl_crash.dump...erl_child_setup closed RabbitMQ 3.6.14. Copyright (C) 2007-2017 Pivotal Software, Inc. ## ## Licensed under the MPL. See http://www.rabbitmq.com/ ## ## ########## Logs: tty ###### ## tty ########## Starting broker... =INFO REPORT==== 5-Dec-2017::13:49:13 === Starting RabbitMQ 3.6.14 on Erlang 19.2.1 Copyright (C) 2007-2017 Pivotal Software, Inc. Licensed under the MPL. See http://www.rabbitmq.com/ =INFO REPORT==== 5-Dec-2017::13:49:13 === node : rabbit@bbee863f0066 home dir : /var/lib/rabbitmq config file(s) : /etc/rabbitmq/rabbitmq.config cookie hash : o9UBS7q82y5P84WzdKnCaw== log : tty sasl log : tty database dir : /var/lib/rabbitmq/mnesia/rabbit@bbee863f0066 =ERROR REPORT==== 5-Dec-2017::13:49:15 === Loading of /usr/lib/erlang/lib/stdlib-3.2/ebin/dets_v9.beam failed: badfile WARNING: module dets_v9 not found, so not scanned for boot steps. =ERROR REPORT==== 5-Dec-2017::13:49:15 === beam/beam_load.c(1179): Error loading module dets_v9: form size 113612 greater than size 82440 of binary erl_child_setup closed Crash dump is being written to: erl_crash.dump...erl_child_setup closed RabbitMQ 3.6.14. Copyright (C) 2007-2017 Pivotal Software, Inc. ## ## Licensed under the MPL. See http://www.rabbitmq.com/ ## ## ########## Logs: tty ###### ## tty ########## Starting broker... =INFO REPORT==== 5-Dec-2017::13:49:22 === Starting RabbitMQ 3.6.14 on Erlang 19.2.1 Copyright (C) 2007-2017 Pivotal Software, Inc. Licensed under the MPL. See http://www.rabbitmq.com/ =INFO REPORT==== 5-Dec-2017::13:49:22 === node : rabbit@bbee863f0066 home dir : /var/lib/rabbitmq config file(s) : /etc/rabbitmq/rabbitmq.config cookie hash : o9UBS7q82y5P84WzdKnCaw== log : tty sasl log : tty database dir : /var/lib/rabbitmq/mnesia/rabbit@bbee863f0066 erl_child_setup closed Crash dump is being written to: erl_crash.dump...erl_child_setup closed RabbitMQ 3.6.14. Copyright (C) 2007-2017 Pivotal Software, Inc. ## ## Licensed under the MPL. See http://www.rabbitmq.com/ ## ## ########## Logs: tty ###### ## tty ########## Starting broker... =INFO REPORT==== 5-Dec-2017::13:49:32 === Starting RabbitMQ 3.6.14 on Erlang 19.2.1 Copyright (C) 2007-2017 Pivotal Software, Inc. Licensed under the MPL. See http://www.rabbitmq.com/ 

这是我的docker合成文件兔子:

 rabbit: mem_limit: 80000000 build: 'support/rabbitmq' environment: - RABBITMQ_DEFAULT_USER=${RABBITMQ_USER} - RABBITMQ_DEFAULT_PASS=${RABBITMQ_PASSWORD} - RABBITMQ_VM_MEMORY_HIGH_WATERMARK=800MB ports: - "15672:15672" - "5672:5672" restart: unless-stopped 

任何想法,为什么它不工作,或者我怎么能得到这个转储文件?

问题是由于docker-compose mem-limit被错误地设置

  mem_limit: 80000000 

这个设置是80MB,这对于RabbitMQ正确初始化是不够的。

解决这个问题,让Docker_composepipe理容器内存是解决scheme。