Docker — Part 1: Install Docker & Docker Compose Di Raspberry Pi 3
Hai, semua, kali ini kita akan bahas bagaimana cara install Docker pada Raspberry Pi. Sebelum kita mulai kita akan ulas sedikit tentang apa itu Docker.
Apa itu Docker?
Docker adalah seperangkat platform as a service (PaaS) yang menggunakan virtualisasi tingkat OS untuk mengirimkan software dalam paket yang disebut container. Docker ditulis dengan bahasa Go yang dapat berjalan pada OS Linux, Windows dan MacOS. Docker memungkinkan kita untuk memisahkan aplikasi dengan infrastructure yang dapat mempercepat proses deliver software mulai dari proses developing, shipping, and running applications.
Docker terdiri dari 3 bagian, Client, Server/Host dan Registry. Docker client digunakan untuk berinteraksi dengan Docker Server/Host. Pada Docker client terdapat Client API dan CLI yang dapat kita gunakan untuk memanage images dan container. Pada Docker Server/Host terdapat Docker Daemon yang bertugas untuk listens Docker API requests dan mengatur Docker objects seperti images dan container.
Docker Sever/Host
Pada Server/Host terdapat Docker Images yang merupakan sebuah file, terkompresi secara multiple layers dan digunakan untuk menjalankan code di dalam Docker Container. Sebuah Docker Images pada dasarnya dibangun dari instructions yang lengkap dan versi executable pada sebuah aplikasi, dan bergantung pada host OS kernel.
Selain itu juga terdapat Docker Container yang merupakan standardized unit dari software yang membolehkan developer untuk mengisolasi aplikasi dari environment-nya. Sebuah container berjalan secara native pada Sistem Operasi (Linux, Windows, macOS) dan menggunakan sharing kernel pada host machine.
Docker VS VM
Container dan Virtual Machine (VM) merupakan teknologi virtualisasi dengan level virtualisasi yang berbeda. Docker melakukan virtualisasi dilevel OS, sehingga memungkinkan banyak aplikasi dapat disolasi pada container dalam sebuah Operating System. Berbeda dengan konsep isolasi VM dimana biasanya kita menyediakan Guest OS untuk tiap aplikasi.
Docker Registry
Docker juga menyediakan registry berupa storage dan content delivery system, menyediakan tag version untuk tiap build images. Dengan seperti ini kita dapat melakukan distribusi images dengan mudah ke mesin lainya.
Prerequisites
- Menggunakan Raspberry Pi 3
- Menggunakan OS Raspbian Buster
Install Docker
- Update & upgrade Raspbian OS
sudo apt-get update && sudo apt-get upgrade
- Download installation script menggunakan curl
$ curl -fsSL https://get.docker.com -o get-docker.sh
- Execute script,
$ sudo sh get-docker.sh
- Add non-root user kedalam docker group (user
pi
),
$ sudo usermod -aG docker pi
- Check docker version,
$ sudo docker version
- Check Docker Info,
$ sudo docker info
Test Docker Server
- Run Hello World Container,
$ docker run hello-world
Install Docker Compose
Docker Compose merupakan tool yang dapat mendefinisikan dan menjalankan multi-container Docker app. Dengan Docker Compose kita dapat menggunakan YAML file untuk mengatur aplikasi yang akan di jalankan pada container.
- Install dependecies
sudo apt-get install -y libffi-dev libssl-dev
sudo apt-get install -y python3 python3-pip
sudo apt-get remove python-configparser
- Install Docker Compose via pip3
$ sudo pip3 install docker-compose
Jika kita berhasil menjalankan Docker Hello World dan berhasil install Docker Composer diatas, kita telah berhasil menginstall Docker pada Raspberry Pi.
Nah, sekian untuk tutorial kali ini, selanjutnya akan diabahas dasar administratif penggunaan Docker client.
Sekian dan teima kasih.