Cara Install dan Menggunakan Docker di Ubuntu 20.04

Cara Install dan Menggunakan Docker di Ubuntu 20.04

dan menggunakan ll taltalh=BeBeUntuk membuat container saat ini memang lebih baik menggunakan Docker, karena selain repository docker hub yang mulai banyak, dan komunitasnya juga luas, sehingga untuk dokumentasi dan troubleshoot jadi lebih mudah. Berikut Dewaweb sudah merangkum lebih lengkap bagaimana cara install dan menggunakan Docker. 

Docker

Docker adalah sebuah aplikasi yang bersifat open source yang berfungsi sebagai wadah/container untuk mengepak/memasukkan sebuah software secara lengkap beserta semua hal lainnya yang dibutuhkan oleh software tersebut dapat berfungsi. Pengaturan software beserta file/hal pendukung lainnya akan menjadi sebuah Image (istilah yang diberikan oleh docker). Kemudian sebuah instan dari Image tersebut kemudian disebut Container.

Kamu juga bisa membaca mengenai Apa itu Docker? Definisi, Fungsi, dan Cara Kerjanya.

Pada tutorial ini, kami akan membahas mengenai cara install dan menggunakan Docker di Ubuntu 20.04.

Persyaratan

Terdapat beberapa persyaratan sebelum melakukan instalasi.

  • Memiliki VPS yang aktif dengan OS Ubuntu 20.04.
  • Memiliki akses root.

Point

Terdapat beberapa rangkuman point instalasi pada artikel ini.

  • Update Server
  • Install Firewall
  • Install Docker
  • Menggunakan Docker Command
  • Menggunakan Docker Images

Cara Install dan Menggunakan Docker di Ubuntu 20.04

Berikut cara install dan menggunakan Docker di Ubuntu 20.04 yang bisa kamu terapkan.

Update Server

Login sebagai root ke server dan update server untuk memastikan packages nya sudah up-to-date.

$ apt-get update -y

$ reboot

Install beberapa packages yang dibutuhkan.

$ apt-get install nano perl wget curl -y

Install Firewall

Sebelum memulainya, perlu instalasi Firewall supaya lebih secure. Pada Firewall ini menggunakan CSF (ConfigServer Security & Firewall). Instalasinya dengan perintah di bawah ini:

$ cd /usr/src/

$ wget https://download.configserver.com/csf.tgz

$ tar -xzf csf.tgz

$ cd csf/

$ sh install.sh

Pada konfigurasi CSF rubah “make TESTING=’1’ menjadi 0”.

$ nano /etc/csf/csf.conf

Jika sudah save dan exit.

Kemudian restart CSF supaya reload konfigurasi yang ter-update.

$ csf -r 

Install Docker

Docker Package tersedia di official ubuntu repository yang mungkin tidak up-to-date atau tidak latest, untuk mendapatkan versi yang latest, kita perlu install Docker melalui official Docker repository.

Add GPG key pada official Docker repository ke server kamu.

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Add Docker repository ke APT source.

$ add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

Pastikan kamu install Docker melalui Ubuntu repo.

$ apt-cache policy docker-ce

Output:

docker-ce:

  Installed: (none)

  Candidate: 5:20.10.22~3-0~ubuntu-focal

  Version table:

     5:20.10.22~3-0~ubuntu-focal 500

        500 https://download.docker.com/linux/ubuntu focal/stable amd64 Packages

Pastikan bahwa docker-ce tidak terinstall, karena instalasinya nanti melalui Docker repository untuk Ubuntu 20.04 (focal).

Install Docker

$ apt-get install docker-ce -y

Start dan enable on-boot docker service.

$ systemctl start docker

$ systemctl enable docker

Cek status docker

$ systemctl status docker
  •  docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)

     Active: active (running) since Wed 2022-12-21 07:00:54 UTC; 16min ago

TriggeredBy:  docker.socket

       Docs: https://docs.docker.com

   Main PID: 4700 (dockerd)

      Tasks: 8

     Memory: 21.1M

     CGroup: /system.slice/docker.service

             └─4700 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

Menggunakan Docker Command

Menggunakan Docker terdiri dari meneruskan rangkaian opsi dan perintah yang diikuti dengan argumen, contoh syntaxnya:

$ docker [option] [command] [arguments]

Untuk melihat subcommands yang tersedia:

$ docker

Output:

Commands:

  attach      Attach local standard input, output, and error streams to a running container

  build       Build an image from a Dockerfile

  commit      Create a new image from a container's changes

  cp          Copy files/folders between a container and the local filesystem

  create      Create a new container

  diff        Inspect changes to files or directories on a container's filesystem

  events      Get real time events from the server

  exec        Run a command in a running container

  export      Export a container's filesystem as a tar archive

  history     Show the history of an image

  images      List images

  import      Import the contents from a tarball to create a filesystem image

  info        Display system-wide information

  inspect     Return low-level information on Docker objects

  kill        Kill one or more running containers

  load        Load an image from a tar archive or STDIN

  login       Log in to a Docker registry

  logout      Log out from a Docker registry

  logs        Fetch the logs of a container

  pause       Pause all processes within one or more containers

  port        List port mappings or a specific mapping for the container

  ps          List containers

  pull        Pull an image or a repository from a registry

  push        Push an image or a repository to a registry

  rename      Rename a container

  restart     Restart one or more containers

  rm          Remove one or more containers

  rmi         Remove one or more images

  run         Run a command in a new container

  save        Save one or more images to a tar archive (streamed to STDOUT by default)

  search      Search the Docker Hub for images

  start       Start one or more stopped containers

  stats       Display a live stream of container(s) resource usage statistics

  stop        Stop one or more running containers

  tag         Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE

  top         Display the running processes of a container

  unpause     Unpause all processes within one or more containers

  update      Update configuration of one or more containers

  version     Show the Docker version information

  wait        Block until one or more containers stop, then print their exit codes

Untuk mengetahui informasi Docker pada server.

$ docker info

Menggunakan Docker Images

Docker containers dibuat dari image docker. Secara default, Docker mengambil image ini dari Docker Hub, sebuah registry Docker yang dikelola oleh Docker, perusahaan dibalik proyek Docker. Siapapun dapat menghosting docker images pada Docker Hub, sehingga sebagian besar aplikasi dan distribusi Linux yang diperlukan akan memiliki images di sana.

Untuk mengecek akses dan download images dari Docker Hub menggunakan perintah di bawah ini.

$ docker run hello-world

Output:

Unable to find image 'hello-world:latest' locally

latest: Pulling from library/hello-world

2db29710123e: Pull complete 

Digest: sha256:c77be1d3a47d0caf71a82dd893ee61ce01f32fc758031a6ec4cf1389248bb833

Status: Downloaded newer image for hello-world:latest
Hello from Docker!

This message shows that your installation appears to be working correctly.


Docker awalnya tidak dapat menemukan images dari hello-world secara lokal, jadi Docker mengambil atau mengunduh images nya dari Docker Hub, yang merupakan repository default. Setelah images di-download, Docker membuat kontainer dari images tersebut dan aplikasi nya berada dalam container.

Selain itu, kami bisa juga mencari images yang tersedia di Docker Hub dengan menggunakan perintah docker dengan sub perintah search. Misalnya, untuk mencari image nginx, seperti berikut.

$ docker search nginx

Output:

cara instal dan menggunakan docker

Pada kolom OFFICIAL, OK menunjukkan image yang dibuat dan didukung oleh perusahaan dibalik project tersebut. Setelah kamu mengidentifikasi image yang akan kamu gunakan, kamu bisa download menggunakan sub perintah pull.

$ docker pull nginx

Output:

Using default tag: latest

latest: Pulling from library/nginx

025c56f98b67: Pull complete 

ec0f5d052824: Pull complete 

cc9fb8360807: Pull complete 

defc9ba04d7c: Pull complete 

885556963dad: Pull complete 

f12443e5c9f7: Pull complete 

Digest: sha256:ff5d8d8389474b6ad895ec6089e926711ce2af5939860488938f394298eedea9

Status: Downloaded newer image for nginx:latest

docker.io/library/nginx:latest

Setelah image di download, kamu bisa menjalankan container menggunakan images yang sebelumnya di download dengan sub perintah run. Seperti yang kamu lihat sebelumnya pada contoh hello-world, jika image belum di download saat docker dijalankan dengan sub perintah run, Docker client akan download image nya terlebih dahulu, kemudian menjalankan container dengan menggunakannya.

$ docker images

Output:

REPOSITORY    TAG       IMAGE ID       CREATED         SIZE

nginx         latest    3964ce7b8458   7 days ago      142MB

hello-world   latest    feb5d9fea6a5   15 months ago   13.3kB

Kesimpulan

Jika kamu mengikuti artikel ini dari awal sampai akhir, artinya kamu sudah berhasil dan mengetahui cara install dan menggunakan Docker di Ubuntu 20.04. Demikian artikel ini, jangan sungkan untuk meninggalkan ide-ide topik yang ingin kamu baca di blog Dewaweb. Semoga artikel ini membantu