cari
RumahOperasi dan penyelenggaraanDockerRingkaskan beberapa kaedah untuk melangsingkan imej buruh pelabuhan

Docker telah menjadi sinonim dengan cepat dengan penyelesaian kontena aplikasi Walau bagaimanapun, saiz imej Docker sering menjadi salah satu dilema yang mudah dihadapi apabila menggunakan Docker. Jelas sekali bahawa walaupun banyak imej Docker mengandungi banyak komponen berguna, ia sering juga mengandungi banyak elemen yang tidak perlu yang mengambil banyak ruang cakera keras. Ini boleh menjadi masalah, terutamanya apabila anda perlu menggunakan sejumlah besar imej Docker secara serentak. Bagaimana untuk meminimumkan saiz imej Docker ini? Artikel ini akan memperkenalkan beberapa kaedah yang boleh membantu anda melangsingkan imej Docker anda.

  1. Pilih imej yang lebih kecil sebagai imej asas.

Apabila anda membina imej Docker, imej asas adalah sangat penting. Ia mengandungi komponen utama imej Docker, jadi memilih imej asas yang betul boleh mengurangkan saiz imej Docker anda dengan ketara. Untuk mengurangkan imej Docker anda, anda harus cuba memilih imej asas yang lebih kecil.

Sebagai contoh, jika anda menulis aplikasi Python, lebih baik menggunakan Alpine Linux daripada Ubuntu kerana Alpine Linux hanya mengandungi pakej dan perpustakaan yang diperlukan, jadi ia jauh lebih kecil daripada Ubuntu.

  1. Gabungkan berbilang arahan RUN menjadi satu arahan.

Setiap arahan RUN dalam Dockerfile mencipta lapisan imej baharu dalam bekas. Ini bermakna setiap arahan RUN yang anda gunakan meningkatkan saiz imej. Oleh itu, adalah sangat penting untuk menggabungkan berbilang arahan ke dalam satu arahan RUN apabila boleh.

Berikut ialah contoh:

# 不推荐的写法:
RUN apt-get update && apt-get install -y package1 package2 \
    && apt-get clean && rm -rf /var/lib/apt/lists/*

# 推荐的写法:
RUN apt-get update \
    && apt-get install -y package1 package2 \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/*
  1. Padam fail yang tidak berguna.

Apabila membina imej Docker, banyak fail yang tidak diperlukan mungkin disertakan. Ini mungkin termasuk cache pakej atau fail lain yang dijana secara perantaraan. Fail ini mengambil banyak ruang dalam imej, jadi mengalih keluarnya boleh mengurangkan saiz imej dengan ketara.

Berikut ialah beberapa fail yang mungkin menggunakan ruang:

  • /var/cache/apt/archives
  • /usr/share/doc
  • /usr/share/man
  • /usr/share/info
  • /usr/share/locale
  • /usr/share/gtk-doc

Anda boleh mengalih keluarnya menggunakan:

RUN apt-get update \
    && apt-get install -y package1 package2 \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/* \
    && rm -rf /var/cache/apt/archives/* \
    && rm -rf /usr/share/doc/* \
    && rm -rf /usr/share/man/* \
    && rm -rf /usr/share/info/* \
    && rm -rf /usr/share/locale/* \
    && rm -rf /usr/share/gtk-doc/*
  1. Gunakan alternatif yang lebih kecil.

Kadangkala, anda mungkin menggunakan perpustakaan atau alat, tetapi anda sebenarnya tidak memerlukan semua cirinya. Dalam kes ini, menggunakan alternatif yang ringan ialah cara yang baik untuk mengurangkan saiz imej.

Sebagai contoh, jika anda perlu menjalankan aplikasi Java dalam bekas, Oracle JDK mungkin lebih besar sedikit daripada OpenJDK. Dalam kes ini, mungkin lebih baik menggunakan OpenJDK kerana ia sedikit lebih kecil daripada Oracle JDK.

  1. Mampat/Nyahmampat.

Apabila membungkus aplikasi ke dalam imej Docker, mampatkan fail aplikasi supaya mereka menggunakan lebih sedikit ruang dalam imej. Apabila bekas Docker sedang berjalan, gunakan perintah "docker run" dan fail ini akan dinyahmampat secara automatik di dalam bekas.

Berikut ialah contoh:

# 将文件压缩并将其移动到容器中。
tar -czvf myapp.tar.gz /path/to/myapp
mv myapp.tar.gz /docker/myapp/

# 在Dockerfile中使用ADD指令将文件解压并复制到容器中。
ADD myapp.tar.gz /app/

Ringkasnya, dengan memilih imej asas yang lebih kecil, menggabungkan berbilang arahan RUN menjadi satu arahan, memadamkan fail yang tidak berguna dan menggunakan lebih banyak penggantian kecil, sebagai serta memampatkan/menyahmampat imej, boleh mengurangkan saiz imej Docker dengan ketara. Melalui kaedah ini, anda boleh memastikan bahawa imej Docker anda hanya mengandungi fail dan komponen yang diperlukan, dengan itu mengurangkan saiz dan kerumitan penggunaan dan penskalaan kontena.

Atas ialah kandungan terperinci Ringkaskan beberapa kaedah untuk melangsingkan imej buruh pelabuhan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
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
Linux dan Docker: Docker pada pengagihan Linux yang berbezaLinux dan Docker: Docker pada pengagihan Linux yang berbezaApr 19, 2025 am 12:10 AM

Kaedah memasang dan menggunakan Docker di Ubuntu, Centos, dan Debian adalah berbeza. 1) Ubuntu: Gunakan Pengurus Pakej APT, perintah itu adalah sudoapt-getupdate && sudoapt-getinstalldocker.io. 2) Centos: Gunakan Pengurus Pakej Yum dan anda perlu menambah repositori Docker. Perintah itu adalah Sudoyumininstall-yyum-utils && sudoyum-config-manager --add-repohttps: //download.docker.com/lin

Menguasai Docker: Panduan untuk Pengguna LinuxMenguasai Docker: Panduan untuk Pengguna LinuxApr 18, 2025 am 12:08 AM

Menggunakan Docker di Linux dapat meningkatkan kecekapan pembangunan dan memudahkan penggunaan aplikasi. 1) Tarik Ubuntu Imej: dockerpullubuntu. 2) Jalankan Ubuntu Container: Dockerrun-itubuntu/bin/bash. 3) Buat dockerfile yang mengandungi nginx: fromubuntu; runapt-getupdate && apt-getinstall-ynginx; dedoman80. 4) Bina imej: dockerbuild-tmy-nginx. 5) Jalankan bekas: Dockerrun-D-P8080: 80

Docker on Linux: Aplikasi dan Kes GunakanDocker on Linux: Aplikasi dan Kes GunakanApr 17, 2025 am 12:10 AM

Docker memudahkan penggunaan aplikasi dan pengurusan di Linux. 1) Docker adalah platform kontena yang membungkus aplikasi dan kebergantungan mereka ke dalam bekas ringan dan mudah alih. 2) Pada Linux, Docker menggunakan cgroup dan ruang nama untuk melaksanakan pengasingan kontena dan pengurusan sumber. 3) Penggunaan asas termasuk menarik imej dan bekas yang berjalan. Penggunaan lanjutan seperti DockerCompose boleh menentukan aplikasi multi-kontainer. 4) Debug biasa digunakan dockerlogs dan arahan dockerexec. 5) Pengoptimuman prestasi dapat mengurangkan saiz imej melalui pembinaan pelbagai peringkat, dan menjaga mudah dockerfile adalah amalan terbaik.

Docker: Aplikasi Containerizing untuk Mudah Alih dan SkalaDocker: Aplikasi Containerizing untuk Mudah Alih dan SkalaApr 16, 2025 am 12:09 AM

Docker adalah alat berasaskan teknologi kontena Linux yang digunakan untuk membungkus, mengedarkan dan menjalankan aplikasi untuk meningkatkan mudah alih aplikasi dan skalabiliti. 1) Perintah DockerBuild dan Dockerrun boleh digunakan untuk membina dan menjalankan bekas Docker. 2) DockerCompose digunakan untuk menentukan dan menjalankan aplikasi Docker Multi-Container untuk memudahkan pengurusan microservice. 3) Menggunakan pembinaan pelbagai peringkat dapat mengoptimumkan saiz imej dan meningkatkan kelajuan permulaan aplikasi. 4) Melihat log kontena adalah cara yang berkesan untuk masalah kontena debug.

Cara Memulakan Bekas oleh DockerCara Memulakan Bekas oleh DockerApr 15, 2025 pm 12:27 PM

Docker Container Startup Langkah: Tarik Imej Bekas: Run "Docker Pull [Mirror Name]". Buat bekas: Gunakan "Docker Buat [Pilihan] [Nama Mirror] [Perintah dan Parameter]". Mulakan bekas: Jalankan "Docker Start [Nama Container atau ID]". Semak Status Kontena: Sahkan bahawa bekas sedang berjalan dengan "Docker PS".

Cara Melihat Log dari DockerCara Melihat Log dari DockerApr 15, 2025 pm 12:24 PM

Kaedah untuk melihat log Docker termasuk: Menggunakan arahan Log Docker, contohnya: Log Docker Container_Name Gunakan arahan docker exec untuk menjalankan /bin /sh dan lihat fail log, contohnya: docker exec -it container_name /bin /sh; Cat /var/log/container_name.log Gunakan arahan log docker-compose compose, contohnya: docker-compose -f docker-com

Cara memeriksa nama bekas DockerCara memeriksa nama bekas DockerApr 15, 2025 pm 12:21 PM

Anda boleh menanyakan nama kontena Docker dengan mengikuti langkah -langkah: Senaraikan semua bekas (Docker PS). Tapis senarai kontena (menggunakan arahan grep). Mendapat nama kontena (terletak di lajur "Nama").

Cara membuat bekas untuk DockerCara membuat bekas untuk DockerApr 15, 2025 pm 12:18 PM

Buat bekas di Docker: 1. Tarik Imej: Docker Pull [Nama Cermin] 2. Buat bekas: Docker Run [Options] [Mirror Name] [Command] 3. Mulailah bekas: Docker Start [Nama Container]

See all articles

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.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SecLists

SecLists

SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Persekitaran pembangunan bersepadu PHP yang berkuasa