Docker adalah teknologi containerisasi yang memungkinkan Anda untuk dengan cepat membangun, menguji, dan menggunakan aplikasi sebagai wadah yang portabel dan mandiri yang dapat berjalan di mana saja.

Dalam tutorial ini, kami akan membahas cara memasang Docker pada mesin Debian 10 Buster dan menjelajahi konsep dan perintah dasar Docker.

Instal Docker di Debian 10

Langkah-langkah berikut menjelaskan cara menginstal versi Docker stabil terbaru dari repositori Docker.

  1. Perbarui paket yang diperlukan untuk menambahkan repository melalui HTTPS :
    sudo apt update
    sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg2
  2. Impor GPG key repositori menggunakan perintah curl berikut:
    curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -

    Ketika berhasil, Output dari perintah di atas adalah OK.

  3. Tambahkan APT repository Docker ke daftar repositoryperangkat lunak sistem Anda dengan mengetik:
    sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"

    $(lsb_release -cs) akan menampilkan versi dari Distribusi Debian. yang mana akan muncul buster jika Anda menggunakan debian 10.

  4. Update paket apt list dan install versi terbaru dari Docker CE (Community Edition):
    sudo apt update
    sudo apt install docker-ce
  5. Ketika instalasi selesai, layanan Docker akan mulai secara otomatis. Anda dapat memverifikasinya dengan mengetik:
    sudo systemctl status docker
    ● docker.service - Docker Application Container Engine
    Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
    Active: active (running) since Tue 2019-07-30 20:52:00 GMT; 1min 11s ago
        Docs: https://docs.docker.com
    ...
  6. Pada saat penulisan, versi terbaru Docker yang tersedia untuk Debian 10 adalah versi 19.03.1:
    docker -v
    Docker version 19.03.1, build 74b1e89

Menjalankan Perintah Docker Tanpa Sudo

Secara default mengelola, Docker membutuhkan hak administrator. Jika Anda ingin menjalankan perintah Docker sebagai user non-root tanpa sudo , Anda perlu menambahkan user Anda ke grup docker yang dibuat selama instalasi paket Docker CE. Anda dapat melakukannya dengan menjalankan perintah berikut:

sudo usermod -aG docker $USER

$USER adalah environment variable yang menampung username Anda.

Logout dan log in kembali sehingga keanggotaan grup di-refresh.

Untuk memverifikasi bahwa Docker telah berhasil diinstal dan bahwa Anda dapat menjalankan perintah docker tanpa sudo,

docker container run hello-world

ketikkan perintah berikut yang akan mengunduh image testing, jalankan dalam container, cetak pesan “Hello from Docker” dan keluar:

Outputnya akan terlihat seperti berikut:

docker hello world

Cara Menggunakan Docker di Debian 10

Sekarang setelah Anda menginstal Docker di Debian 10 Anda, mari kita membahas konsep dan perintah dasar docker.

Pengertian Docker Images

Docker Images terdiri dari serangkaian lapisan sistem file yang mewakili instruksi dalam Dockerfile yang membentuk aplikasi perangkat lunak yang dapat dieksekusi.

Image adalah file biner yang tidak dapat diubah termasuk aplikasi dan semua dependensi lainnya seperti libraries, binaries, dan instruksi yang diperlukan untuk menjalankan aplikasi.

Anda dapat menganggap Docker Images sebagai snapshot dari container Docker.

Sebagian besar Docker Images tersedia di Docker Hub. Docker Hub adalah layanan registri berbasis cloud yang di antara fungsi lainnya digunakan untuk menyimpan Docker Images baik dalam repositori public atau private .

Cara Mencari Docker Image

Untuk mencari image dari registri Docker Hub cukup gunakan perintah search.

Misalnya, untuk mencari image Debian, gunakan perintah berikut:

docker search debian

Outputnya akan terlihat seperti ini:

docker search image

Seperti yang Anda lihat hasil pencarian mencetak tabel dengan lima kolom, NAMEDESCRIPTIONSTARSOFFICIAL , dan AUTOMATED.

image resmi adalah image yang dikembangkan Docker bersama dengan mitra.

Sebagian besar images di Docker Hub ditandai dengan nomor versi. Ketika tidak ada tag yang ditentukan, Docker akan “pull” image terbaru.

Pengertian Docker Container

Sebuah instance dari sebuah image disebut container. Container mewakili runtime untuk satu aplikasi, proses, atau layanan.

Ini mungkin bukan perbandingan yang paling tepat tetapi jika Anda seorang programmer, Anda dapat menganggap image Docker sebagai Class dan Docker Container sebagai instance dari suatu class.

Kita dapat memulai, menghentikan, menghapus, dan mengelola sebuah container dengan sub-perintah docker container

Misalnya, perintah berikut akan memulai Docker container berdasarkan image Debian. Jika Anda tidak memiliki image secara lokal, maka image tersebut akan diunduh terlebih dahulu:

docker container run debian

Container Debian akan berhenti segera setelah boot karena tidak memiliki proses yang berjalan lama dan tidak ada perintah lain yang disediakan. Container boot, menjalankan perintah kosong dan kemudian keluar.

Switch -it memungkinkan Anda untuk berinteraksi dengan container melalui baris perintah. Untuk memulai jenis container interaktif:

docker container run -it debian /bin/bash
root@ee76c8c71b3b:/#

Seperti yang dapat Anda lihat dari output di atas setelah container dimulai, prompt perintah berubah yang berarti bahwa Anda sekarang bekerja dari dalam container :

Untuk melihat daftar container Docker yang aktif, gunakan perintah berikut:

docker container ls

Jika Anda tidak memiliki containers yang sedang berjalan, hasilnya akan kosong.

Untuk melihat containers yang aktif dan tidak aktif, berikan imbuhan -a:

docker container ls -a

Untuk menghapus satu atau lebih kontainer, cukup salin container ID (atau ID) dan tempel setelah perintah container rm:

docker container rm c55380ad670c

Kesimpulan

Menginstal Docker pada Debian 10 adalah tugas yang relatif mudah. Docker adalah standar de facto untuk teknologi container dan merupakan alat yang penting bagi para engineer DevOps serta integrasi dan pipeline pengiriman mereka.

Untuk informasi lebih lanjut, lihat dokumentasi resmi Docker.