[Docker-compose] Verwendung unbenannter und benannter Volumes von Volumes. Binden Sie die Halterung

Dies ist ein persönliches Memo.

Verwendung des von Docker oder Docker-Compose angegebenen Volumes.

Unterschied zwischen zwei Volumes in docker-compose.yml

Es gibt einen Unterschied zwischen (1) äußeren Volumes und (2) Volumes in Diensten in docker-compose.yml.

docker-compose.yml Beispiel


version: "3.7"

volumes:
  todo-mysql-data:

services:
  mysql:
    image: mysql:5.7
    volumes:
      - todo-mysql-data:/var/lib/mysql

① Äußere Volumina

Volumes in derselben Hierarchie wie die Version bereiten Volumes mit dem angegebenen Namen vor.

Dies wird als "benanntes Volume" bezeichnet.

volumes:
  todo-mysql-data:

Benannte Volumenmerkmale (Verdienste)

--Volumes können von mehreren Containern gemeinsam genutzt werden.


## ② Volumen in Dienstleistungen

Volumes in jedem Dienst heißen ** bind mount ** und unterscheiden sich von Volumes.

** Stellt den Prozess des Mountens (Freigebens) des Verzeichnisses im Container und des Verzeichnisses auf der Hostseite dar **.

services:
  mysql:
    image: mysql:5.7
    volumes:
      - todo-mysql-data:/var/lib/mysql

Im obigen Beispiel wird das Volume "todo-mysql-data" im Container auf "/ var / lib / mysql" gemountet.

Jetzt können Sie die Daten in / var / lib / mysql mit dem Volume synchronisieren.


## So schreiben Sie einen Bind Mount Es gibt verschiedene Möglichkeiten, einen Bind-Mount zu schreiben.
Artikel Binden Sie die Halterung Inhalt
Benanntes Volumen datavolume:/var/lib/mysql Hängen Sie das angegebene Volume in das angegebene Verzeichnis im Container ein
Anonymes Volumen /var/lib/data Geben Sie nur das Verzeichnis im Container an. Ein Volumen von Hashwerten wird zugewiesen. (Es verschwindet, wenn der Container gelöscht wird)
Stammverzeichnis freigeben(Relativer Pfad) .:app Hängen Sie das angegebene Verzeichnis im Container in das laufende Verzeichnis auf der Hostseite ein.
Angegeben durch absoluten Pfad /opt/data:/var/lib/mysql Hängen Sie das angegebene Verzeichnis im Container in das angegebene Verzeichnis auf der Hostseite ein.

・ Geben Sie das Stammverzeichnis frei

Ich sehe oft Beschreibungen wie ".: App".

Auf diese Weise können die Daten im Container auf der Hostseite reproduziert werden. (Ohne dies können die Daten auf der Hostseite nicht angezeigt werden.)

- Hauptverwendungen von benanntem Volume und benanntem Volume

Artikel Benanntes Volumen Anonymes Volumen
Hauptanwendungen ・(1)Teilen eines Volumes mit mehreren Containern (Beispiel: db)(2)Von der Synchronisation zur Hostseite ausschließen(Beispiel: Knoten_module) Daten, die nicht mit anderen Containern geteilt werden müssen, sondern aufbewahrt werden sollen (Beispiel: Protokoll)
Container löschen Bleibt (containerunabhängig) Verschwinden

Recommended Posts

[Docker-compose] Verwendung unbenannter und benannter Volumes von Volumes. Binden Sie die Halterung
Verwendung von StringBurrer und Arrays.toString.
Verwendung von EventBus3 und ThreadMode
Wie man Gleichheit und Gleichheit benutzt (wie man Gleichheit benutzt)
Verwendung von setDefaultCloseOperation () von JFrame
Verwendung des benannten Volumes in docker-compose.yml
So richten Sie kapt ein und verwenden es
[Java] [Maven3] Zusammenfassung der Verwendung von Maven3
Verwendung von Teilzeichenfolgen und Substratmethoden
Verwendung von @Builder und @NoArgsConstructor zusammen
Verwendung der Dateien args :, environment :, env_file: und .env mit dem Befehl docker-compose
[Java] Beachten Sie, wie Sie RecyclerView verwenden und die animierte Swipe-Verarbeitung implementieren.
JDBC Versprechen und Schreibbeispiel
[Java] Verwendung der FileReader-Klasse und der BufferedReader-Klasse
[Ruby] Verwendung der gsub-Methode und der sub-Methode
Ausgabe der Verwendung der Slice-Methode
Verwendung von Segmented Control und zu notierenden Punkten
Verwendung der Scope- und Pass-Verarbeitung (Servist)
Verwendung von JQuery in Rails 6 js.erb
[Java] Verwendung der Kalenderklasse und der Datumsklasse
So verwenden Sie Eclipse auf meinem PC mit 32 Bit und 2 GB Speicher
Verwendung von Map
Wie benutzt man rbenv?
Verwendung mit_option
Verwendung von fields_for
Verwendung von java.util.logging
Verwendung der Karte
Verwendung von collection_select
Wie benutzt man Twitter4J
Wie benutzt man active_hash! !!
Verwendung von MapStruct
Verwendung von TreeSet
[Verwendung des Etiketts]
Wie schreibe ich Docker-Compose
Wie man Identität benutzt
Wie man Hash benutzt
Verwendung von CommandLineRunner im Spring Batch von Spring Boot
Zusammenfassung der Java-Kommunikations-API (1) Verwendung von Socket
So erstellen Sie Docker-Compose
Zusammenfassung der Java-Kommunikations-API (3) Verwendung von SocketChannel
Zusammenfassung der Java-Kommunikations-API (2) Verwendung von HttpUrlConnection
Verwendung von Dozer.mapper
Wie benutzt man Gradle?
Verwendung von org.immutables
Verwendung von java.util.stream.Collector
Verwendung von VisualVM
Erklärung von Ruby on Rails für Anfänger ④ ~ Informationen zu Benennungsregeln und zur Verwendung von form_Tag ~
Verwendung und Anwendung der JFrame / Canvas-Klasse von Java
Verwendung von Map
So verwenden Sie OpenCV 4 unter Android und zeigen die Kamera live an
Verwendung des mit Tensorflow 2.0 trainierten Modells mit Kotlin / Java
So verwenden Sie das Font Awesome-Symbol für ul und li
Aufrufen und Verwenden der API in Java (Spring Boot)
Verfahren zum Übergeben von RealmObject an Fragment und zur Verwendung von Parceler