BUG: Docker CE windows 2.2.0 fails to run rabbitmq with volume mapping

To reproduce, create a folder called c:\docker_test_volume (or any folder on a volume that is enabled for sharing with Docker).

Run: docker run --rm -it -v c:\docker_test_volume:/var/lib/rabbitmq/mnesia rabbitmq

The following error results:

>docker run --rm -it -v c:\docker_test_volume:/var/lib/rabbitmq/mnesia rabbitmq
Preformatted text`2020-01-29 22:22:38.687 [info] <0.8.0> Feature flags: list of feature flags found:
2020-01-29 22:22:38.687 [info] <0.8.0> Feature flags:   [ ] implicit_default_bindings
2020-01-29 22:22:38.687 [info] <0.8.0> Feature flags:   [ ] quorum_queue
2020-01-29 22:22:38.687 [info] <0.8.0> Feature flags:   [ ] virtual_host_metadata
2020-01-29 22:22:38.687 [info] <0.8.0> Feature flags: feature flag states written to disk: yes
2020-01-29 22:22:40.706 [error] <0.8.0>
Error description:
    init:do_boot/3
    init:start_em/1
    rabbit:start_it/1 line 474
    rabbit:'-boot/0-fun-0-'/0 line 322
    rabbit_node_monitor:write_cluster_status/1 line 134
throw:{error,{could_not_write_file,"/var/lib/rabbitmq/mnesia/rabbit@17c074ad730e/cluster_nodes.config",
                                   ebusy}}
Log file(s) (may contain more information):
   <stdout>

BOOT FAILED
===========

Error description:
    init:do_boot/3
    init:start_em/1
    rabbit:start_it/1 line 474
    rabbit:'-boot/0-fun-0-'/0 line 322
    rabbit_node_monitor:write_cluster_status/1 line 134
throw:{error,{could_not_write_file,"/var/lib/rabbitmq/mnesia/rabbit@17c074ad730e/cluster_nodes.config",
                                   ebusy}}
Log file(s) (may contain more information):
   <stdout>

{"init terminating in do_boot",{error,{could_not_write_file,"/var/lib/rabbitmq/mnesia/rabbit@17c074ad730e/cluster_nodes.config",ebusy}}}
init terminating in do_boot ({error,{could_not_write_file,/var/lib/rabbitmq/mnesia/rabbit@17c074ad730e/cluster_nodes.config,ebusy}})

Crash dump is being written to: /var/log/rabbitmq/erl_crash.dump...done

This does NOT happen with v2.1.0.5.

Anyone with the same experience?

I am having the same experience.

Anyone have any suggestions on how to fix it?

Regards,

Cesar Romero

Hi,

having the same issue, spent a day trying to figure out why I couldn’t get RabbitMQ to work nicely on Windows.

version: '3.3'

services:
    rabbitmq:
        container_name: rabbitmq
        image: 'rabbitmq:3-management'
        ports:
            - '5672:5672'
            - '8080:15672'
        environment:
            - RABBITMQ_DEFAULT_USER=guest
            - RABBITMQ_DEFAULT_PASS=guest
        volumes:
            - 'c:\rabbitmq-data:/var/lib/rabbitmq/mnesia'
        restart: always
        privileged: true

Above is the docker-compose file we’re using, can be used as a test if needed.

[EDIT]
I see that a new version has been released, 2.2.0.3, seems to have a couple of fixes for volumes, going to try that now.

[EDIT2]
Still has the issue.

===========
2020-02-25T05:46:04.244987967Z 
Error description:
    init:do_boot/3
    init:start_em/1
    rabbit:start_it/1 line 474
    rabbit:'-boot/0-fun-0-'/0 line 322
    rabbit_node_monitor:write_cluster_status/1 line 134
throw:{error,{could_not_write_file,"/var/lib/rabbitmq/mnesia/rabbit@1ef1f3eb3192/cluster_nodes.config",
                                   ebusy}}
Log file(s) (may contain more information):
   <stdout>
2020-02-25T05:46:04.245039967Z 
    init:start_em/1
    rabbit:start_it/1 line 474
    rabbit:'-boot/0-fun-0-'/0 line 322
    rabbit_node_monitor:write_cluster_status/1 line 134
throw:{error,{could_not_write_file,"/var/lib/rabbitmq/mnesia/rabbit@1ef1f3eb3192/cluster_nodes.config",
                                   ebusy}}
Log file(s) (may contain more information):
   <stdout>
init terminating in do_boot ({error,{could_not_write_file,/var/lib/rabbitmq/mnesia/rabbit@1ef1f3eb3192/cluster_nodes.config,ebusy}})
{"init terminating in do_boot",{error,{could_not_write_file,"/var/lib/rabbitmq/mnesia/rabbit@1ef1f3eb3192/cluster_nodes.config",ebusy}}}
Crash dump is being written to: /var/log/rabbitmq/erl_crash.dump...done
2020-02-25 05:46:22.806 [info] <0.8.0> Feature flags: list of feature flags found:
2020-02-25 05:46:22.806 [info] <0.8.0> Feature flags:   [ ] drop_unroutable_metric
2020-02-25 05:46:22.806 [info] <0.8.0> Feature flags:   [ ] empty_basic_get_metric
2020-02-25 05:46:22.806 [info] <0.8.0> Feature flags:   [ ] implicit_default_bindings
2020-02-25 05:46:22.806 [info] <0.8.0> Feature flags:   [ ] quorum_queue
2020-02-25 05:46:22.806 [info] <0.8.0> Feature flags:   [ ] virtual_host_metadata
2020-02-25 05:46:22.806 [info] <0.8.0> Feature flags: feature flag states written to disk: yes
2020-02-25 05:46:24.819 [error] <0.8.0> 
Error description:
    init:do_boot/3
    init:start_em/1
    rabbit:start_it/1 line 474
    rabbit:'-boot/0-fun-0-'/0 line 322
    rabbit_node_monitor:write_cluster_status/1 line 134
throw:{error,{could_not_write_file,"/var/lib/rabbitmq/mnesia/rabbit@1ef1f3eb3192/cluster_nodes.config",
                                   ebusy}}
Log file(s) (may contain more information):
   <stdout>
2020-02-25T05:46:24.820929313Z 
BOOT FAILED

[EDIT]
Downgrading docker version sorts it out

choco uninstall docker-desktop
choco install docker-desktop --version=2.1.0.5 -y
# start up docker, go to settings > shared drives > tick share C drive
#cd to project
docker-compose up -d