2017-10-25 1 views
0

Ich habe die folgenden Zeilen in meinem Docker-compose.ymlWie behebe ich mein docker-compose.yml bekomme ich eine rabbitmq.config ist ein Verzeichnisfehler?

rabbit: 
    volumes: 
    - ./enabled_plugins:/etc/rabbitmq/enabled_plugins 
    - ./config/definitions.json:/opt/definitions.json:ro 
    - ./config/rabbitmq.config:/etc/rabbitmq/rabbitmq.config:ro 

Aber für die rabbitmq.config, wenn ich starten sagt es

/usr/local/bin/docker-entrypoint.sh: line 386: /etc/rabbitmq/rabbitmq.config: Is a directory 

Jede Idee, was hier in meinem Volumen Erklärungen falsch ist ???

+0

aktualisieren, was ich tun möchte, ist einige Austauschvorgänge hinzufügen, wenn ich meinen rabbitmq-Server starte. –

Antwort

1

Sie mounten Dateien als Verzeichnisse.

Die vereinfachte Lösung besteht darin, das übergeordnete Verzeichnis der Dateien, die Sie in den Container einhängen, in die gewünschten Verzeichnisse einzuhängen.

rabbit: 
    volumes: 
    - .:/etc/rabbitmq 
    - ./config:/opt:ro 
    - ./config:/etc/rabbitmq:ro 

Aber beachten Sie in /opt montieren, und Sie würden es vermeiden wollen, so setzen Sie alle Konfigurationsdateien in config auf dem Host und montieren sie explizit in Verzeichnisse:

rabbit: 
    volumes: 
    - ./config:/etc/rabbitmq 
    - ./config:/opt/rabbitmq:ro 

Hinweis Sie muss rabbitmq.config an neuen Standort von definition.json

+0

Danke das war es. Obwohl sie in einigen Codebeispielen explizit die Dateien als Volumes festlegen. Jedenfalls war das das Problem. –

1

Es ist wahrscheinlich, dass die ./config/rabbitmq.config in Ihrem aktuellen Verzeichnis tatsächlich ein Verzeichnis anstelle einer Konfigurationsdatei ist, die docker-entrypoint.sh erwartet.

+0

Nein, ist es nicht. Wenn ich 'Datei./Config/rabbitmq.config 'mache, bekomme ich ASCII-Text. –

+1

Das ist seltsam und ich kann nicht reproduzieren, was du erlebt hast. Dann würde ich vorschlagen, dass Sie die genaue Verzeichnisstruktur in ein anderes Verzeichnis kopieren, stellen Sie sicher, dass './Config/rabbitmq.config' die gewünschte Konfigurationsdatei ist und 'docker-komponieren' Sie das gleiche' docker-compose.yml' zur Überprüfung. – robert

Verwandte Themen