Podman adalah alat pengurusan kontena yang tidak memerlukan daemon, menyokong larian tanpa akar dan serasi dengan arahan Docker. Ia sesuai untuk pengguna Linux yang mengejar keselamatan dan kesederhanaan. 1. Pemasangan mudah, pengagihan arus perdana boleh dipasang terus melalui pengurus pakej; 2. Perintah umum seperti Podman Run, PS, Pull, Build, dan lain -lain adalah konsisten dengan Docker, tanpa kos pembelajaran; 3. Menyokong bekas akar untuk meningkatkan keselamatan dan mengelakkan masalah kebenaran; 4. Pods boleh diwujudkan untuk berkongsi rangkaian dan penyimpanan, mensimulasikan persekitaran Kubernet; 5. Fail perkhidmatan sistem boleh dijana untuk merealisasikan boot kontena dan permulaan diri. Ringkasnya, Podman adalah alternatif Docker yang ringan, selamat dan cekap, terutamanya yang sesuai untuk pembangunan tempatan dan senario CI/CD, dan bernilai mengadopsi kerja harian.
Bekas Linux telah menjadi penyelesaian untuk penyebaran aplikasi ringan dan mudah alih-dan sementara Docker terkenal, Podman muncul sebagai alternatif yang kuat dan tidak berkesudahan yang sesuai dengan aliran kerja moden. Jika anda ingin memulakan dengan bekas di Linux tanpa overhead daemon atau gandingan ketat ke Docker, Podman adalah pilihan yang kukuh.

Berikut adalah panduan praktikal untuk membantu anda mula menggunakan Podman untuk tugas -tugas kontena setiap hari.
Apa itu Podman dan mengapa menggunakannya?
Podman (pendek untuk Pengurus POD ) adalah alat pengurusan kontena yang dibangunkan oleh Red Hat yang menyediakan pengalaman CLI yang serasi dengan Docker-tetapi tanpa memerlukan daemon latar belakang. Tidak seperti Docker, yang menjalankan proses dockerd
pusat, Podman menjalankan bekas secara langsung sebagai pengguna anda, meningkatkan keselamatan dan memudahkan integrasi sistem.

Kelebihan utama:
- Tiada daemon yang diperlukan : Mengurangkan permukaan serangan dan mengelakkan isu kebenaran.
- Bekas tanpa akar : Jalankan bekas sebagai pengguna biasa, meningkatkan keselamatan.
- Penggantian Docker Drop-In : Kebanyakan arahan
docker
bekerja denganpodman
(contohnya,podman run
,podman build
). - Sokongan POD : Seperti Kubernet, anda boleh mengumpulkan bekas ke dalam pod untuk orkestra yang lebih baik.
Jika anda berada di Linux Distro moden (Fedora, Rhel, Ubuntu 20.04, dan lain -lain), Podman mungkin sudah tersedia atau mudah dipasang.

# Pada fedora/rhel sudo dnf memasang podman # Pada Ubuntu/Debian sudo apt pemasangan podman
Perintah Podman Asas (pengguna Docker akan merasa di rumah)
Podman meniru CLI Docker, jadi jika anda telah menggunakan Docker sebelum ini, anda akan mengenali kebanyakan arahan.
1. Jalankan bekas
Podman Run Hello-World
Ini memuat turun dan menjalankan imej hello-world
. Tiada sudo
diperlukan - ia hanya berfungsi.
2. Senarai bekas
Podman PS
Seperti Docker, ini menunjukkan bekas aktif. Tambah -a
untuk memasukkan yang berhenti.
3. Tarik gambar
Podman tarik Ubuntu: 22.04
Mengambil imej dari pendaftaran (lalai ke Hub Docker).
4. Mulakan sesi interaktif
Podman Run -It Ubuntu: 22.04 /bin /bash
Melancarkan bekas Ubuntu dengan shell interaktif.
5. Jalankan dalam mod berkembar
podman run -d -p 8080: 80 nginx
Memulakan Nginx di latar belakang dan peta port 8080 pada tuan rumah.
Anda boleh mengesahkan ia berjalan:
Podman PS
Menguruskan imej dan bekas
Podman memberi anda kawalan penuh ke atas kitaran hayat kontena anda.
Senaraikan dan keluarkan gambar
Imej podman Podman RMI <Image-ID>
Berhenti dan keluarkan bekas
Podman Stop <Container-Id> podman rm <container-id>
Anda boleh berantai arahan:
podman rm $ (podman ps -aq) # keluarkan semua bekas berhenti
Simpan dan kongsi bekas
Ingin mengeksport bekas sebagai gambar?
Podman Commit <Container-Id> My-Custom-App Podman Save My-Custom-App | gzip> my-app.tar.gz
Kemudian, muatkan mesin lain:
Gunzip -c my -app.tar.gz | Beban podman
Bina gambar kontena dengan podman
Podman menyokong imej bangunan dari dockerfiles menggunakan podman build
.
Contoh:
# Dockerfile Dari Alpine Jalankan APK Tambah-No-Cache Curl Cmd ["curl", "https://httpbin.org/json"]
Bangun:
Podman Build -t my-curl-app.
Jalankannya:
Podman menjalankan aplikasinya
? Petua: Gunakan
--format docker
jika anda mahukan pemformatan imej yang serasi dengan Docker:Podman Build -Formats Docker -t MyApp.
Bekas dan keselamatan yang tidak berakar
Salah satu kekuatan terbesar Podman adalah operasi tanpa akar . Secara lalai, kontena dijalankan di bawah akaun pengguna anda, bukan sebagai akar.
Ini bermaksud:
- Tidak perlu menambah pengguna ke kumpulan
docker
. - Pengasingan yang lebih baik dan mengurangkan risiko peningkatan keistimewaan.
- Bekerja dengan baik dalam persekitaran terhad (contohnya, pelayan bersama, saluran paip CI).
Di bawah tudung, Podman menggunakan ruang nama pengguna dan slirp4netns
untuk rangkaian ketika berjalan tanpa akar. Untuk kebanyakan kes penggunaan, ini "hanya berfungsi" - tetapi jika anda memukul isu rangkaian, periksa bahawa slirp4netns
dipasang.
Bekerja dengan Pods (seperti mini kubernet)
Podman menyokong Pods , yang membolehkan anda mengumpulkan bekas yang berkongsi rangkaian dan penyimpanan yang sama - sama seperti di Kubernet.
Buat pod:
Podman Pod Buat -Nama MyWeb -P 8080: 80
Jalankan bekas di dalamnya:
podman run -d --pod myweb nginx
Tambahkan bekas lain (misalnya, sidecar pembalakan):
podman run -d --pod myweb alpine watch 'Date >> /shared/log.txt'
Sekarang kedua -dua bekas berkongsi ruang nama rangkaian yang sama - mereka boleh bercakap melalui localhost
.
Bersihkan:
podman pod rm myweb -f
Ini bagus untuk menguji aplikasi multi-kontainer secara tempatan tanpa Docker Compose atau Kubernetes.
Mengintegrasikan dengan SystemD (Bonus: Bekas Auto-permulaan)
Podman boleh menjana fail unit SystemD untuk menguruskan bekas sebagai perkhidmatan.
Contoh: Auto-memulakan bekas nginx di boot.
Jalankan bekas:
podman run -d -name nginx -server -p 80:80 nginx
Menjana perkhidmatan sistemD:
podman menjana sistemd-nama nginx-server--Files-baru
Ini mewujudkan fail
.service
dalam/tmp
atau direktori semasa.Gerakkannya ke sistem:
mv container-nginx-server.service ~/.config/systemd/user/
Dayakan dan Mula:
Systemctl-ENable Enable Container-Nginx-Server.Service Systemctl-Pengguna Mula Container-Nginx-Server.Service
Sekarang bekas anda bermula secara automatik apabila anda log masuk (atau boot, dengan berlanjutan diaktifkan).
Bottom line
Podman adalah alat yang matang, selamat, dan praktikal untuk menguruskan bekas di Linux. Sama ada anda seorang pemaju, sysadmin, atau jurutera DevOps, ia patut dicuba - terutamanya jika anda menghargai kesederhanaan, keselamatan, dan keserasian.
Anda boleh menggunakannya sebagai pengganti Docker langsung tanpa lengkung pembelajaran, mendapat manfaat daripada bekas tanpa akar , dan juga mensimulasikan pod gaya Kubernet untuk pembangunan tempatan.
Berikan putaran pada masa akan datang untuk Docker. Anda mungkin tidak melihat ke belakang.
Pada dasarnya itu semua - tidak ada sihir, hanya lalai yang lebih baik.
Atas ialah kandungan terperinci Pengenalan praktikal kepada bekas Linux dengan Podman. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

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

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

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

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

LXD digambarkan sebagai bekas generasi akan datang dan pengurus mesin maya yang menawarkan sistem Linux yang mendalam yang berjalan di dalam bekas atau sebagai mesin maya. Ia memberikan imej untuk bilangan pengagihan Linux yang sangat besar dengan sokongan

Clear Linux OS adalah sistem operasi yang ideal untuk orang - pentadbir sistem AHEM - yang ingin mempunyai pengedaran Linux yang minimum, selamat, dan boleh dipercayai. Ia dioptimumkan untuk seni bina Intel, yang bermaksud bahawa menjalankan OS Linux yang jelas pada SYS AMD

Langkah-langkah utama untuk mewujudkan sijil SSL yang ditandatangani sendiri adalah seperti berikut: 1. Menjana kunci persendirian, gunakan perintah OpenSslGenrsa-Outselfsigned.Key2048 untuk menghasilkan fail kunci peribadi RSA 2048-bit, parameter pilihan -AES256 untuk mencapai perlindungan kata laluan; 2. Buat Permintaan Sijil (CSR), Jalankan OpenSsslreq-New-KeyselfSigned.Key-OutLelfsigned.csr dan isikan maklumat yang relevan, terutama bidang "CommonName"; 3. Menjana sijil dengan ditandatangani sendiri, dan gunakan opensslx509-req-days365-inselfsigned.csr-signk

Decompress Fail .zip pada Windows, anda boleh klik kanan untuk memilih "Extract All", manakala fail .tar.gz perlu menggunakan alat seperti 7-Zip atau Winrar; Pada macOS dan Linux, fail .zip boleh diklik dua kali atau unzip diperintahkan, dan fail .tar.gz boleh dikompresi oleh arahan tar atau klik dua kali secara langsung. Langkah-langkah khusus ialah: 1. Windows Processing.zip Fail: Klik kanan → "Ekstrak Semua"; 2. Windows Processing.tar.gz Fail: Pasang alat pihak ketiga → klik kanan ke dekompres; 3. MacOS/Linux Processing.zip Fail: Klik dua kali atau jalankan UnzipFileName.zip; 4. MacOS/Linux Processing.tar

Penyemak imbas Firefox adalah pelayar lalai untuk pengagihan Linux yang paling moden seperti Ubuntu, Mint, dan Fedora. Pada mulanya, prestasinya mungkin mengagumkan, bagaimanapun, dengan peredaran masa, anda mungkin dapati bahawa penyemak imbas anda tidak begitu pantas dan resp

Apabila menghadapi masalah DNS, mula -mula semak fail /etc/resolv.conf untuk melihat sama ada nameserver yang betul dikonfigurasi; Kedua, anda boleh menambah DNS awam secara manual seperti 8.8.8.8 untuk ujian; Kemudian gunakan arahan NSLOOKUP dan Dig untuk mengesahkan sama ada resolusi DNS adalah normal. Sekiranya alat ini tidak dipasang, anda boleh memasang pakej DNSutils atau Bind-UTILS terlebih dahulu; Kemudian periksa status perkhidmatan yang diselesaikan SystemD dan fail konfigurasi /etc/systemd/resolved.conf, dan tetapkan DNS dan fallbackDNS seperti yang diperlukan dan mulakan semula perkhidmatan; Akhirnya periksa status antara muka rangkaian dan peraturan firewall, sahkan bahawa port 53 tidak

Jika anda mendapati bahawa pelayan berjalan perlahan -lahan atau penggunaan memori terlalu tinggi, anda harus memeriksa sebab sebelum beroperasi. Pertama, anda perlu menyemak penggunaan sumber sistem, menggunakan atas, HTOP, FREE-H, IOSTAT, SS-ANTP dan arahan lain untuk memeriksa CPU, Memory, Disk I/O dan sambungan rangkaian; Kedua, menganalisis masalah proses tertentu, dan menjejaki tingkah laku proses penghuni tinggi melalui alat seperti PS, Jstack, Strace; Kemudian semak log dan pemantauan data, lihat rekod OOM, permintaan pengecualian, pertanyaan perlahan dan petunjuk lain; Akhirnya, pemprosesan yang disasarkan dijalankan berdasarkan sebab -sebab biasa seperti kebocoran memori, keletihan kolam sambungan, ribut kegagalan cache, dan konflik tugas masa, mengoptimumkan logik kod, menubuhkan mekanisme percubaan masa, menambah fius had semasa, dan sumber pengukuran tekanan dan penilaian secara teratur.

Sebagai pentadbir sistem, anda mungkin mendapati diri anda (hari ini atau pada masa akan datang) bekerja di persekitaran di mana Windows dan Linux wujud bersama. Bukan rahsia lagi bahawa beberapa syarikat besar lebih suka (atau harus) menjalankan beberapa perkhidmatan pengeluaran mereka di Windows Boxes
