Permulaan pantas Docker, konsep teras dan arahan biasa
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.
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
# 卸载已有 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
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 nginx3 Lihat imej docker ls atau docker images2, namakan semula tag docker imej Contohnya: docker tag nginx:latest mynginx:latest
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 mynginxMula: docker start mynginxCipta dan mulakan: docker run -it --name=mynginx mynginx2 docker stop mynginx3. 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 mynginx5 docker export mynginx > mynginx.tar6 docker import mynginx.tar mynginx:import
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 pushGunakan pengedaran untuk membina gudang persendirian https://github.com/distribution/distributiondocker 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 - bekas Proses No. 1, menguruskan sub-bekas
dockerd, pintu masuk pelayan, bertanggungjawab untuk menerima semula permintaan - 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
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.tindanan2, kemas kini lebih stabil dan sesuai untuk versi kernel Linux dan Docker); keperluannya agak tinggi.
- 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
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!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



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.

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

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.

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.

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.

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.

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 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.
