GNU/Linux >> Linux Esercitazione >  >> Panels >> Docker

Come configurare Btrfs come motore di archiviazione in Docker

Docker è uno strumento di gestione della piattaforma aperta per i container Linux. Fornisce agli sviluppatori e agli amministratori di sistema un mezzo per creare e creare pacchetti di applicazioni in contenitori leggeri.

Docker utilizza i dispositivi devicemapper come motore di archiviazione predefinito. Per utilizzare Btrfs come motore di archiviazione, attenersi alla seguente procedura. Nota che Red Hat Enterprise Linux (RHEL) rimuove il driver di archiviazione Btrfs dalla loro build di Docker, sia nel repository Extra Packages for Enterprise Linux (EPEL) che nella versione rilasciata per RHEL7.

Utilizzare il comando systemctl per interrompere il servizio Docker. Utilizzare il comando mkfs.btrfs per creare un file system Btrfs su un dispositivo a blocchi. Utilizzare il comando blkid per determinare l'UUID del file system Btrfs. Per l'esempio utilizzato in questo post, presumo che tu abbia già configurato il filesystem btrfs e ti concentrerai solo sulla configurazione della finestra mobile per utilizzare il filesystem btrfs come motore di archiviazione.

1. Crea il /etc/systemd/system/var-lib-docker.mount file come segue:

[Unit]
Description = Docker Image Store
[Mount]
What = UUID=[UUID for the Btrfs file system] 
Where = /var/lib/docker
Type = btrfs
[Install]
WantedBy = multi-user.target

2. Utilizzare il comando systemctl per abilitare e avviare la destinazione var-lib-docker.mount.

# systemctl enable var-lib-docker.mount
# systemctl start var-lib-docker.mount

3. Impostare la modalità SELinux su “Permissiva “. SELinux attualmente non supporta il driver di archiviazione Btrfs.

Come disabilitare o impostare SELinux in modalità permissiva

4. Modifica il /etc/sysconfig/docker file e imposta le OPZIONI variabile come segue:

# vi /etc/sysconfig/docker
OPTIONS=-s btrfs

5. Copia il /usr/lib/systemd/system/docker.service file in /etc/systemd/system/docker.service .

# cp -p /usr/lib/systemd/system/docker.service /etc/systemd/system/docker.service

6. Modifica /etc/systemd/system/docker.service e aggiungi le voci Requires e After per la destinazione var-lib-docker.mount come segue:

# vi /etc/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine 
Documentation=http://docs.docker.com 
Requires=var-lib-docker.mount 
After=network.target docker.socket 
Requires=docker.socket 
After=var-lib-docker.mount
[Service]
Type=notify
EnvironmentFile=-/etc/sysconfig/docker
EnvironmentFile=-/etc/sysconfig/docker-storage
ExecStart=/usr/bin/docker -d -H fd:// $OPTIONS
$DOCKER_STORAGE_OPTIONS
LimitNOFILE=1048576
LimitNPROC=1048576
[Install]
WantedBy=multi-user.target

7. Se il sistema in uso deve utilizzare un proxy Web per accedere al registro Docker Hub, modificare il file /etc/sysconfig/docker e aggiungere le seguenti righe. Sostituisci [proxy_URL:porta] con l'URL e il numero di porta appropriati per il tuo proxy web.

# vi /etc/sysconfig/docker
HTTP_PROXY="[proxy_URL:port]"
HTTPS_PROXY="[proxy_URL:port]"

8. Utilizzare il comando systemctl per abilitare e avviare il servizio Docker.

# systemctl enable docker
# systemctl start docker

9. Il comando info docker ora mostra Btrfs come driver di archiviazione:

# docker info
Storage Driver: btrfs


Docker
  1. Come valutare la sicurezza del motore Docker

  2. Come configurare la finestra mobile per utilizzare il proxy

  3. Come aggiornare/aggiungere un file nell'immagine Docker

  4. Come modificare il fuso orario per un container Docker

  5. Come modificare il percorso del registro di controllo in MySQL Docker

Come gestire i plug-in del motore Docker

Come aggiornare le immagini Docker all'ultima versione

Come creare volumi Docker su Windows in modo semplice

Come installare e utilizzare Docker su Ubuntu (nel mondo reale)

Come configurare gli spazi dei nomi di rete nei contenitori Docker

Come posso cancellare le credenziali in AWS Configure?