2017-01-26 2 views
0

wenn ich Volume-Mapping in Docker 1.13.0, einige Datei ist beschädigt.Docker Volume Mapping-Datei beschädigt, wenn Dateisystem xfs und Speichertreiber ist Overlay

In Docker Container, wenn "ls -l" der Ordner, angezeigt es wie folgt aus:

"???? ?????????? file_corrpted_and_cant_access.conf"

und kann es nicht bearbeiten oder löschen. zeigt es nur "Keine solche Datei oder Verzeichnis". Ich denke, es kann Datei Inode und Pfad nicht verknüpfen.

wie es zu beheben?

Zusätzliche Informationen

nach Volumen-Mapping, ich Soft-Link Volumen Mapping-Ordner innerhalb Docker-Container.

docker run --privileged -d -v /opt/volume_mapping_folder/:/inside_container/inside_folder --restart=always testcontainer

und insde Docker Behälter I Soft-Link-Ordner

docker -it testcontainer /bin/bash ln -s /inside_container/inside_folder /opt/appFolder touch /opt/appFolder/file_corrpted_and_cant_access.conf

Ausgabe von docker info:

Server Version: 1.13.0 Storage Driver: overlay Backing Filesystem: xfs Supports d_type: false Logging Driver: json-file Cgroup Driver: cgroupfs Plugins: Volume: local Network: bridge host macvlan null overlay Swarm: inactive Runtimes: runc Default Runtime: runc Init Binary: docker-init containerd version: 03e5862ec0d8d3b3f750e19fca3ee367e13c090e runc version: 2f7393a47307a16f8cee44a37b262e8b81021e3e init version: 949e6fa Security Options: seccomp Profile: default Kernel Version: 3.10.0-514.6.1.el7.x86_64 Operating System: CentOS Linux 7 (Core) OSType: linux Architecture: x86_64 CPUs: 2 Total Memory: 5.671 GiB ID: 2D2E:73MA:BJQ3:WQAJ:BR3W:TYF5:F3MQ:E7S3:KZGV:A64K:ASZK:UEXE Docker Root Dir: /var/lib/docker Debug Mode (client): false Debug Mode (server): false Registry: https://index.docker.io/v1/ Experimental: false Insecure Registries: 127.0.0.0/8 Live Restore Enabled: false

Antwort

2

Dies ist verwandt XFS-Dateisystem mit Overlay-Modus.

https://github.com/docker/docker/issues/27358

die Lösung eine davon ist.

  1. Einstellung Docker Speichertreiber zu 'Device Mapper'

  2. Verwendung ext4-Dateisystem anstelle von xfs

  3. XFS-Partitionen müssen mit ftype auf 1

0

Ich habe heute ein ähnliches Problem mit Docker 1.13.0 mit einem CentOS-Image auf einem RHEL 7.3-System. Dateien in meinem Container-Root-Dateisystem waren ungerade. Zum Beispiel würde ich versuchen, eine Datei zu löschen, aber sie würde nicht aus dem Dateisystem entfernt werden und dasselbe '?' Du hast gepostet, wenn 'ls' läuft. Ich hatte auch Probleme, den Besitz von Dateien zu ändern. Wie auch immer, meine Vermutung ist, dass Docker 1.13.0 den Standard-Speichertreiber auf overlay geändert hat, als es in der Vergangenheit (Docker 1.12.5) war devicemapper. Ich änderte den Standard zurück zu Devicemapper und die Probleme gingen weg.

Ich bin kein Docker oder Linux Dateisystem-Experte und ich bin mir nicht sicher, ob die Änderung zur Überlagerung als Vorgabe beabsichtigt war.

+0

Thx formatiert werden, es sieht wie ein ernster Bug aus. –

+0

thx, nach dem Wechsel von Storage-Treiber zu Devicemapper, gingen die Probleme weg. –

Verwandte Themen