için önerilmez, bu uyarıyı aldık.Kullanımı kuvvetle benim CentOs 7.1 kutuda liman işçisi test etmek istediğiniz üretim kullanımı
CentOS örneği serseri yarattığı virtualbox çalışıyor.
için önerilmez, bu uyarıyı aldık.Kullanımı kuvvetle benim CentOs 7.1 kutuda liman işçisi test etmek istediğiniz üretim kullanımı
CentOS örneği serseri yarattığı virtualbox çalışıyor.
Uyarı iletisi, Docker depolama yapılandırmanızın dosya sisteminizdeki bir dosya tarafından desteklenen bir "geridönüş aygıtı" - /dev/loop0
gibi bir sanal blok aygıtı kullanması nedeniyle oluşur. Bu, Docker'ı bir kavram kanıtı olarak çabucak koşturmak için çabuk bir hack'den başka bir şey değildi.
Sen bastırmak uyarı istemiyoruz; Depolama yapılandırmanızı, uyarı verilmeyecek şekilde düzeltmek istiyorsunuz. Bunu yapmanın en kolay yolu Docker's devicemapper depolama sürücüsünün kullanımı için bazı yerel disk alanı atamak ve bunu kullanmaktır.
Eğer LVM kullanarak ve hacim grubunda bulunan bazı boş alana sahip ediyorsanız, bu nispeten kolaydır.DOCKER_STORAGE_OPTIONS=-s devicemapper --storage-opt dm.datadev=/dev/my-vg/docker-data --storage-opt dm.metadatadev=/dev/my-vg/docker-metadata
Eğer': benzemeye /etc/sysconfig/docker-storage
düzenleyerek bu alanı kullanmak üzere Docker yapılandırmak sonra
# lvcreate -n docker-data -L 100G /dev/my-vg
# lvcreate -n docker-metadata -L1G /dev/my-vg
Ve: Örneğin, ilk veri ve meta veri birimi oluşturmak, uzayın liman işçisi 100g vermek LVM'yi kullanmamanız veya VG'nizde boş alan yoksa, başka bir blok cihazını (örn., bir yedek disk veya bölüm), Docker'a benzer bir şekilde gösterebilirsiniz.
bu konu here bazı ilginç notlar vardır.
teşekkürler. Bu beni deli ediyordu. Bash'ın bu mesajı çıkardığını sanıyordum. Bash'a karşı bir böcek göndermek üzereydim. Ne yazık ki, sunulan seçeneklerden hiçbiri bir dizüstü bilgisayarda veya diskin tamamen kullanıldığı yerlerde geçerli değildir. İşte bu senaryo için cevabım. İşte
benim laptop/etc/sysconfig/liman işçisi-depolamada kullanılan budur:
DOCKER_STORAGE_OPTIONS="--storage-opt dm.no_warn_on_loop_devices=true"
Not: Ben bir etkiye sahip olmak için bu için liman işçisi hizmetini yeniden gerekiyordu. Sadece bir yeniden başlatma komutu (systemctl restart docker
) da vardır
systemctl stop docker
systemctl start docker
, ama emin durdurma gerçekten tekrar başlatmadan önce çalışmış olmak için kontrol etmek iyi bir fikirdir: Fedora üzerinde bunun için komuttur.
SELinux'u kapsayıcınızda devre dışı bırakmayı düşünmüyorsanız, başka bir seçenek kaplamayı kullanmaktır.İşte o tamamen açıklayan bir link: Özetle
http://www.projectatomic.io/blog/2015/06/notes-on-fedora-centos-and-docker-storage-drivers/
/etc/sysconfig/docker için:
OPTIONS='--selinux-enabled=false --log-driver=journald'
ve/etc/sysconfig/liman işçisi-depolama için:
DOCKER_STORAGE_OPTIONS=-s overlay
Bir depolama türünü değiştirdiğinizde, docker'ı yeniden başlatmak tüm resminizi ve kapsayıcı deposunuzu yok edecektir. Bu,/var/lib/liman işçisi klasöründe de her şey yapıyor olabileceği durumlarda:
RHEL 6.6 benim özel anahtarlara erişmek ve en önemsiz ile root olarak uygulamaları çalıştırabilir liman işçisi erişimi olan bir kullanıcı olaraksystemctl stop docker
rm -rf /var/lib/docker
dnf reinstall docker
systemctl start docker
hacimleri üzerinden hack. SELinux, Fedora ve RHEL 7'de bunu önleyen tek şeydir. Bu, ek RHEL 7 güvenliğinin ne kadarının SELinux'tan konteynerin dışından geldiğini ve ne kadar konteynerin içinde bulunduğunu açık bir şekilde belirtmemiştir ...
Genel olarak, geridönüş aygıtları, 100GB maksimum sınırın ve biraz azaltılmış performansın sorun olmadığı durumlarda iyidir. Bulabildiğim tek sorun, çalışırken tam bir diskiniz varsa docker deposu bozuk olabilir ... Bu muhtemelen kotalarla veya diğer basit çözümlerle önlenebilir. Bununla birlikte, bir üretim örneği için, bunu doğru bir şekilde ayarlamak için zaman ve çabaya değerdir.
100G, üretim örneğiniz için aşırı olabilir. Kaplar ve görüntüler oldukça küçük. Pek çok kuruluş VM'ler içinde docker konteynırlarını ek güvenlik ve izolasyon ölçüsü olarak kullanıyor. Eğer öyleyse, VM başına çalışan çok az sayıda kapsayıcıya sahip olabilirsiniz. Bu durumda 10G bile yeterli olabilir.
Son bir not. Doğrudan lvm kullanıyor olsanız bile, muhtemelen/var/lib/docker için ek bir dosya sistemi isteyebilirsiniz. Nedeni, "docker yüklemesi" komutunun, veri deposuna eklemeden önce bu klasöre yüklenen görüntülerin sıkıştırılmamış bir sürümünü oluşturacağıdır. Dolayısıyla, küçük ve hafif tutmaya çalışıyorsanız, doğrudan lvm dışındaki seçenekleri keşfedin.
Makinemde **/etc/sysconfig/docker-storage ** bile yok. Onu nasıl aldın? –
evet ... bende ... –
@Igor Ganapolsky Şubat ve Minca Daniel Andrei @
Kontrol bu:
systemctl edit docker --full
yönerge EnvironmentFile
[Service]
blokta yer almıyorsa, o zaman hiç şans (Ben de Centos7 üzerinde bu sorun var), ancak bu gibi standart systemd birimini uzatabilirsiniz:
systemctl edit docker EnvironmentFile=-/etc/sysconfig/docker ExecStart= ExecStart=/usr/bin/dockerd $OPTIONS
Ve içeriğe sahip bir dosya /etc/sysconfig/docker
oluşturun:
OPTIONS="-s overlay --storage-opt dm.no_warn_on_loop_devices=true"
teşekkür ederiz. Bence docker deposuyla ilgili daha fazla şey öğrenmeliyim ve bir test yaptırmalıyım. – rocksun
Ayrıca [mevcut depolama seçenekleri bu anketi] (http://developerblog.redhat.com/2014/09/30/overview-storage-scalability-docker/) ilginç bir okuma bulabilirsiniz. – larsks
Eh, biri yeterli bellek (bıçaklarda 100+ GB) varsa ve çalışmayı tamamladığında (genellikle CI sistemlerinde olduğu gibi) belirli bir işi yapan geçici birimler olarak docker host'larına davranıyorsa, uygun bir seçenek. RAM'i hileli bir hızlı disk olarak kullanmak çok zorlayıcıdır. – allprog