GNU/Linux >> Belajar Linux >  >> Panels >> Docker

Menginstal dan Menggunakan Docker di Ubuntu dan Debian

Docker adalah alat yang memungkinkan Anda membuat, menyebarkan, dan mengelola paket ringan yang berdiri sendiri yang disebut container . Container ini memiliki kode, library, runtime, pengaturan sistem, dan dependensi yang diperlukan untuk menjalankan aplikasi.

Panduan ini mencakup penginstalan Mesin Docker pada berbagai distribusi Linux menggunakan apt manajer paket, termasuk Ubuntu dan dan Debian, serta memperoleh dan menjalankan image Docker.

Sebelum Anda Mulai

  1. Pastikan Anda memiliki akses baris perintah ke server Linux yang menjalankan distribusi Linux yang didukung. Jika tidak, ikuti panduanMemulai danMenyiapkan dan Mengamankan Instans Komputasi untuk membuat Linode baru.

    Catatan Panduan ini ditulis untuk pengguna non-root. Perintah yang memerlukan hak istimewa yang lebih tinggi diawali dengan sudo . Jika Anda tidak terbiasa dengan sudo perintah, lihat panduan Pengguna dan Grup.
  2. Tinjau panduan Docker berikut untuk mendapatkan pemahaman yang lebih baik tentang Docker, manfaatnya, dan kapan menggunakannya.

    • Pengantar Docker
    • Kapan dan Mengapa Menggunakan Docker

Menginstal Mesin Docker di Ubuntu dan Debian

Docker Engine adalah perangkat lunak containerization yang mendasari yang digunakan saat menggunakan container Docker. Petunjuk berikut akan menginstal Docker Engine di salah satu rilis Ubuntu dan Debian yang didukung ini:

Distribusi yang didukung: Ubuntu 20.04, Ubuntu 18.04, Ubuntu 16.04, Debian 10, Debian 9. Rilis non-LTS terbaru seperti Ubuntu 21.04, 20.10, dan 21.10 juga harus didukung.

  1. Pastikan Docker saat ini tidak diinstal. Output yang menunjukkan bahwa salah satu paket tidak ditemukan dapat diabaikan dengan aman.

    sudo apt remove docker docker-engine docker.io
    
  2. Instal paket yang diperlukan untuk mengonfigurasi repositori Docker:

    sudo apt update
    sudo apt install apt-transport-https ca-certificates curl gnupg lsb-release
    
  3. Tambahkan kunci GPG Docker. Pada perintah berikut, ganti [url] dengan url yang sesuai dengan distribusi yang dijalankan sistem Anda.

    curl -fsSL [url]/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
    
    • Ubuntu: https://download.docker.com/linux/ubuntu
    • Debian: https://download.docker.com/linux/debian
  4. Tambahkan stabil Repositori Docker, sekali lagi menggantikan [url] dengan url yang sesuai dengan distribusi yang dijalankan sistem Anda.

    echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] [url] $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    
  5. Instal Mesin Docker dan paket lain yang diperlukan:

    sudo apt update
    sudo apt install docker-ce docker-ce-cli containerd.io
    

Petunjuk instalasi tambahan untuk distribusi ini dapat ditemukan dalam dokumentasi Docker:

  • Instal Mesin Docker di Ubuntu
  • Instal Mesin Docker di Debian

Memulai dan Menguji Docker

Setelah Docker Engine diinstal, mulai Docker dan verifikasi semuanya berfungsi dengan menjalankan image uji.

  1. Pastikan server Docker berjalan.

    sudo systemctl start docker
    
  2. Secara opsional, konfigurasikan Docker untuk memulai saat server melakukan booting. Ini direkomendasikan jika Anda ingin menjalankan aplikasi produksi dalam instalasi Docker ini.

    sudo systemctl enable docker
    sudo systemctl enable containerd
    
  3. Pastikan Docker diinstal dengan benar dengan menjalankan image “hello-world”.

    sudo docker run hello-world
    

    Jika berhasil, Docker harus mengunduh dan menjalankan gambar hello-world dan menampilkan pesan sukses. Di antara teks lainnya, output harus menyertakan pesan yang mirip dengan berikut ini:

    Hello from Docker!
    This message shows that your installation appears to be working correctly.

Menggunakan Docker dengan Pengguna Non-Root

Secara default, sudo diperlukan untuk menjalankan perintah Docker, tetapi grup baru, yang disebut docker , dibuat selama instalasi. Ketika daemon Docker dimulai, ia membuka soket Unix untuk docker anggota grup.

Sebelum melanjutkan, pastikan Anda memiliki akun pengguna terbatas yang tidak milik grup sudo. Jika Anda belum membuat akun pengguna terbatas, lihat panduan Menyiapkan dan Mengamankan Instans Komputasi atau Pengguna dan Grup Linux untuk petunjuknya.

  1. Masukkan perintah di bawah ini untuk menambahkan pengguna ke docker grup, menggantikan [pengguna] dengan nama akun pengguna terbatas Anda.

    sudo usermod -aG docker [user]
    
  2. Masuk ke sistem sebagai pengguna terbatas.

  3. Pastikan pengguna terbatas dapat menjalankan docker perintah tanpa sudo dengan menjalankan gambar "hello-world" sekali lagi.

    docker run hello-world
    

    Output harus memiliki pesan sukses yang sama seperti output sebelumnya.

Hati-hati buruh pelabuhan group memberikan hak istimewa yang serupa dengan yang dimiliki pengguna root. Tinjau panduan Docker Daemon Attack Surface dalam dokumentasi Docker untuk informasi selengkapnya tentang bagaimana hal itu dapat memengaruhi keamanan sistem. Untuk menjalankan daemon Docker tanpa menggunakan hak akses root, ikuti petunjuk dalam Menjalankan daemon Docker sebagai pengguna non-root (mode Tanpa root).

Menyelesaikan Kesalahan dengan Memuat File Konfigurasi

Jika pengguna telah menjalankan sudo docker perintah sebelum bergabung dengan grup, mereka mungkin disajikan dengan kegagalan memuat file konfigurasi, seperti ini:

WARNING: Error loading config file: /home/user/.docker/config.json -
stat /home/user/.docker/config.json: permission denied

Masalahnya adalah direktori .docker di direktori home mereka (~/.docker) dibuat dengan izin yang diberikan oleh sudo .

Ada dua kemungkinan perbaikan:

  1. Hapus .docker direktori dari direktori home mereka. Docker akan membuat ulang secara otomatis, tetapi pengaturan khusus apa pun akan hilang.

  2. Ubah izin pada .docker direktori menggunakan perintah:

    sudo chown example_user:example_user /home/example_user/.docker -R
    sudo chmod g+rwx "/home/example_user/.docker" -R
    

Menggunakan Gambar Docker untuk Men-deploy Container

Gambar Docker adalah template yang menyertakan instruksi dan spesifikasi untuk membuat container. Untuk menggunakan Docker, Anda harus terlebih dahulu mendapatkan gambar atau membuatnya sendiri dengan membuat file docker. Untuk informasi selengkapnya, lihat Pengantar Docker.

Gambar Cantuman

Untuk membuat daftar semua gambar di sistem Anda, jalankan perintah berikut. Ini akan menampilkan hello-world gambar yang digunakan pada langkah sebelumnya, serta gambar tambahan yang mungkin telah Anda peroleh.

docker images

Menemukan Gambar

Gambar disimpan di registri Docker, seperti Docker Hub (registri resmi Docker). Anda dapat menelusuri gambar di situs web itu atau menggunakan perintah berikut untuk mencari melalui registri Docker. Pada perintah berikut, ganti [keyword] dengan kata kunci yang ingin Anda telusuri, seperti nginx atau apache .

docker search [keyword]

Mendapatkan Gambar

Setelah Anda menemukan gambar, unduh ke server Anda. Pada perintah berikut, ganti [image] dengan nama gambar yang ingin Anda gunakan.

docker pull [image]

Misalnya, untuk menarik gambar nginx resmi, jalankan:docker pull nginx .

Menjalankan Gambar

Selanjutnya buat container berdasarkan gambar dengan menggunakan docker run memerintah. Sekali lagi, ganti [image] dengan nama gambar yang ingin Anda gunakan.

docker run [image]

Jika gambar belum diunduh dan tersedia di registri Docker, gambar akan secara otomatis ditarik ke server Anda.

Mengelola Container Docker

Mendaftarkan Kontainer

Untuk membuat daftar semua container Docker yang aktif (dan tidak aktif) yang berjalan di sistem Anda, jalankan perintah berikut:

docker ps -a

Outputnya harus menyerupai berikut ini. Contoh keluaran ini menunjukkan hello-world wadah.

CONTAINER ID   IMAGE         COMMAND    CREATED       STATUS                   PORTS     NAMES
5039168328a5   hello-world   "/hello"   2 hours ago   Exited (0) 2 hours ago             magical_varahamihira

Memulai Container

Mulai wadah Docker dengan perintah berikut, ganti [ID] dengan ID penampung yang sesuai dengan penampung yang ingin Anda mulai:

docker start [ID]

Menghentikan Kontainer

Hentikan wadah Docker dengan perintah berikut, ganti [ID] dengan ID penampung yang sesuai dengan penampung yang ingin Anda hentikan:

docker stop [ID]

Beberapa gambar (seperti hello-world image) secara otomatis berhenti setelah dijalankan. Namun, banyak container lain yang terus berjalan hingga secara eksplisit diperintahkan untuk berhenti, dan Anda mungkin ingin menjalankan container ini di latar belakang. Untuk kasus tersebut, perintah ini dapat berguna.

Menghapus Kontainer

Hapus wadah Docker dengan perintah berikut, ganti [ID] dengan ID penampung yang sesuai dengan penampung yang ingin Anda hapus:

docker rm [ID]

Informasi Lebih Lanjut

Anda mungkin ingin berkonsultasi dengan sumber daya berikut untuk informasi tambahan tentang topik ini. Meskipun ini disediakan dengan harapan dapat bermanfaat, harap perhatikan bahwa kami tidak dapat menjamin keakuratan atau ketepatan waktu materi yang dihosting secara eksternal.

  • Situs web untuk Docker
  • Dokumentasi untuk Docker
  • Situs web untuk containerd

Docker
  1. Cara menginstal Docker di Debian / Ubuntu

  2. Masalah Docker Di Ubuntu 20.04?

  3. Cara melakukan Instalasi Rootless Docker (di Ubuntu dan Debian)

  1. Menginstal dan Menggunakan Docker di CentOS dan Fedora

  2. Menginstal Docker (Ubuntu)

  3. Instal Docker dan WordPress Di Ubuntu

  1. Hal yang harus dilakukan Setelah Menginstal Ubuntu 18.04 dan 19.10

  2. Cara Menginstal Docker Di Ubuntu 18.04

  3. Cara Menginstal dan Menggunakan Docker di Ubuntu 18.04