Docker kapları için Alpine Linux, hafif, düşük RAM tüketimi ve optimizasyonu nedeniyle optimum bir seçimdir. Ancak, Ubuntu en iyisidir.
Alpine Linux, yönlendiriciler, güvenlik duvarları, VPN'ler, VoIP bilgisayarları, sunucular, sanal makineler ve kaplar için ücretsiz ve açık kaynaklı bir Linux işletim sistemidir. Yazılımdaki güvenlik deliklerinin sömürülmesini önleyen proaktif güvenlik özelliklerine sahiptir. MUSL LIBC ve meşgul kutusuna dayanan küçük, hafif Linux dağılımı.
Docker'ı Alpine Linux'a yüklemek için adımlar
Burada Docker'da çok fazla konuşmayacağım çünkü bu öğreticiyi okuyorsanız, ne olduğunu zaten bilirsiniz. Kısa Docker, farklı sanal makinelerin izole kaplar şeklinde çalıştırılmasına izin veren kapsayıcı bir sanallaştırma platformudur. Bununla ilgili en iyi şey, hafif ve kullanımı kolay; Hub.docker.com adresinden bir kap ayarlamak için mevcut Linux veya uygulama görüntüleri çekilebilir.
1. Adım: Alpine Linux'u indirin ve kurun
Zaten çalışan bir Alpine Linux'unuz varsa, bir sonraki adıma geçin ve değilse buna gidinBağlanın ve bir tane indirin. Alpine Linux, bazı ekstra paketlerle genişletilmiş, net install, optimize edilmiş sanal ISO görüntüsü, xen hipervizör için yerleşik destekli ve kaplar için minimum kök dosya sisteminde genişletilmiş birçok formda mevcuttur. Birini seçtiğinize göre indirebilirsiniz, ancak burada Alpine Linux genişletilmiş sürüm 3.11 kullanıyoruz.
PC'nizi veya VirtualBox'ınızı indirdikten ve komutu çalıştırdıktan sonrasetup-alpine
Kurulum adımlarını takip etmek için.
2. Adım: Docker'ı Alpine Yükleme Komutu
Alpine kurulumu için Docker paketlerini almak için aşağıdaki tek komutu çalıştırın.
apk add docker
Adım 3: APK Ekle, tatmin edilemez kısıtlama hatasıyla başarısız olur
Yukarıdaki komutu yürüttükten sonra bir hata alırsınız "APK ADD, tatmin edilemez kısıtlamalarla başarısız olur“O zaman aşağıdaki depoyu Alpine'ye eklemeliyiz.
Alpine depo dosyasını düzenleyin:
vi /etc/apk/repositories
Sonra basınSokmakKlavyedeki düğme düğmesi ve dosyaya aşağıdaki satırı ekleyin.
https://dl-cdn.alpinelinux.org/alpine/latest-stable/community
İlk baskıyı kaydetmek ve çıkmak içinEscVe sonra yazın:wq
Bundan sonraGirmekdüğme.
İşiniz bittikten sonra, sistemin güncellenmiş depo hakkında bilgi vermesini sağlamak için Paket Güncelleme komutunu çalıştırın, böylece aynı şekilde dizine ekleyin.
apk update
Adım 4: Docker hizmeti sistem önyükleme seviyesine ekleyin
Docker'ın hizmetinin Alpine'nin botu ile birlikte her seferinde otomatik olarak başlatıldığından emin olmak için sistem hizmetlerimize eklemeliyiz.
rc-update add docker boot
Şimdi Docker hizmetini başlatabiliriz
service docker start
Adım 5: Docker Compose'u yükleyin
Kullanıcılar Docker'ın Alpine'de oluşturulmasını istiyorlar, önce PIP'yi yüklemeleri gerekiyor.
apk add py-pip
Birkaç geliştirici bağımlılık
apk add python-dev libffi-dev openssl-dev gcc libc-dev make
Son olarak, Docker-Compose'u yüklemek için komutu çalıştırın
pip install docker-compose
Adım 6: Konteynerleri bir kullanıcı ad alanı ile izole et
adduser -SDHs /sbin/nologin dockremap addgroup -S dockremap echo dockremap:$(cat /etc/passwd|grep dockremap|cut -d: -f3):65536 >> /etc/subuid echo dockremap:$(cat /etc/passwd|grep dockremap|cut -d: -f4):65536 >> /etc/subgid
Adım 7: Şimdi, Yükleme Docker'ınızı kontrol edin
Yüklü Docker sürümünün bilgilerini kontrol etmek için aşağıdaki komutu kullanın.
docker info
Adım 8 Alpin üzerindeki Docker görüntüsünü çekin
Her şeyin yolunda olduğunu bilmek için, bir merhaba dünyası resmini çekelim
docker pull hello-world
Görüntüyü çalıştırmak için:
docker run -t hello-world
Ek: Karşılaşırken karşılaştığımız hatalar
1: Daemon Https //registry-1.docker.io/v2/ Time Out'tan hata yanıtı
Yukarıdaki hatayı aldık, çünkü Alpine'nin resolv.conf'ında isim verenler uygun şekilde yapılandırılmadı, böylece düzenledik:
vi /etc/resolv.conf
Ve aşağıdaki isim verenleri ekledi:
nameserver 8.8.8.8 nameserver 8.8.4.4
2.Alpini kurduktan sonra ağ ulaşılamadı, böylece düzenledik:
vi /etc/network/interfaces
Ve aşağıdakileri ekledi:
auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp
Bu şekilde, bu hafif Alpin Linux'u konteyner sanal makineleri çalıştıran Docker için kullanabiliriz.