Docker Membina Panduan Pemula untuk Membangun Imej Docker

Docker Membina Panduan Pemula untuk Membangun Imej Docker

Docker adalah alat yang popular untuk pembungkusan dan penggunaan aplikasi dalam persekitaran terpencil, dan bahagian utama alur kerja Docker sedang membina imej Docker. Kita boleh membina imej kita sendiri dengan bantuan imej asas dan menggunakannya untuk membuat bekas. Kami juga boleh menarik imej terus dari Hub Docker (https: // hub.Docker.com/) untuk permohonan kami. Dalam panduan pemula ini, kami akan menerangkan imej Docker dan bagaimana membinanya.

Apa itu gambar Docker?

Imej Docker adalah pakej yang ringan, berdiri sendiri, dan boleh dilaksanakan yang merangkumi semua yang diperlukan untuk menjalankan sekeping perisian, termasuk kod, runtime, perpustakaan, pembolehubah persekitaran, dan fail konfigurasi.

Imej Docker dibina di atas teknologi kontena sumber terbuka Docker, yang membolehkan pemaju membungkus dan menggunakan aplikasi dalam bekas, menjadikannya lebih mudah untuk menjalankan aplikasi secara konsisten dalam persekitaran yang berbeza.

Cara Membina Gambar Docker

Untuk membina imej Docker, anda perlu membuat fail docker, yang merupakan fail teks yang mengandungi satu set arahan untuk membina imej. Dockerfile memberitahu Docker apa yang perlu dilakukan semasa membina imej, seperti yang dimasukkan oleh fail, yang mana perpustakaan dipasang, dan yang memerintahkan untuk dijalankan.

Berikut adalah contoh Dockerfile yang mencipta imej Python yang mudah:

Dari Python: Salinan 10-Slim . /App Workdir /App Run Pip Install -r Keperluan.txt cmd ["python", "utama.py "]
12345678Dari Python: Salinan 10-Slim . /AppWorkDir /App Run Pip Install -r Keperluan.txt cmd ["python", "utama.py "]

Dalam contoh ini:

  • Dockerfile bermula dengan arahan 'dari', yang menentukan imej asas untuk digunakan sebagai titik permulaan untuk imej baru. Dalam kes ini, kami menggunakan 'Python: 3.10-Slim ' imej, yang merangkumi versi minimum Python 3.10.
  • The 'SALINAN' Arahan menyalin fail dari direktori semasa (.) ke dalam '/aplikasi' direktori dalam gambar.
  • The 'Workdir' arahan menetapkan direktori kerja ke '/aplikasi', supaya mana -mana arahan berikutnya dijalankan dari direktori itu.
  • The 'Jalankan' Arahan menjalankan arahan untuk memasang kebergantungan python yang ditentukan di 'Keperluan.txt ' fail.
  • Akhirnya, 'Cmd' Arahan Menentukan arahan untuk dijalankan apabila bekas dimulakan. Dalam kes ini, ia menjalankan 'Utama.py ' Skrip Python.

Untuk membina imej, anda boleh menggunakan arahan membina Docker dan menentukan 'Dockerfile' Dan nama untuk gambar:

Docker Build -t my-python-app .  

Ini akan membina imej dan memberikan tag itu 'my-python-app'. Anda kemudian boleh menjalankan imej menggunakan 'Docker Run' Perintah:

Docker menjalankan my-python-app  

Menguruskan gambar Docker

Sebaik sahaja anda telah membina imej Docker, terdapat beberapa tugas yang mungkin anda perlukan untuk menguruskannya. Berikut adalah beberapa tugas biasa untuk menguruskan imej Docker:

  • Imej Penyenaraian:
  • Anda boleh menggunakan 'Gambar Docker' Perintah untuk menyenaraikan semua imej di sistem anda. Output akan merangkumi repositori, tag, dan id imej untuk setiap gambar.

    Imej Docker  ID Imej Tag Repositori Dibuat Saiz My-Python-App Terkini FC6A1ED7B9FB 3 minit yang lalu 967MB Python 3.10-slim bd4e6cdb1e80 7 hari yang lalu 142MB 

  • Mengeluarkan gambar:
  • Untuk membuang gambar, anda boleh menggunakan 'Docker rmi' Perintah diikuti oleh ID imej atau repositori dan tag. Sebagai contoh, untuk mengeluarkan imej my-python-app, anda boleh menggunakan arahan berikut:

    Docker RMI my-python-app  

  • Imej penandaan:
  • Anda boleh menggunakan tag untuk memberikan nama deskriptif imej anda dan menguruskan pelbagai versi dengan mudah. Untuk menandakan gambar, anda boleh menggunakan 'tag docker' arahan diikuti oleh 'Id gambar', repositori dan nama tag, dan nilai tag. Contohnya, untuk menandakan 'my-python-app' imej dengan '1.0 '' Tag, anda boleh menggunakan arahan berikut:

    Docker tag fc6a1ed7b9fb my-python-app: 1.0  

  • Menolak gambar ke pendaftaran:
  • Pendaftaran adalah lokasi penyimpanan untuk imej Docker, dan anda boleh menggunakan pendaftaran untuk berkongsi imej anda dengan orang lain atau menggunakannya ke persekitaran pengeluaran. Untuk menolak imej ke pendaftaran, anda perlu log masuk ke pendaftaran menggunakan 'Log masuk Docker' perintah, dan kemudian gunakan 'Docker Push' perintah untuk memuat naik gambar. Contohnya, untuk menolak 'my-python-app' Imej ke pendaftaran Hub Docker, anda boleh menggunakan arahan berikut:

    Log masuk Docker  Docker menolak aplikasinya-python  

  • Menarik gambar dari pendaftaran:
  • Untuk menarik gambar dari pendaftaran, anda boleh menggunakan 'Docker tarik' arahan diikuti oleh repositori dan nama tag. Sebagai contoh, untuk menarik imej my-python-app dari pendaftaran Hub Docker, anda boleh menggunakan arahan berikut:

    Docker tarik my-python-app  

Dengan menggunakan arahan ini, anda boleh menguruskan imej docker dengan mudah dan berkongsi dengan orang lain.

Amalan terbaik untuk membina gambar docker

Terdapat beberapa amalan terbaik yang perlu diingat semasa membina imej Docker:

  • Gunakan imej asas yang minimum: Secara amnya adalah idea yang baik untuk menggunakan imej asas yang minimum, seperti alpine atau langsing, untuk mengekalkan saiz imej sekecil mungkin.
  • Pastikan Dockerfile mudah: Cuba simpan fail docker semudah mungkin, dengan setiap arahan melakukan satu perkara. Ini akan memudahkan untuk memahami dan mengekalkan.
  • Gunakan Multistage Builds: Sekiranya aplikasi anda mempunyai pelbagai langkah membina, seperti bangunan dan ujian, anda boleh menggunakan pelbagai binaan untuk membuat satu imej yang hanya merangkumi komponen yang diperlukan. Ini dapat membantu mengurangkan saiz gambar.
  • Gunakan caching: Docker mempunyai mekanisme cache terbina dalam yang menyimpan hasil pertengahan setiap arahan dalam 'Dockerfile
  • Gunakan a .Fail DocKerignore: Sama dengan a .Fail Gitignore, a .Fail DocKerignore membolehkan anda menentukan corak fail dan direktori yang harus dikecualikan semasa membina imej. Ini dapat membantu meningkatkan prestasi membina dan mengekalkan saiz imej yang lebih kecil.
  • Gunakan pembolehubah persekitaran: Daripada nilai hardcoding di dockerfile, anda boleh menggunakan pembolehubah persekitaran untuk menjadikan imej lebih fleksibel dan lebih mudah untuk diubah suai.
  • Pastikan gambar dikemas kini: Penting untuk mengekalkan imej asas dan mana -mana pakej yang dipasang sehingga kini untuk memastikan bahawa anda mempunyai patch dan ciri keselamatan terkini.
  • Uji gambar: Sebelum menggunakan imej, adalah idea yang baik untuk mengujinya untuk memastikan ia berfungsi seperti yang diharapkan. Anda boleh menggunakan Docker Compose untuk menubuhkan persekitaran pembangunan tempatan dan menjalankan imej dalam bekas.

Kesimpulan

Dalam panduan ini, kami telah merangkumi asas -asas membina imej docker dan menyediakan beberapa amalan terbaik untuk diikuti. Dengan mengikuti garis panduan ini, anda boleh membuat imej docker yang cekap dan boleh dipercayai yang boleh digunakan dengan mudah dan dikekalkan.