Cara menginstal Docker CE di Alpine Linux

Untuk container Docker, Alpine Linux adalah pilihan optimal karena ringan, konsumsi RAM rendah, dan optimalisasi. Namun, bagaimanapun Ubuntu adalah yang terbaik.

Alpine Linux adalah sistem operasi Linux sumber terbuka dan gratis untuk router, firewall, VPN, komputer VoIP, server, engine virtual, dan kontainer. Ini memiliki fitur keamanan proaktif yang mencegah lubang keamanan di perangkat lunak dieksploitasi. Distribusi Linux kecil dan ringan berdasarkan musl libc dan busybox.

Steps to install Docker on Alpine Linux

Saya tidak akan berbicara banyak tentang Docker di sini karena jika Anda membaca tutorial ini maka Anda pasti sudah tahu apa itu. Singkatnya, Docker adalah platform Virtualisasi kemas yang memungkinkan menjalankan engine virtual yang berbeda dalam bentuk wadah yang terisolasi. Hal terbaik tentang itu, ringan dan mudah ditangani; seseorang cukup menarik gambar Linux atau aplikasi yang ada untuk menyiapkan wadah dari hub.docker.com.

Step 1: Download and Setup Alpine Linux

Jika Anda sudah memiliki Alpine Linux yang berfungsi maka cukup lanjutkan ke langkah berikutnya dan jika tidak, buka tautan ini dan unduh salah satunya. Alpine Linux tersedia dalam berbagai bentuk seperti Standar, Diperpanjang dengan beberapa paket tambahan, Net-install, gambar ISO Virtual yang Dioptimalkan, untuk Xen dengan dukungan bawaan untuk Xen Hypervisor dan dalam sistem file root Minimal untuk wadah. Anda dapat mengunduhnya sesuai pilihan Anda, namun, di sini kita menggunakan Alpine Linux Extended versi 3.11.

Setelah mengunduh, boot PC atau VirtualBox Anda dengannya dan jalankan perintah

setup-alpine

untuk mengikuti langkah-langkah instalasi.

Step 2: Command to install Docker on Alpine

Jalankan satu perintah berikut untuk mengambil paket Docker untuk instalasinya di Alpine.

apk add docker

Step 3: Apk add fails with unsatisfiable constraints error 

Memetikan setelah menjalankan perintah di atas Anda mendapatkan error “

apk add fails with unsatisfiable constraints

” maka kita harus menambahkan repositori berikut ke Alpine.

Edit file repositori Alpine:

vi /etc/apk/repositories

Lalu tekan

Insert

tombol pada keyboard dan tambahkan baris berikut di file.

http://dl-cdn.alpinelinux.org/alpine/latest-stable/community

Untuk menyimpan dan keluar, tekan pertama

Esc

lalu ketik

:wq

setelah itu tekan tombol

Enter

tombol.

Setelah Anda selesai, jalankan perintah pembaruan paket untuk memberi tahu sistem tentang repositori yang diperbarui, sehingga dapat mengindeks hal yang sama.

apk update

Step 4: Add Docker service to the system boot level

Untuk memastikan service Docker dimulai secara otomatis setiap saat bersamaan dengan boot Alpine, kita harus menambahkannya ke service sistem kita.

rc-update add docker boot

Now, we can start the Docker service

service docker start


Step 5: Install Docker Compose 

Users those also want the Docker Compose on Alpine, first, they have to install pip.

apk add py-pip

Few dev dependencies

apk add python-dev libffi-dev openssl-dev gcc libc-dev make

Finally, run command to install docker-compose

pip install docker-compose

Step 6: Isolate containers with a user namespace

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

Step 7: Now, check your install Docker

Gunakan perintah di bawah ini untuk memeriksa informasi versi Docker yang diinstal.

docker info

Step 8 Pull Docker image on Alpine

Untuk mengetahui semuanya bekerja dengan baik, mari kita ambil gambar hello-world

docker pull hello-world

To run the image:

docker run -t hello-world

Additional: Errors we encountered while setting it up

1

: respons error dari daemon https //registry-1.docker.io/v2/ waktu habis

Kita mendapatkan error di atas karena di resolv.conf Alpine server nama tidak dikonfigurasi dengan benar, jadi kita mengeditnya:

vi /etc/resolv.conf

And added the following nameservers:

nameserver 8.8.8.8 nameserver 8.8.4.4

2. 

Setelah menginstal Alpine, jaringan tidak dapat dijangkau, jadi kita mengedit:

vi /etc/network/interfaces

Dan ditambahkan sebagai berikut:

auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp

Dengan cara ini, kita dapat menggunakan Alpine Linux untuk Docker yang ringan ini yang menjalankan engine virtual kemas.