Per i contenitori Docker, Alpine Linux è una scelta ottimale a causa di un consumo leggero e di ottimizzazione di RAM. Tuttavia, eppure Ubuntu è il migliore.
Alpine Linux è un sistema operativo Linux gratuito e open source per router, firewall, VPN, computer VoIP, server, macchine virtuali e contenitori. Ha funzionalità di sicurezza proattive che impediscono di sfruttare i fori di sicurezza nel software. La piccola distribuzione Linux leggera basata su Musl Libc e Busybox.
Passaggi per installare Docker su Alpine Linux
Non parlerò molto su Docker qui perché se stai leggendo questo tutorial, sapresti già di cosa si tratta. Bene, in breve Docker è una piattaforma di virtualizzazione containerizzata che consente di eseguire diverse macchine virtuali sotto forma di contenitori isolati. La cosa migliore, leggera e facile da gestire; Si possono semplicemente tirare le immagini di Linux o app esistenti per configurare un contenitore da hub.docker.com.
Passaggio 1: scarica e imposta alpine Linux
Se hai già un Linux alpino funzionante, passa semplicemente al passaggio successivo e, in caso contrario, vai a questolink e scarica uno. Alpine Linux è disponibile in più forme come standard, esteso con alcuni pacchetti extra, installazione di rete, immagine ISO virtuale ottimizzata, per XEN con supporto integrato per l'hypervisor Xen e in filesystem di root minimo per i contenitori. Puoi scaricarne uno secondo la tua scelta, tuttavia, qui stiamo usando Alpine Linux Extended versione 3.11.
Dopo aver scaricato l'avvio del tuo PC o VirtualBox ed eseguire il comandosetup-alpine
Per seguire i passaggi di installazione.
Passaggio 2: comando per installare Docker su alpino
Esegui il seguente comando singolo per recuperare i pacchetti Docker per la sua installazione su Alpine.
apk add docker
PASSAGGIO 3: APK ADD FALSE CON ERRORE VINGLITTI INSASTRABILI
In caso di esecuzione del comando sopra, si ottiene un errore "APK ADD FALLS con vincoli insoddisfatti"Quindi dobbiamo aggiungere il seguente repository all'alpino.
Modifica il file del repository alpino:
vi /etc/apk/repositories
Quindi premereInserirePulsante sulla tastiera e aggiungere la riga seguente nel file.
https://dl-cdn.alpinelinux.org/alpine/latest-stable/community
Per salvare e uscire prima della stampaEsce poi digita:wq
Dopo questo premi ilEntrarepulsante.
Una volta terminato, eseguire il comando di aggiornamento del pacchetto per far conoscere al sistema il repository aggiornato, in modo che possa indicizzare lo stesso.
apk update
Passaggio 4: aggiungi il servizio Docker al livello di avvio del sistema
Per assicurarti che il servizio di Docker venga automaticamente avviato ogni volta insieme allo stivale dell'Alpino, dobbiamo aggiungerlo ai nostri servizi di sistema.
rc-update add docker boot
Ora possiamo avviare il servizio Docker
service docker start
Passaggio 5: Installa Docker Compose
Gli utenti che desiderano anche il docker compori su Alpine, in primo luogo, devono installare PIP.
apk add py-pip
Poche dipendenze di Dev
apk add python-dev libffi-dev openssl-dev gcc libc-dev make
Infine, eseguire il comando per installare docker-compose
pip install docker-compose
Passaggio 6: isolare i contenitori con uno spazio dei nomi utente
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
Passaggio 7: ora controlla il tuo docker di installazione
Utilizzare il comando seguente per verificare le informazioni sulla versione Docker installata.
docker info
Passaggio 8 Pull Docker Immagine su Alpine
Per sapere che tutto funziona bene, tiriamo su un'immagine di Hello-World
docker pull hello-world
Per eseguire l'immagine:
docker run -t hello-world
Aggiuntivo: errori che abbiamo riscontrato durante la configurazione
1: Risposta di errore da Daemon https //registry-1.docker.io/v2/ time out
Abbiamo ricevuto l'errore di cui sopra perché nel resolv.conf di Alpine i nomi di names non sono stati configurati in modo appropriato, quindi l'abbiamo modificato:
vi /etc/resolv.conf
E aggiunto i seguenti nameservers:
nameserver 8.8.8.8 nameserver 8.8.4.4
2.Dopo aver installato l'alpino, la rete era irraggiungibile, quindi abbiamo modificato:
vi /etc/network/interfaces
E aggiunto quanto segue:
auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp
In questo modo, possiamo usare questo leggero Linux alpino per Docker che esegue macchine virtuali contenizzate.