Android

Bagaimana untuk memasang dan menggunakan docker pada centos 7

How to Install Docker in Centos 7 linux

How to Install Docker in Centos 7 linux

Isi kandungan:

Anonim

Docker adalah teknologi kontena yang membolehkan anda membina, menguji dan menggunakan aplikasi dengan cepat sebagai bekas mudah alih dan mandiri yang boleh berjalan di mana-mana sahaja.

Dalam tutorial ini, kami akan meneruskan cara memasang Docker CE pada CentOS 7 dan meneroka konsep dan arahan Docker asas.

Prasyarat

Sebelum meneruskan dengan tutorial ini, pastikan prasyarat yang berikut dipenuhi:

  • Server CentOS 7Anda log masuk sebagai pengguna bukan root dengan keistimewaan sudo. Anda periksa panduan ini tentang cara membuat pengguna sudo baru.

Pasang Docker pada CentOS

Walaupun pakej Docker tersedia di repositori CentOS 7 rasmi, ia mungkin tidak selalu menjadi versi terkini. Pendekatan yang disyorkan adalah memasang Docker dari repositori Docker.

Untuk memasang Docker pada pelayan CentOS 7 anda ikuti langkah-langkah di bawah:

  1. Mulakan dengan mengemas kini pakej sistem anda dan pasangkan dependensi yang diperlukan:

    sudo yum update sudo yum install yum-utils device-mapper-persistent-data lvm2

    Seterusnya, jalankan arahan berikut yang akan menambah repositori stabil Docker ke sistem anda:

    sudo yum-config-manager --add-repo

    Sekarang repositori Docker diaktifkan, pasang versi terbaru Docker CE (Community Edition) menggunakan yum dengan menaip:

    sudo yum install docker-ce

    Sebaik sahaja pakej Docker dipasang, mulakan daemon Docker dan dayakannya secara automatik pada masa boot:

    sudo systemctl start docker sudo systemctl enable docker

    Untuk mengesahkan bahawa perkhidmatan Docker menjalankan jenis:

    sudo systemctl status docker

    Keluaran seharusnya kelihatan seperti ini:

    ● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2018-10-31 08:51:20 UTC; 7s ago Docs: https://docs.docker.com Main PID: 2492 (dockerd) CGroup: /system.slice/docker.service ├─2492 /usr/bin/dockerd └─2498 docker-containerd --config /var/run/docker/containerd/containerd.toml

    Pada masa penulisan, versi stabil Docker adalah, 18.06.1 , untuk mencetak jenis versi Docker:

    docker -v

    Docker version 18.06.1-ce, build e68fc7a

Melaksanakan Perintah Docker Tanpa Sudo

Mengurus secara lalai, Docker memerlukan keistimewaan pentadbir. Jika anda ingin menjalankan arahan Docker sebagai pengguna bukan root tanpa menyediakan sudo anda perlu menambah pengguna anda ke kumpulan dok yang dibuat semasa pemasangan paket Docker CE. Anda boleh melakukannya dengan menaip:

sudo usermod -aG docker $USER

$USER adalah pembolehubah persekitaran yang memegang nama pengguna anda.

Log keluar dan log masuk semula supaya keahlian kumpulan disegarkan.

Untuk mengesahkan Docker dipasang dengan jayanya dan bahawa anda boleh menjalankan arahan docker tanpa sudo, mengeluarkan arahan berikut yang akan memuat turun imej ujian, jalankannya dalam bekas, cetak mesej "Hello from Docker" dan keluar:

docker container run hello-world

Keluaran seharusnya kelihatan seperti berikut:

Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 9bb5a5d4561a: Pull complete Digest: sha256:f5233545e43561214ca4891fd1157e1c3c563316ed8e237750d59bde73361e77 Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly.

Antara muka baris arahan Docker

Sekarang kita mempunyai pemasangan Docker yang berfungsi, mari kita lihat sintaks dasar CLI docker.

Barisan arahan docker mengambil borang berikut:

docker

Anda boleh menyenaraikan semua arahan yang ada dengan menaip docker tanpa parameter:

docker

docker --help

Imej Docker

Imej Docker terdiri daripada satu siri lapisan yang mewakili arahan dalam Dockerfile imej yang membentuk aplikasi perisian boleh laku. Imej adalah fail perduaan yang tidak berubah termasuk aplikasi dan semua ketergantungan lain seperti binari, perpustakaan, dan arahan yang diperlukan untuk menjalankan aplikasi. Ringkasnya, imej Docker pada dasarnya adalah satu gambar peti kemas Docker.

Hab Docker adalah perkhidmatan pendaftar berasaskan awan yang antara fungsi lain digunakan untuk menyimpan imej Docker sama ada dalam repositori awam atau swasta.

Untuk mencari repositori Hub Docker untuk imej hanya gunakan subcommand search . Sebagai contoh, untuk mencari imej CentOS, jalankan:

docker search centos

Keluaran seharusnya kelihatan seperti berikut:

NAME DESCRIPTION STARS OFFICIAL AUTOMATED centos The official build of CentOS. 4257 ansible/centos7-ansible Ansible on Centos7 109 jdeathe/centos-ssh CentOS-6 6.9 x86_64 / CentOS-7 7.4.1708 x86_… 94 consol/centos-xfce-vnc Centos container with "headless" VNC session… 52 imagine10255/centos6-lnmp-php56 centos6-lnmp-php56 40 tutum/centos Simple CentOS docker image with SSH access 39

Seperti yang anda dapat lihat hasil carian mencetak jadual dengan lima lajur, NAME , DESCRIPTION , STARS , OFFICIAL dan AUTOMATED . Imej rasmi adalah imej yang Docker berkembang bersamaan dengan pasangan huluan.

Jika kita mahu memuat turun pembentukan rasmi CentOS 7, kita boleh melakukannya dengan menggunakan subcommand image pull :

docker image pull centos

Using default tag: latest latest: Pulling from library/centos 469cfcc7a4b3: Pull complete Digest: sha256:989b936d56b1ace20ddf855a301741e52abca38286382cba7f44443210e96d16 Status: Downloaded newer image for centos:latest

Bergantung pada kelajuan Internet anda, muat turun mungkin mengambil masa beberapa saat atau beberapa minit. Sebaik sahaja imej dimuat turun, kami boleh menyenaraikan imej dengan:

docker image ls

Output seharusnya kelihatan seperti berikut:

REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest e38bc07ac18e 3 weeks ago 1.85kB centos latest e934aafc2206 4 weeks ago 199MB

Jika atas sebab tertentu anda ingin memadamkan imej yang boleh anda lakukan dengan submand image rm :

docker image rm centos

Untagged: centos:latest Untagged: centos@sha256:989b936d56b1ace20ddf855a301741e52abca38286382cba7f44443210e96d16 Deleted: sha256:e934aafc22064b7322c0250f1e32e5ce93b2d19b356f4537f5864bd102e8531f Deleted: sha256:43e653f84b79ba52711b0f726ff5a7fd1162ae9df4be76ca1de8370b8bbf9bb0

Kontena Docker

Contoh imej dipanggil bekas. Satu bekas mewakili runtime untuk satu aplikasi, proses, atau perkhidmatan.

Ia mungkin bukan perbandingan yang paling sesuai tetapi jika anda seorang programmer, anda boleh memikirkan imej Docker sebagai kelas dan kontainer Docker sebagai contoh kelas.

Kita boleh memulakan, menghentikan, mengalih dan menguruskan sebuah bekas dengan subcommand docker container pelabuhan.

Perintah berikut akan memulakan bekas Docker berdasarkan imej CentoOS. Sekiranya anda tidak mempunyai gambar secara tempatan, ia akan memuat turun terlebih dahulu:

docker container run centos

Pada pandangan pertama, anda mungkin kelihatan tidak ada yang berlaku sama sekali. Nah, itu tidak benar. Bekas CentOS berhenti sejurus selepas boot kerana ia tidak mempunyai proses berjalan lama dan kami tidak memberikan sebarang perintah, jadi bekas itu dimulakan, berlari perintah kosong dan kemudian keluar.

Suis -it membolehkan kita berinteraksi dengan bekas melalui baris arahan. Untuk memulakan jenis kontena interaktif:

docker container run -it centos /bin/bash

Seperti yang anda dapat lihat dari output sebaik sahaja bekas dimulakan, arahan perintah ditukar yang bermaksud bahawa anda kini bekerja dari dalam bekas:

#

Untuk menyenaraikan bekas yang sedang berjalan:, ketik:

docker container ls

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 79ab8e16d567 centos "/bin/bash" 22 minutes ago Up 22 minutes ecstatic_ardinghelli Sekiranya anda tidak mempunyai sebarang bekas yang berfungsi, output akan kosong.

Untuk melihat kedua-dua bekas yang sedang berjalan dan berhenti, -a suis -a :

docker container ls -a

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 79ab8e16d567 centos "/bin/bash" 22 minutes ago Up 22 minutes ecstatic_ardinghelli c55680af670c centos "/bin/bash" 30 minutes ago Exited (0) 30 minutes ago modest_hawking c6a147d1bc8a hello-world "/hello" 20 hours ago Exited (0) 20 hours ago sleepy_shannon

Untuk memadamkan satu atau lebih bekas hanya menyalin ID kontena (atau ID) dari atas dan tampalnya selepas subcommand container rm :

docker container rm c55680af670c

Kesimpulannya

Anda telah belajar cara memasang Docker pada mesin CentOS 7 anda dan bagaimana untuk memuat turun imej Docker dan menguruskan bekas Docker. Anda juga boleh membaca tentang Docker Compose, yang membolehkan anda menentukan dan menjalankan aplikasi Docker berbilang kontena.

Tutorial ini hampir tidak mencetuskan permukaan ekosistem Docker. Dalam beberapa artikel seterusnya, kami akan terus menyelam ke aspek lain dari Docker. Untuk mengetahui lebih lanjut mengenai Docker, lihat Dokumen Docker rasmi.

pusat penyimpan