Bagian hari ini dari seri Docker, yang kami terbitkan, didedikasikan untuk tim Docker.
Dokumentasi Docker berisi uraian terperinci tentang banyak sekali perintah, tetapi seseorang yang baru mulai bekerja dengan platform ini mungkin tersesat di dalamnya, jadi inilah hampir dua lusin perintah paling penting untuk bekerja dengan Docker. Melanjutkan tradisi yang sudah mapan, kami akan membandingkan tim dengan hamburan beri.
โ
Bagian 1: dasar-dasarnyaโ
Bagian 2: istilah dan konsepโ
Bagian 3: File Dockerfileโ
Bagian 4: mengurangi ukuran gambar dan mempercepat perakitannyaโ
Bagian 5: timโ
Bagian 6: bekerja dengan dataUlasan
Mari kita ingat bahwa gambar Docker dibuat berdasarkan file Dockerfile yang menjelaskan semua yang diperlukan untuk membuat gambar. Selain itu, jangan lupa bahwa wadah adalah gambar Docker yang digunakan untuk kehidupan. Agar dapat menggunakan perintah Docker secara efektif, pertama-tama, Anda perlu mencari tahu - apa yang Anda hadapi - dengan gambar atau dengan wadah. Jika Anda berpikir tentang gambar dan wadah, Anda dapat melihat bahwa gambar Docker dapat ada atau tidak ada. Hal yang sama dapat dikatakan untuk kontainer Docker. Kontainer Docker yang ada, di samping itu, bisa dalam keadaan operasional atau dalam keadaan tidak aktif.
Setelah Anda mengetahui dengan tepat apa yang perlu Anda kerjakan, Anda dapat menemukan tim yang tepat.
Ikhtisar Perintah Docker
Berikut adalah beberapa hal yang harus diketahui orang-orang yang ingin bekerja dengan Docker:
- Perintah antarmuka baris perintah Docker yang digunakan untuk mengontrol sesuatu dimulai dengan kata kunci
docker
diikuti oleh spasi, kemudian ada indikasi apa perintah tertentu akan diarahkan ke, kemudian ruang lain, dan kemudian perintah itu sendiri mengikuti. Sebagai contoh, ini adalah bagaimana perintah seperti itu dibangun: docker container stop
. - Jika perintah diarahkan ke gambar atau wadah tertentu, maka nama atau pengidentifikasi gambar atau wadah tersebut digunakan di dalamnya.
Misalnya,
docker container run my_app
adalah perintah untuk membuat dan menjalankan wadah bernama
my_app
. Dalam contoh di bawah ini, kami akan memanggil
my_container
, gambar
my_image
, tag
my_tag
, dan sebagainya.
Pertama, kita akan mempertimbangkan tim itu sendiri, lalu bendera yang dapat digunakan dengannya, jika ada bendera tersebut. Jika bendera memiliki dua tanda hubung di depannya, maka ini adalah bentuk penuhnya, bendera dengan satu tanda hubung adalah versi singkat dari bendera tertentu. Mereka bertindak dengan cara yang sama. Sebagai contoh,
-p
adalah bentuk disingkat dari flag
--port
.
Tujuan artikel ini adalah untuk memberi Anda gambaran umum tentang perintah Docker. Jadi Anda, memiliki gagasan umum tentang mereka dan mengetahui tentang fitur platform yang tersedia berkat perintah ini, dapat, jika perlu, menemukan informasi terperinci tentang mereka. Tim-tim yang dimaksud diuji pada OS keluarga Linux menggunakan mesin Docker versi 18.09.1 โโdan API versi 1.39.
Catatan Tentang Perintah yang Didukung oleh Docker CLI 1.13
Antarmuka baris perintah Docker versi 1.13 menyediakan perintah yang diperbarui dan dikelompokkan secara logis. Pada saat yang sama, tim lama masih bekerja, tetapi lebih mudah untuk menggunakan yang baru, terutama untuk pemula. Misalnya, dalam versi 1.12 perintah dari form
docker create
, dan dalam versi 1.13 perintah
docker container create
menjadi tersedia. Informasi tentang pencocokan tim lama dan baru dapat ditemukan di
sini .
Pertama kita melihat perintah untuk mengelola wadah, lalu kita membahas manajemen gambar.
Perintah Manajemen Kontainer
Skema perintah umum untuk mengelola kontainer adalah sebagai berikut:
docker container my_command
Berikut adalah perintah yang bisa diganti di mana kami menggunakan perintah
my_command
:
create
- buat wadah dari gambar.start
- mulai wadah yang ada.run
- buat wadah dan luncurkan.ls
- daftar wadah yang sedang berjalan.inspect
- tampilkan informasi terperinci tentang wadah.logs
- output log.stop
- stop container yang sedang berjalan dengan mengirimkan sinyal SIGTERM
ke proses container utama, dan, setelah beberapa waktu, SIGKILL
.kill
- hentikan wadah yang sedang berjalan dan kirim sinyal SIGKILL
ke proses wadah utama.rm
- hapus wadah yang dihentikan.
Perintah Manajemen Gambar
Untuk manajemen gambar, perintah yang digunakan terlihat seperti ini:
docker image my_command
Berikut beberapa tim dalam grup ini:
build
- membangun gambar.push
- kirim gambar ke registry jarak jauh.ls
- daftar gambar.history
- menampilkan informasi tentang lapisan gambar.inspect
- menampilkan informasi terperinci tentang gambar, termasuk informasi tentang lapisan.rm
- hapus gambar.
Tim yang berbeda
docker version
- docker version
informasi docker version
untuk klien dan server Docker.docker login
- entri registri Docker.docker system prune
- hapus wadah, jaringan, dan gambar yang tidak digunakan yang tidak diberi nama dan tag.
Sekarang pertimbangkan perintah ini lebih terinci.
Wadah
โ Awal keberadaan wadah
Pada tahap awal bekerja dengan kontainer, perintah
create
,
start
dan
run
digunakan. Mereka digunakan, masing-masing, untuk membuat wadah, untuk meluncurkannya, dan untuk membuat dan meluncurkannya.
Ini adalah perintah untuk membuat wadah dari gambar:
docker container create my_repo/my_image:my_tag
Pada contoh berikut,
my_repo/my_image:my_tag
akan disingkat menjadi
my_image
.
Perintah
create
menerima banyak
flag . Misalnya, dapat ditulis dalam bentuk berikut:
docker container create -a STDIN my_image
Bendera
-a
adalah bentuk pendek dari flag
--attach
. Bendera ini memungkinkan Anda untuk menghubungkan wadah ke
STDIN
,
STDOUT
atau
STDERR
.
Setelah wadah dibuat, itu dapat diluncurkan dengan perintah berikut:
docker container start my_container
Harap dicatat bahwa Anda bisa merujuk ke wadah dalam perintah baik menggunakan
ID
atau namanya.
Sekarang lihat perintah yang memungkinkan Anda untuk membuat dan menjalankan wadah:
docker container run my_image
Perintah ini juga mampu menerima banyak
argumen baris perintah. Pertimbangkan beberapa dari mereka dengan contoh konstruksi seperti itu:
docker container run -i -t -p 1000:8000 --rm my_image
Bendera
-i
adalah kependekan dari
--interactive
. Berkat bendera ini, aliran
STDIN
tetap terbuka meskipun wadah tidak terhubung ke
STDIN
.
Bendera
-t
adalah kependekan dari
--tty
. Berkat bendera ini, terminal pseudo disorot yang menghubungkan terminal yang digunakan ke wadah
STDIN
dan aliran
STDOUT
.
Agar dapat berinteraksi dengan kontainer melalui terminal, Anda harus menggunakan flag
-i
dan
-t
bersama-sama.
Bendera
-p
adalah kependekan dari
--port
. Port adalah antarmuka di mana wadah berinteraksi dengan dunia luar. Desain
1000:8000
mengalihkan port Docker
8000
ke port
1000
komputer tempat wadah beroperasi. Jika aplikasi tertentu berjalan dalam wadah yang dapat menampilkan sesuatu ke browser, maka untuk mengaksesnya, dalam kasus kami, Anda dapat pergi ke browser di
localhost:1000
.
Bendera
--rm
secara otomatis menghapus wadah setelah selesai.
Mari kita lihat beberapa contoh lagi dari perintah
run
:
docker container run -it my_image my_command
Dalam desain seperti itu, perintah
sh
dapat digunakan, yang akan membuat sesi terminal dalam wadah yang dapat berinteraksi dengan melalui terminal Anda. Saat bekerja dengan gambar berdasarkan Alpine, lebih baik fokus menggunakan
sh
daripada
bash
, karena dalam gambar ini, secara default,
bash
tidak diinstal. Untuk keluar dari sesi interaktif, gunakan
exit
.
Perhatikan bahwa di sini kita menggabungkan flag
-i
dan
-t
di
-it
.
Berikut ini contoh lain dari bekerja dengan perintah
run
:
docker container run -d my_image
Bendera
-d
adalah kependekan dari
--detach
. Perintah ini memulai wadah di latar belakang. Ini memungkinkan Anda untuk menggunakan terminal dari mana wadah diluncurkan untuk menjalankan perintah lain saat wadah sedang berjalan.
โMengonfirmasi status wadah
Jika Anda sudah menjalankan wadah Docker dan ingin tahu apa wadah-wadah ini, Anda harus mendaftarnya. Anda dapat melakukan ini dengan perintah berikut:
docker container ls
Perintah ini menampilkan daftar kontainer yang sedang berjalan dan memberikan daftar ini dengan beberapa informasi yang berguna tentang mereka. Berikut ini contoh lain dari perintah ini:
docker container ls -a -s
Switch
-a
dari perintah ini adalah kependekan dari
--all
. Dengan menggunakan tombol ini, Anda dapat menampilkan informasi tentang semua wadah, dan bukan hanya tentang yang sedang berjalan.
-s
adalah singkatan untuk
--size
. Ini memungkinkan Anda untuk menampilkan dimensi wadah.
Berikut adalah perintah yang menampilkan informasi terperinci tentang wadah:
docker container inspect my_container
Berikut adalah perintah yang menampilkan log kontainer:
docker container logs my_container
โ Pematian kontainer
Terkadang wadah yang berfungsi perlu dihentikan. Untuk melakukan ini, gunakan perintah berikut:
docker container stop my_container
Ini memungkinkan Anda untuk berhenti menjalankan wadah, memungkinkannya untuk dimatikan dengan benar. Kontainer memiliki, secara default, 10 detik untuk dimatikan.
Jika wadah harus dihentikan dengan cepat tanpa khawatir tentang penyelesaian tugasnya yang benar, Anda dapat menggunakan perintah berikut:
docker container kill my_container
Perintah
kill
, jika Anda membandingkan wadah yang berfungsi dengan TV yang dihidupkan, seperti mematikan TV dengan melepaskannya dari listrik. Oleh karena itu, dalam sebagian besar situasi, disarankan untuk menggunakan perintah berhenti untuk menghentikan kontainer.
Berikut adalah perintah yang memungkinkan Anda untuk menghentikan semua wadah yang berjalan dengan cepat:
docker container kill $(docker ps -q)
Untuk menghapus wadah yang dihentikan, Anda dapat menggunakan perintah berikut:
docker container rm my_container
Berikut adalah perintah yang memungkinkan Anda untuk menghapus semua wadah yang tidak dieksekusi pada saat memanggil perintah ini:
docker container rm $(docker ps -a -q)
Untuk meringkas bagian ini. Pertama, sebuah wadah dibuat, kemudian diluncurkan, atau kedua langkah ini digabungkan menggunakan perintah dari formulir
docker run my_container
. Setelah itu, aplikasi kemas diluncurkan.
Kemudian kontainer dihentikan dengan
docker stop my_container
. Untuk menghapus wadah, gunakan perintah
docker rm my_container
.
Sekarang mari kita bicara tentang perintah yang digunakan untuk bekerja dengan gambar, dengan template dari mana wadah dibuat.
Gambar-gambar
โMembuat gambar
Berikut adalah perintah yang memungkinkan Anda untuk mengumpulkan gambar Docker:
docker image build -t my_repo/my_image:my_tag .
Dalam hal ini, gambar dibuat dengan nama
my_image
; selama perakitannya, file Dockerfile yang terletak di jalur atau URL yang ditentukan digunakan.
Bendera
-t
adalah kependekan dari
--tag
. Ini memberitahu Docker bahwa gambar yang akan dibuat harus diberi tag yang disediakan dalam perintah. Dalam hal ini, ini adalah
my_tag
.
Titik di akhir perintah menunjukkan bahwa gambar harus dikumpulkan menggunakan file Dockerfile yang terletak di direktori kerja saat ini.
Setelah gambar dirakit, itu dapat dikirim ke registri jarak jauh. Berkat ini, orang lain akan dapat menggunakannya, dapat diunduh dan dijalankan di komputer lain. Misalkan Anda ingin menggunakan
Docker Hub . Jika demikian, Anda harus membuat akun di sana. Penggunaan sumber daya ini gratis.
Setelah mendaftar ke Docker Hub, Anda harus masuk. Dan meskipun perintah yang digunakan untuk ini tidak berlaku langsung untuk perintah yang dimaksudkan untuk bekerja dengan gambar, akan berguna untuk mempertimbangkannya di sini. Ini adalah perintah berikut:
docker login
Ini memungkinkan Anda untuk masuk ke akun Docker Hub Anda. Untuk masuk, Anda harus memasukkan nama pengguna dan kata sandi.
Setelah masuk, Anda dapat mengirim gambar ke registri. Ini dilakukan seperti ini:
docker image push my_repo/my_image:my_tag
Sekarang Anda memiliki beberapa jenis gambar, Anda dapat menjelajahinya menggunakan perintah khusus.
โ Penelitian gambar
Berikut adalah perintah yang menampilkan daftar gambar, termasuk, termasuk informasi tentang ukurannya:
docker image ls
Perintah berikut memungkinkan Anda untuk menampilkan informasi tentang gambar setengah jadi yang membentuk gambar, khususnya, data tentang ukurannya dan bagaimana mereka dibuat:
docker image history my_image
Berikut adalah perintah yang menampilkan informasi terperinci tentang gambar, termasuk data tentang lapisan yang membentuk gambar:
docker image inspect my_image
Jika Anda membuat begitu banyak gambar, mungkin saja beberapa di antaranya perlu dihapus.
โHapus gambar
Berikut adalah perintah yang memungkinkan Anda untuk menghapus gambar yang ditentukan:
docker image rm my_image
Jika gambar disimpan dalam repositori jarak jauh, itu tidak akan dihapus dari sana.
Berikut adalah perintah yang memungkinkan Anda untuk menghapus semua gambar lokal:
docker image rm $(docker images -a -q)
Gunakan perintah ini dengan hati-hati, tetapi harus dicatat bahwa ketika digunakan, gambar yang disimpan dalam repositori jarak jauh tidak akan dihapus. Ini adalah salah satu manfaat menyimpan gambar dalam repositori.
Kami memeriksa perintah dasar yang digunakan untuk mengelola wadah dan gambar. Sekarang mari kita bicara tentang beberapa tim lagi.
Tim yang berbeda
Berikut adalah perintah yang menampilkan informasi versi untuk klien dan server Docker:
docker version
Perintah ini, yang sudah diketahui oleh Anda, digunakan untuk memasukkan registri Docker:
docker login
Perintah ini memungkinkan Anda untuk menghapus wadah, jaringan, dan gambar
yang tidak digunakan yang tidak diberi nama dan tag :
docker system prune
Berikut ini adalah contoh penggunaannya:
docker system prune -a --volumes
Switch
-a
adalah singkatan untuk
--all
, memungkinkan Anda untuk menghapus gambar yang tidak digunakan, dan bukan hanya gambar yang tidak diberi nama dan tag.
--volumes
memungkinkan
--volumes
untuk menghapus volume yang tidak digunakan.
Ringkasan
Pada artikel ini, kami membahas perintah Docker yang berguna. Jika Anda baru mulai bekerja dengan Docker, maka Anda harus memperhatikan tiga perintah terpenting berikut ini:
Buat dan jalankan wadah:
docker container run my_image
Bangun gambar:
docker image build -t my_repo/my_image:my_tag .
Mengunggah gambar ke repositori jarak jauh:
docker image push my_repo/my_image:my_tag
Untuk melihat bantuan pada perintah Docker, Anda dapat menjalankan perintah
docker
di terminal.
Di sini Anda dapat menemukan bantuan pada antarmuka baris perintah Docker.
Lain kali kita akan berbicara tentang bekerja dengan data di Docker.
Pembaca yang budiman! Jika Anda bekerja dengan Docker, maka Anda mungkin memiliki daftar perintah yang umum digunakan. Jika demikian, silakan bagikan daftar ini.
