Cara Memasang Docker dan Jalankan Bekas Docker di Ubuntu

Cara Memasang Docker dan Jalankan Bekas Docker di Ubuntu

Docker adalah sumber terbuka dan virtualisasi peringkat sistem operasi yang popular (biasanya dikenali sebagai "kontena") Teknologi yang terutama berjalan di Linux dan Windows. Docker menjadikannya lebih mudah untuk membuat, menggunakan, dan menjalankan aplikasi dengan menggunakan bekas.

Dengan bekas, Pemaju (dan pentadbir sistem) boleh membungkus aplikasi dengan semua yang diperlukan untuk menjalankan aplikasi - kod, jangka masa, perpustakaan, pembolehubah persekitaran, dan fail konfigurasi, dan menghantar semuanya sebagai satu pakej. Ya, itu hebat!

Dalam artikel ini, kami akan menunjukkan kepada anda cara memasang Docker CE (Edisi Komuniti), buat dan jalankan bekas Docker Ubuntu pengedaran.

Memasang Docker CE (Edisi Komuniti) di Ubuntu

1. Untuk memasang Docker CE, Pertama, anda perlu mengeluarkan versi lama Docker dipanggil Docker, Docker.io, atau Docker-enjin dari sistem menggunakan arahan berikut.

$ sudo apt-get Buang Docker-enjin Docker Docker.IO Containerd Runc 

2. Seterusnya, anda perlu menyediakan repositori Docker untuk memasang dan mengemas kini Docker dari repositori menggunakan arahan berikut.

$ sudo apt -get update $ curl -fssl https: // muat turun.Docker.com/linux/ubuntu/gpg | sudo apt-key add-$ sudo add-apt-repository "deb [arch = amd64] https: // muat turun.Docker.com/linux/ubuntu $ (lsb_release -cs) stabil " 

3. Kemas kini Indeks Pakej APT dan pasang versi terkini Docker CE menggunakan arahan berikut.

$ sudo apt-get update $ sudo apt-get pemasangan docker-ce docker-cle-cli containerd.io 
Memasang Docker CE di Ubuntu
Senarai Pakej Membaca ... Dilakukan Bangunan Kebergantungan Pokok Membaca Maklumat Negeri ... Selesai pakej tambahan berikut akan dipasang: Aufs-Tools cgroupfs-mount pigz Pakej baru berikut akan dipasang: Aufs-Tools cgroupfs-mount containerd.io docker-ce docker-ce-cli pigz 0 dinaik taraf, 6 yang baru dipasang, 0 untuk menghapuskan dan 167 tidak ditingkatkan. Perlu mendapatkan 50.7 MB arkib. Selepas operasi ini, 243 MB ruang cakera tambahan akan digunakan. Adakah anda mahu meneruskan? [Y/n] y Dapatkan: 1 http: // arkib.Ubuntu.com/ubuntu bionik/alam semesta amd64 pigz amd64 2.4-1 [57.4 kb] Dapatkan: 2 https: // muat turun.Docker.com/linux/ubuntu bionik/stabil amd64 containerd.IO AMD64 1.2.4-1 [19.9 MB] Dapatkan: 3 http: // arkib.Ubuntu.com/ubuntu bionik/alam semesta AMD64 AUFS-TOOLS AMD64 1: 4.9+20170918-1ubuntu1 [104 kb] GET: 4 http: // arkib.Ubuntu.com/ubuntu bionik/alam semesta amd64 cgroupfs-mount semua 1.4 [6,320 b] Dapatkan: 5 https: // muat turun.Docker.com/linux/ubuntu bionik/stabil amd64 docker-cle-cli amd64 5:18.09.3 ~ 3-0 ~ Ubuntu-Bionic [13.1 MB] Dapatkan: 6 https: // muat turun.Docker.com/linux/ubuntu bionik/stabil amd64 docker-ce amd64 5:18.09.3 ~ 3-0 ~ Ubuntu-Bionic [17.4 MB] diambil 50.7 MB dalam 7S (7,779 kb/s) .. 

4. Setelah berjaya memasang Docker CE pakej, perkhidmatan harus dimulakan secara automatik dan dibolehkan secara automatik untuk memulakan boot sistem, anda boleh menyemak statusnya menggunakan arahan berikut.

$ sudo systemctl status docker 
Memeriksa Status Docker CE
● Docker.Perkhidmatan - Enjin Kontena Aplikasi Docker dimuatkan: dimuatkan (/lib/sistem/sistem/docker.perkhidmatan; didayakan; Pratetap Vendor: Diaktifkan) Aktif: Aktif (Berjalan) Sejak Rabu 2019-03-06 08:06:42 UTC; 2min 18s yang lalu Dokumen: https: // docs.Docker.com PID Utama: 5274 (Dockerd) Tugas: 8 cgroup: /System.Slice/Docker.Perkhidmatan └─5274/usr/bin/dockerd -h fd: // --containerd =/run/containerd/containerd.Sock Mar 06 08:06:41 Tecmint Dockerd [5274]: Time = "2019-03-06T08: 06: 41.562587408Z "level = amaran msg =" Kernel anda tidak menyokong cgroup rt runtime "06 Mar 08:06:41 Tecmint Dockerd [5274]: Time =" 2019-03-06T08: 06: 41.562767803Z "Tahap = amaran msg =" Kernel anda tidak menyokong berat badan cgroup "06 08:06:41 tecmint dockerd [5274]: time =" 2019-03-06t08: 06: 41.562966844Z "level = amaran msg =" kernel anda tidak menyokong cgroup blkio berat_device "06 Mar 08:06:41 Tecmint Dockerd [5274]: Time =" 2019-03-06T08: 06: 41.565298457Z "level = info msg =" bekas pemuatan: Mula."Mar 06 08:06:41 Tecmint Dockerd [5274]: Time =" 2019-03-06T08: 06: 41.950942467Z "level = info msg =" Jambatan lalai (docker0) diberikan dengan alamat IP 172.17.0.0/16. Pilihan Daemon--Bip boleh digunakan untuk menetapkan pilihan 06 08:06:42 Tecmint Dockerd [5274]: Time = "2019-03-06T08: 06: 42.036964493Z "level = info msg =" bekas pemuatan: Selesai."Mar 06 08:06:42 Tecmint Dockerd [5274]: Time =" 2019-03-06T08: 06: 42.156279378Z "level = info msg =" docker daemon "komit = 774a1f4 graphdriver (s) = overlay2 versi = 18.09.3 Mac 06 08:06:42 Tecmint Dockerd [5274]: Time = "2019-03-06T08: 06: 42.157145045Z "level = info msg =" daemon telah menyelesaikan inisialisasi "Mar 06 08:06:42 Tecmint Systemd [1]: Memulakan Enjin Kontena Aplikasi Docker. Mac 06 08:06:42 Tecmint Dockerd [5274]: Time = "2019-03-06T08: 06: 42.224229999Z "level = info msg =" API Dengar/var/run/docker.kaus kaki " 

5. Akhirnya, sahkan bahawa Docker CE dipasang dengan betul dengan menjalankan Hai dunia gambar.

$ sudo docker menjalankan hello-world 
Sahkan pemasangan Docker CE
Helo dari Docker! Mesej ini menunjukkan bahawa pemasangan anda nampaknya berfungsi dengan betul. Untuk menjana mesej ini, Docker mengambil langkah berikut: 1. Pelanggan Docker menghubungi daemon docker. 2. Daemon Docker menarik imej "Hello-World" dari Hub Docker. (AMD64) 3. The Docker Daemon mencipta bekas baru dari imej itu yang menjalankan executable yang menghasilkan output yang sedang anda baca. 4. Daemon Docker mengalir output itu kepada pelanggan Docker, yang menghantarnya ke terminal anda. Untuk mencuba sesuatu yang lebih bercita -cita tinggi, anda boleh menjalankan bekas Ubuntu dengan: $ Docker Run -IT Ubuntu Bash Share Images, mengautomasikan aliran kerja, dan banyak lagi dengan ID Docker percuma: https: // hub.Docker.com/Untuk lebih banyak contoh dan idea, lawati: https: // docs.Docker.com/get-started/ 

Belajar arahan docker asas di Ubuntu

6. Untuk mendapatkan maklumat mengenai Docker, Jalankan arahan berikut.

$ sudo docker info Versi kernel: 5.0.Sistem operasi 0-050000-generik: Ubuntu 18.04.1 lts ostype: Linux Architecture: x86_64 CPU: 1 Jumlah Memori: 1.452GIB Nama: TECMINT ID: FWSB: IRIF: DYL7: PRB5: Y66E: 37MY: ISPO: HZVY: 6YJO: 2IYL: TO6Y: GNB7 DOCKER ROOT DIR:/VAR/LIB/DOCKER DEBUG mod (pelanggan) ): Pendaftaran palsu: https: // indeks.Docker.IO/ V1/ Label: Eksperimen: Pendaftaran Tidak Salah Palsu: 127.0.0.0/8 Live Restore Enabled: Lesen Produk Palsu: Enjin Komuniti 

7. Untuk mendapatkan maklumat mengenai Docker versi, jalankan arahan berikut.

$ Sudo Docker Versi Pelanggan: Versi: 18.09.3 versi API: 1.39 Go Versi: GO1.10.8 Git Commit: 774a1f4 Dibina: Thu 28 Feb 06:53:11 2019 OS/Arch: Linux/AMD64 Eksperimen: Server False: Enjin Docker - Enjin Komuniti: Versi: 18.09.3 versi API: 1.39 (versi minimum 1.12) Pergi Versi: GO1.10.8 Git Commit: 774a1f4 Dibina: Thu 28 Feb 05:59:55 2019 OS/Arch: Linux/AMD64 Eksperimen: Palsu 

8. Untuk mendapatkan senarai semua arahan Docker yang ada Docker di terminal anda.

$ docker Penggunaan: Docker [Options] memerintahkan runtime yang mencukupi untuk pilihan kontena: --config lokasi rentetan fail konfigurasi klien (lalai "/home/tecmint/.Docker ") -d, --debug Enable Mode Debug -H, -HOST LIST Daemon Socket (s) Untuk menyambung ke -l, -log -level String Tetapkan tahap pembalakan (" debug "|" info "|" memberi amaran "|" error "|" maut ") (lalai" maklumat ") --tls menggunakan TLS; tersirat oleh --TLSVERIFY --TLSCACERT String Trust Certs yang ditandatangani hanya oleh CA ini (lalai"/home/tecmint/.Docker/CA.PEM ") -Jalan rentetan tlscert ke fail sijil TLS (lalai"/home/tecmint/.Docker/cert.PEM ") -Laluan rentetan tlskey ke fail kunci TLS (lalai"/home/tecmint/.Docker/Key.PEM ") -TLSVERIFY Gunakan TLS dan sahkan maklumat versi cetak jauh, versi dan perintah pengurusan berhenti: pembina menguruskan membina konfigurasi menguruskan konfigurasi docker menguruskan enjin kontena menguruskan imej enjin docker menguruskan imej rangkaian menguruskan rangkaian nod menguruskan swarm Plugin Nod Mengurus Plugin Rahsia Mengurus Rahsia Docker Perkhidmatan Mengurus Perkhidmatan Stack Mengurus Docker Stacks Swarm Manage Swarm Sistem Mengurus Docker Trust Manage Trust on Docker Images Volume menguruskan jumlah .. 

Muat turun gambar Docker di Ubuntu

9. Untuk menjalankan bekas Docker, pertama, anda perlu memuat turun gambar dari Docker Hub - menyediakan imej percuma dari repositasinya.

Contohnya, untuk memuat turun imej Docker yang dipanggil Centos 7, Mengeluarkan arahan berikut.

$ sudo docker carian centos Nama Penerangan Bintang Rasmi Automatik CentOS Pembinaan Rasmi CentOS. 5227 [OK] Ansible/Centos7-Ansible Ansible on Centos7 120 [OK] JDeathe/Centos-SSH Centos-6 6.10 x86_64 / centos-7 7.5.1804 x86 ... 107 [OK] Container Centos/Centos-XFCE-VNC Centos dengan sesi VNC "Headless" ... 81 [OK] Imagine10255/Centos6-LNMP-PHP56 Centos6-LNMP-PHP56 50 50 [OK] CentOS/MySQL-57-Centos7 MySQL 5.7 SQL Server Pangkalan Data 47 TUTUM/CENTOS Simple Centos Docker Imej dengan SSH Access 43 Gluster/Gluster-Centos rasmi glusterfs imej [Centos-7 + Glust ... 40 [OK] Saya ... 39 CentOS/PostgreSQL-96-Centos7 PostgreSQL adalah platform objek yang maju ... 37 centos/python-35-centos7 platform untuk membina dan menjalankan python 3.5 ... 33 Kinogmt/Centos-SSH Centos dengan SSH 26 [OK] Openshift/Jenkins-2-Centos7 A Centos7 berasaskan Jenkins v2.X Imej untuk digunakan ... 20 CentOS/PHP-56-Centos7 Platform untuk membina dan menjalankan Php 5.6 Ap ... 19 Pivotaldata/Centos-GPDB-Dev Centos Imej untuk Pembangunan GPDB. Nama Tag ... 10 OpenShift/Wildfly-101-Centos7 A Centos7 berasaskan Wildfly v10.1 Imej untuk digunakan ... 6 OpenShift/Jenkins-1-Centos7 Dihapus: Jenkins V1 yang berpusat di CentOS7.X Ima ... 4 Darksheer/Centos Base Centos Image-Dikemaskini setiap jam 3 [OK] Pivotaldata/Centos Base Centos, menyegarkan sedikit dengan do ... 2 pivotaldata/centos-mingw menggunakan toolchain Mingw untuk menyeberang t ... 2 pivotaldata /Centos-GCC-Toolchain CentOs dengan toolchain, tetapi tidak berkaitan WI ... 1 OpenShift/Wildfly-81-Centos7 A Centos7 berasaskan Wildfly V8.1 Imej untuk digunakan ... 1 BlackLabelops/Centos Centos Image Base! Dibina dan dikemas kini setiap hari! 1 [OK] Smartentry/Centos Centos dengan Smartentry 0 [OK] Jameseckersall/Sonarr-Centos Sonarr pada Centos 7 0 [OK] 

10. Setelah anda menentukan imej yang ingin anda jalankan berdasarkan keperluan anda, muat turunnya secara tempatan dengan menjalankan arahan di bawah (dalam hal ini a Centos gambar dimuat turun dan digunakan).

$ docker tarik centos Menggunakan tag lalai: Terkini Terkini: Menarik dari Perpustakaan/CentOS A02A4930CB5D: Pull Complete Digest: SHA256: 184E5F35598E333BFA7DE10D8FB1CEBBB5EE4DF5BC0F970BF2B1E73451: Status 

11. Untuk menyenaraikan semua imej Docker yang ada di hos anda jalankan arahan berikut.

Imej Docker $ sudo ID Imej Tag Repositori Dibuat Saiz Hello-World Terkini FCE289E99EB9 2 bulan yang lalu 1.84KB Centos terkini 1E1148E4CC2C 3 bulan yang lalu 202MB 

12. Sekiranya anda tidak mahu Docker gambar lagi dan anda boleh membuangnya menggunakan arahan berikut.

$ sudo docker rmi centos Untagged: centos:latest Untagged: [email protected]:184e5f35598e333bfa7de10d8fb1cebb5ee4df5bc0f970bf2b1e7c7345136426 Deleted: sha256:1e1148e4cc2c148c6890a18e3b2d2dde41a6745ceb4e5fe94a923d811bf82ddb Deleted: sha256:071d8bd765171080d01682844524be57ac9883e53079b6ac66707e192ea25956 

Jalankan bekas Docker di Ubuntu

13. Untuk membuat dan menjalankan bekas Docker, pertama anda perlu menjalankan arahan ke dalam dimuat turun Centos imej, jadi arahan asas adalah untuk memeriksa fail versi pengedaran di dalam bekas menggunakan perintah kucing, seperti yang ditunjukkan.

$ Docker Run Centos Cat /etc /Isu 

14. Untuk menjalankan bekas lagi, pertama anda perlu mendapatkan ID atau Nama Bekas Dengan menjalankan arahan berikut, yang akan memaparkan senarai bekas yang berlari dan berhenti:

$ sudo docker ps -l Perintah Imej Id Container Dibuat Nama Port Status 0DDFA81C5779 Centos "kucing /etc /isu" kira -kira satu minit yang lalu keluar (0) kira -kira satu minit yang lalu Elastic_shirley 

15. Sekali ID atau Nama Bekas telah diperoleh, anda boleh memulakan bekas menggunakan arahan berikut:

$ sudo docker bermula 0DDFA81C5779 Atau $ sudo docker bermula Elastic_shirley 

Di sini, rentetan 0DDFA81C5779 mewakili id ​​kontena dan Elastic_shirley mewakili nama bekas.

16. Untuk menghentikan larian kontena berjalan Docker berhenti perintah dengan menentukan ID atau Nama Bekas.

$ sudo stop docker 0DDFA81C5779 Atau $ sudo docker berhenti Elastic_shirley 

17. Cara yang lebih baik, sehingga anda tidak perlu ingat id kontena adalah untuk menentukan nama unik untuk setiap bekas yang anda buat dengan menggunakan --nama pilihan seperti yang ditunjukkan.

$ Docker Run -Name Myname Centos Cat /etc /Issue 

18. Untuk menyambung dan menjalankan perintah Linux ke dalam isu kontena perintah berikut.

$ docker run -it centos bash [[dilindungi e -mel] /]# uname -a linux 6213ec547863 5.0.0-050000-Generic # 201903032031 SMP Mon Mar 4 01:33:18 UTC 2019 x86_64 x86_64 x86_64 GNU /Linux [[E-mel dilindungi] /] # Cat /etc /Redhat-Release Centos Linux.6.1810 (teras) 

19. Untuk berhenti dan kembali menjadi tuan rumah dari sesi kontena yang berjalan, anda mesti menaip keluar arahan seperti yang ditunjukkan.

$ keluar 

Itu sahaja untuk manipulasi kontena asas. Sekiranya anda mempunyai sebarang pertanyaan atau komen mengenai artikel ini, gunakan borang maklum balas di bawah untuk sampai ke kami.