GNU/Linux >> Belajar Linux >  >> Panels >> Docker

Cara Mengonfigurasi Btrf sebagai Mesin Penyimpanan di Docker

Docker adalah alat manajemen platform terbuka untuk Linux Containers. Ini menyediakan sarana bagi pengembang dan administrator sistem untuk membangun dan mengemas aplikasi ke dalam wadah yang ringan.

Docker menggunakan perangkat devicemapper sebagai mesin penyimpanan default. Untuk menggunakan Btrfs sebagai mesin penyimpanan, lakukan langkah-langkah berikut. Perhatikan bahwa Red Hat Enterprise Linux (RHEL) menghapus driver penyimpanan Btrfs dari build Docker mereka, baik pada repositori Extra Packages for Enterprise Linux (EPEL) dan versi yang dirilis untuk RHEL7.

Gunakan perintah systemctl untuk menghentikan layanan buruh pelabuhan. Gunakan perintah mkfs.btrfs untuk membuat sistem file Btrfs pada perangkat blok. Gunakan perintah blkid untuk menentukan UUID dari sistem file Btrfs. Untuk contoh yang digunakan dalam posting ini, saya berasumsi Anda telah mengonfigurasi sistem file btrfs dan hanya akan fokus pada konfigurasi buruh pelabuhan untuk menggunakan sistem file btrfs sebagai mesin penyimpanan.

1. Buat /etc/systemd/system/var-lib-docker.mount file sebagai berikut:

[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. Gunakan perintah systemctl untuk mengaktifkan dan memulai target var-lib-docker.mount.

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

3. Setel mode SELinux ke “Permisif “. SELinux saat ini tidak mendukung driver penyimpanan Btrfs.

Cara Menonaktifkan atau mengatur SELinux ke mode Permisif

4. Edit /etc/sysconfig/docker file dan atur OPTIONS variabel sebagai berikut:

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

5. Salin /usr/lib/systemd/system/docker.service file ke /etc/systemd/system/docker.service .

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

6. Edit /etc/systemd/system/docker.service dan tambahkan entri Requires dan After untuk target var-lib-docker.mount sebagai berikut:

# 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. Jika sistem Anda perlu menggunakan proxy web untuk mengakses Docker Hub Registry, edit file /etc/sysconfig/docker dan tambahkan baris berikut. Ganti [proxy_URL:port] dengan URL dan nomor port yang sesuai untuk proxy web Anda.

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

8. Gunakan perintah systemctl untuk mengaktifkan dan memulai layanan buruh pelabuhan.

# systemctl enable docker
# systemctl start docker

9. Perintah docker info sekarang menampilkan Btrfs sebagai driver penyimpanan:

# docker info
Storage Driver: btrfs


Docker
  1. Cara Memasang Mesin Docker di Debian 11

  2. Cara menginstal dan mengkonfigurasi buruh pelabuhan di Debian 11

  3. Cara Menjaga Kontainer Docker Tetap Berjalan Saat Daemon Berhenti

  1. Cara Menilai Keamanan Mesin Docker

  2. Cara Mengubah Zona Waktu Untuk Wadah Docker

  3. Cara mengubah jalur log audit di Docker MySQL

  1. Cara Update Image dan Container Docker ke Versi Terbaru

  2. Cara mengkonfigurasi buruh pelabuhan untuk menggunakan proxy

  3. Cara memperbarui/menambahkan file di Gambar Docker