Rumah Java javaTutorial Permulaan pantas Docker, konsep teras dan arahan biasa

Permulaan pantas Docker, konsep teras dan arahan biasa

Aug 23, 2023 pm 02:56 PM
docker


Seorang rakan bertanya tentang soalan berkaitan Docker pada hujung minggu. Hari ini saya akan berkongsi dengan anda permulaan pantas, konsep teras dan arahan biasa untuk Docker.

Permulaan pantas Docker, konsep teras dan arahan biasa

1. Memasang Docker di bawah CentOS memerlukan versi pengedaran 7 dan ke atas Adalah disyorkan untuk menggunakan pemacu storan overlay2.
# 卸载已有 docker
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

# 添加安装源
sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

# 安装最新版
sudo yum install docker-ce docker-ce-cli containerd.io

# 启动
sudo yum install docker-ce docker-ce-cli containerd.io
Salin selepas log masuk

1.2, imej

pada asasnya ialah gabungan baca sahaja fail dan folder, yang mengandungi semua fail asas dan maklumat konfigurasi yang diperlukan apabila bekas sedang dijalankan. Operasi: 1. Tarik tarikan docker imej Seperti: docker pull nginx

2, namakan semula tag docker imej Contohnya: docker tag nginx:latest mynginx:latest

3 Lihat imej docker ls atau docker images

4 Padam imej docker rmiContohnya: docker rmi mynginx

5 atau docker commit Contohnya: docker commit nginx mynginx:lastest binaan buruh pelabuhan agak kompleks, tetapi ia digunakan lebih

1.3. Bekas

Bekas ialah entiti imej yang sedang dijalankan. Satu imej boleh mencipta berbilang bekas.

Kitaran hayat:

dicipta: keadaan pembinaan awal

berjalan: keadaan berjalan

berhenti: keadaan berhenti

dijeda: keadaan dijeda

dipadam: keadaan dipadam

dan mulakan:

C mulakan:

1. : docker create -it --name=mynginx mynginx

Mula: docker start mynginx

Cipta dan mulakan: docker run -it --name=mynginx mynginx

2 docker stop mynginx

3. Masukkan bekas buruh pelabuhan melampirkan mynginx docker exec -it mynginx sh (lebih banyak digunakan)

4 buruh pelabuhan rm mynginx Padamkan bekas yang sedang berjalan: docker rm -f mynginx

5 docker export mynginx > mynginx.tar

6 docker import mynginx.tar mynginx:import

1.4, gudang

menyimpan dan mengedarkan imej Docker, pelayan pendaftaran ialah pelayan sebenar di mana gudang disimpan, dan boleh mengandungi tin dan setiap gudang; mengandungi berbilang imej.

Hab docker gudang awam https://hub.docker.com/ Log masuk: log masuk buruh pelabuhan Tolak imej ke gudang: docker push

Gunakan pengedaran untuk membina gudang persendirian https://github.com/distribution/distribution

docker run -d -p 5000:5000 --name registry registry:2.7 docker push localhost:5000/mynginx

1.5, volum

boleh memintas sistem fail bersama lalai dan wujud terus pada hos dalam bentuk fail atau direktori. Ia menyelesaikan masalah kegigihan data dan perkongsian data antara bekas. Operasi: 1. Cipta: docker volume create volume-name

2 -v menentukan laluan untuk diteruskan secara automatik akan mencipta volum untuk kita dan mengikatnya pada bekas. docker run -d --name=nginx-volume -v /usr/share/nginx/html nginx

3 View: docker volume ls

4: docker volume inspect volume-name

5 Parameter -mount menentukan nama volum docker run -d --name=nginx --mount source=volume-name,target=/usr/share/nginx/html nginx

6 Padamkan jilid: docker volume rm volume-name

7 : docker run --mount source=lv,target=/tmp/log --name=v-producer -it test docker run -it --name consumer --volumes-from v-producer test

8 Perkongsian data antara volum dan hos: docker run -v /data:/usr/local/data -it test

1.6. .Komponen penting

1. Docker

  • docker, ialah klien Docker, menghantar permintaan
  • dockerd, pintu masuk pelayan, bertanggungjawab untuk menerima semula permintaan
  • bekas Proses No. 1, menguruskan sub-bekas
  • docker-proxy, memajukan trafik rangkaian hos ke kontena
  • 2, containerd

    containerd, bertanggungjawab ke atas bekas, pengurusan kitaran hayat seperti permulaan kontena, berhenti, dll...
  • containerd-shim, sebagai proses induk proses kontena, memisahkan kontena dari proses kontena sebenar
  • ctr, pelanggan kontena, menghantar permintaan kepada kontena semasa pembangunan dan penyahpepijatan
  • 3
    • runc, melalui antara muka sistem, mencipta dan memusnahkan bekas

1.7, pemantauan kontena

statistik docker boleh melihat CPU, memori IO, rangkaian IO, dll. semua bekas pada penggunaan Sumber. cAdvisor ialah penyelesaian pemantauan kontena umum sumber terbuka oleh Google. Rujukan pemasangan:

https://www.jianshu.com/p/91f9d9ec374f

Lihat pemantauan: http://localhost:8080 http://localhost:8080/containers/ http://localhost:8080/docker/

1.8, isu keselamatan

  • Kerentanan keselamatan diri
  • adalah isu keselamatan
  • dalam imej pengasingan inti hos adalah tidak mencukupi nama hos, pengguna, nama fail, rangkaian dan komunikasi antara proses dan pengasingan sumber lain.
    Docker menggunakan enam jenis: Ruang Nama Gunung, pengasingan titik lekap Ruang Nama PID, pengasingan proses Ruang Nama UTS, pengasingan nama hos Ruang Nama IPC, pengasingan komunikasi antara proses Ruang Nama Pengguna, pengasingan kumpulan pengguna dan pengguna Ruang Nama Bersih, peranti rangkaian, alamat IP dan pengasingan port

2.2, Cgroups mengehadkan sumber proses atau kumpulan proses, seperti CPU, memori, cakera IO, dsb. Fungsi cgroup:

  • Hadkan penggunaan sumber
  • Kumpulan yang berbeza boleh mempunyai keutamaan penggunaan yang berbeza untuk CPU, cakera IO dan sumber lain
  • Kira penggunaan sumber kumpulan kawalan

2.3, Sistem Fail Kesatuan

Sistem Fail Kesatuan, sistem fail ringan berlapis yang boleh bersama-sama melekapkan kandungan berbilang direktori ke dalam direktori yang sama untuk membentuk satu sistem fail.
  • Terdapat tiga sistem fail kesatuan yang paling biasa digunakan dalam Docker: AUFS, Devicemapper dan OverlayFS.
  • AUFS ialah yang terawal dan paling matang;
  • Devicemapper, rangka kerja yang disediakan oleh kernel Linux, ialah rangka kerja teknikal untuk pemetaan peranti blok. Konsep teras termasuk peranti yang dipetakan, peranti sasaran dan jadual peta, termasuk mod gelung-lvm dan mod langsung-lvm (untuk kegunaan pengeluaran
tindanan2, kemas kini lebih stabil dan sesuai untuk versi kernel Linux dan Docker); keperluannya agak tinggi.

2.4. Pelaksanaan rangkaian

CNM (Model Rangkaian Kontena) ialah standard rangkaian kontena yang dikeluarkan oleh Docker. Libnetwork ialah sumber terbuka, ditulis dalam Golang, mengikut sepenuhnya spesifikasi rangkaian CNM, dan merupakan pelaksanaan rasmi CNM. 🎜🎜Libnetwork mengandungi empat model rangkaian utama: 🎜
  • null Mod rangkaian null, tiada rangkaian kontena disediakan
  • mod jambatan jambatan, kontena boleh berkomunikasi antara satu sama lain
  • mod rangkaian hos hos, kontena boleh berkomunikasi dengan rangkaian hos
  • mod, bekas Letakkan pada rangkaian yang sama melalui temu bual Localhost

3, lain-lain yang berkaitan 3.1, susunan kontena

Docker: Docker Swarm, Kubertes Swarm Compose, Docker

Docker Compose telah diperoleh oleh Docker Ia pada asasnya ialah skrip python yang boleh mengurus dan mengatur berbilang bekas pada satu nod.

  • Docker Swarm ialah alat pengurusan kluster kontena yang dilancarkan secara rasmi oleh Docker. Ia menyokong API Docker secara asli, menyokong pengesahan dua hala TLS dan menggunakan protokol Raft untuk mencapai pengedaran.
  • Kubernetes, Google menggunakan reka bentuk teknikal dan pelaksanaan yang terkumpul oleh sistem Borg dalaman Ia berkuasa dan bertujuan untuk menyokong operasi ratusan juta kontena namun, seni binanya agak rumit dan ambang untuk bermula adalah tinggi.
  • 3.2. Peranan dalam devops

Matlamat keseluruhan DevOps adalah untuk menggalakkan kerjasama antara kakitangan pembangunan dan operasi dan penyelenggaraan, dan untuk memendekkan keseluruhan kitaran penghantaran perisian melalui cara automatik dan menambah baik. kebolehpercayaan. Pasang persekitaran pembangunan dengan pantas melalui Docker, sepadukan Fail Docker dengan cepat untuk membina imej, tarik imej dan jalankan bekas untuk melengkapkan penggunaan dan gabungkan dengan alatan orkestrasi kontena untuk mencapai keluaran biru-hijau.

Menggalakkan pembangunan DevOps.

Membolehkan integrasi dan penghantaran berterusan yang pantas.

Atas ialah kandungan terperinci Permulaan pantas Docker, konsep teras dan arahan biasa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Pembangunan tangkas dan pengendalian kontena perkhidmatan mikro PHP Pembangunan tangkas dan pengendalian kontena perkhidmatan mikro PHP May 08, 2024 pm 02:21 PM

Jawapan: Perkhidmatan mikro PHP digunakan dengan HelmCharts untuk pembangunan tangkas dan kontena dengan DockerContainer untuk pengasingan dan kebolehskalaan. Penerangan terperinci: Gunakan HelmCharts untuk menggunakan perkhidmatan mikro PHP secara automatik untuk mencapai pembangunan tangkas. Imej Docker membenarkan lelaran pantas dan kawalan versi perkhidmatan mikro. Piawaian DockerContainer mengasingkan perkhidmatan mikro dan Kubernetes mengurus ketersediaan dan kebolehskalaan bekas. Gunakan Prometheus dan Grafana untuk memantau prestasi dan kesihatan perkhidmatan mikro, serta mencipta penggera dan mekanisme pembaikan automatik.

PI Node Teaching: Apakah nod pi? Bagaimana cara memasang dan menyediakan nod pi? PI Node Teaching: Apakah nod pi? Bagaimana cara memasang dan menyediakan nod pi? Mar 05, 2025 pm 05:57 PM

Penjelasan dan Panduan Pemasangan Terperinci untuk Pinetwork Nodes Artikel ini akan memperkenalkan ekosistem pinetwork secara terperinci - nod pi, peranan utama dalam ekosistem pinetwork, dan menyediakan langkah -langkah lengkap untuk pemasangan dan konfigurasi. Selepas pelancaran Rangkaian Ujian Blockchain Pinetwork, nod PI telah menjadi bahagian penting dari banyak perintis yang aktif mengambil bahagian dalam ujian, bersiap sedia untuk pelepasan rangkaian utama yang akan datang. Jika anda tidak tahu kerja pinet, sila rujuk apa itu picoin? Berapakah harga untuk penyenaraian? Penggunaan PI, perlombongan dan analisis keselamatan. Apa itu Pinetwork? Projek Pinetwork bermula pada tahun 2019 dan memiliki syiling pi cryptocurrency eksklusifnya. Projek ini bertujuan untuk mewujudkan satu yang semua orang boleh mengambil bahagian

Cara Memasang DeepSeek Cara Memasang DeepSeek Feb 19, 2025 pm 05:48 PM

Terdapat banyak cara untuk memasang DeepSeek, termasuk: Menyusun dari Sumber (untuk pemaju berpengalaman) menggunakan pakej yang dikompilasi (untuk pengguna Windows) menggunakan bekas docker (untuk yang paling mudah, tidak perlu bimbang tentang keserasian) Dokumen rasmi dengan berhati -hati dan menyediakannya sepenuhnya untuk mengelakkan masalah yang tidak perlu.

Bagaimana untuk menggunakan PHP CI/CD untuk lelaran dengan cepat? Bagaimana untuk menggunakan PHP CI/CD untuk lelaran dengan cepat? May 08, 2024 pm 10:15 PM

Jawapan: Gunakan PHPCI/CD untuk mencapai lelaran pantas, termasuk menyediakan saluran paip CI/CD, ujian automatik dan proses penggunaan. Sediakan saluran paip CI/CD: Pilih alat CI/CD, konfigurasikan repositori kod dan tentukan saluran paip binaan. Ujian automatik: Tulis ujian unit dan penyepaduan dan gunakan rangka kerja ujian untuk memudahkan ujian. Kes praktikal: Menggunakan TravisCI: Pasang TravisCI, tentukan saluran paip, dayakan saluran paip dan lihat hasilnya. Laksanakan penyampaian berterusan: pilih alatan pengerahan, tentukan saluran paip pengerahan dan automatik penggunaan. Faedah: Meningkatkan kecekapan pembangunan, mengurangkan ralat dan memendekkan masa penghantaran.

Sebarkan aplikasi JavaEE menggunakan Docker Containers Sebarkan aplikasi JavaEE menggunakan Docker Containers Jun 05, 2024 pm 08:29 PM

Gunakan aplikasi Java EE menggunakan bekas Docker: Cipta Fail Docker untuk mentakrifkan imej, bina imej, jalankan bekas dan petakan port, dan kemudian akses aplikasi dalam penyemak imbas. Contoh aplikasi JavaEE: REST API berinteraksi dengan pangkalan data, boleh diakses pada localhost selepas penggunaan melalui Docker.

Soalan dan Jawapan mengenai Reka Bentuk Seni Bina Perkhidmatan Mikro Aplikasi PHP Enterprise Soalan dan Jawapan mengenai Reka Bentuk Seni Bina Perkhidmatan Mikro Aplikasi PHP Enterprise May 07, 2024 am 09:36 AM

Seni bina perkhidmatan mikro menggunakan rangka kerja PHP (seperti Symfony dan Laravel) untuk melaksanakan perkhidmatan mikro dan mengikut prinsip RESTful dan format data standard untuk mereka bentuk API. Perkhidmatan mikro berkomunikasi melalui baris gilir mesej, permintaan HTTP atau gRPC dan menggunakan alatan seperti Prometheus dan ELKStack untuk pemantauan dan penyelesaian masalah.

Cara memasang sambungan Docker dalam vscode Langkah-langkah untuk memasang sambungan Docker dalam vscode Cara memasang sambungan Docker dalam vscode Langkah-langkah untuk memasang sambungan Docker dalam vscode May 09, 2024 pm 03:25 PM

1. Mula-mula, selepas membuka antara muka, klik butang ikon sambungan di sebelah kiri 2. Kemudian, cari lokasi bar carian di halaman sambungan yang dibuka 3. Kemudian, masukkan perkataan Docker dengan tetikus untuk mencari pemalam sambungan 4 . Akhir sekali, pilih pemalam sasaran dan klik kanan Hanya klik butang pasang di sudut bawah

Pemantauan kontena perkhidmatan mikro PHP dan amalan pengurusan log Pemantauan kontena perkhidmatan mikro PHP dan amalan pengurusan log May 08, 2024 pm 12:06 PM

Pemantauan kontena perkhidmatan mikro PHP dan pemantauan pengurusan log: Gunakan Prometheus dan Grafana untuk memantau penggunaan sumber, bilangan permintaan dan kependaman. Pengurusan log: Gunakan ELKStack (ElasticSearch, Logstash, Kibana) untuk mengumpul, menghuraikan dan memvisualisasikan log. Gunakan ejen Filebeat untuk menghantar log ke ElasticSearch.

See all articles