Buruh pelabuhan

Bagaimana Dockerfile Bekerja?

Bagaimana Dockerfile Bekerja?
Anda hanya dapat menggunakan satu wadah dengan bantuan gambar buruh pelabuhan. Namun, jika Anda perlu menggunakan beberapa wadah (masing-masing untuk tugas yang berbeda) dari gambar yang sama, lalu apa yang terjadi? Anda dapat menyelesaikan ini dengan bantuan dockerfile.

Dockerfile adalah file teks sederhana yang berisi semua perintah yang dapat dipanggil pengguna pada baris perintah untuk merakit atau membuat gambar. Dengan bantuan build docker, Anda dapat dengan mudah mengotomatiskan build yang menjalankan beberapa perintah yang ditentukan dalam dockerfile secara berurutan.

Misalnya, Anda ingin mengunduh gambar buruh pelabuhan dari hub buruh pelabuhan untuk kebutuhan pengembangan spesifik Anda. Kemudian, Anda ingin memperbarui gambar, menginstal beberapa paket untuk proses pengembangan Anda. Dalam hal ini, Anda dapat membuat file docker, menyertakan semua parameter untuk kebutuhan spesifik Anda, dan membuat gambar kustom Anda. Setelah membuat dockerfile, Anda dapat menggunakannya berulang kali untuk membangun image yang sama tanpa menginstal semua paket yang diperlukan secara manual untuk proses pengembangan Anda.

Dockerfile Dasar

Sebelum bekerja dengan dockerfile jika penting untuk mengetahui cara membuat dockerfile. Dockerfile menyertakan kata kunci spesifik yang dapat digunakan untuk membuat gambar tertentu. Penjelasan singkat tentang semua kata kunci yang digunakan dalam dockerfile tercantum di bawah ini:

Membuat Dockerfile

Di bagian ini, kita akan membuat file docker untuk membangun image server LAMP dari image dasar Ubuntu.

Pertama, Anda perlu membuat direktori untuk menyimpan file docker. Anda dapat membuatnya dengan perintah berikut:

mkdir LAMPU

Selanjutnya, buat direktori bernama Dockerfile di dalam direktori:

nano LAMP/Dockerfile

Tambahkan baris berikut:

DARI ubuntu: terbaru
PENGELOLA Hitesh Jethva
ENV DEBIAN_FRONTEND=noninteraktif
JALANKAN apt-get update -y && apt-get install Apache2 mariadb-server
libapache2-mod-php php php-cli php-common php-mysql php-json php-curl -y
CMD ["apachectl","-D",,"FOREGROUND"]
Paparan 8080

Simpan dan tutup file setelah Anda selesai.

Membangun Gambar dengan Dockerfile

Setelah membuat Dockerfile, Anda dapat dengan mudah membuat image LAMP kustom dengan bantuan Dockerfile.

Pertama, ubah direktori ke LAMP dan jalankan perintah berikut untuk membuat gambar dari file itu:

cd LAMPU
docker build -t "lampu:Dockerfile".

Perintah di atas akan mulai mengunduh gambar terbaru Ubuntu dari Docker Hub dan menginstal paket yang diperlukan yang ditentukan dalam Dockerfile Do. Setelah gambar berhasil dibuat, Anda akan melihat output berikut:

Mengirim konteks build ke daemon Docker 2.048kB
Langkah 1/6 : DARI ubuntu: terbaru
terbaru: Menarik dari perpustakaan/ubuntu
54ee1f796a1e: Tarik selesai
f7bfea53ad12: Tarik selesai
46d371e02073: Tarik selesai
b66c17bbf772: Tarik selesai
Intisari: sha256:31dfb10d52ce76c5ca0aa19d10b3e6424b830729e32a89a7c6eee2cda2be67a5
Status: Mengunduh gambar yang lebih baru untuk ubuntu: terbaru
---> 4e2eef94cd6b
Langkah 2/6 : PEMELIHARA Hitesh Jethva
---> Berjalan di 047977af2c2a
Menghapus wadah perantara 047977af2c2a
---> 1331df625c4c
Langkah 3/6 : ENV DEBIAN_FRONTEND=noninteractive
---> Berjalan di 3597152c7a1b
Melepaskan wadah perantara 3597152c7a1b
---> 86c82c95e75d
Langkah 4/6 : JALANKAN apt-get update -y && apt-get install apache2 mariadb-server
libapache2-mod-php php php-cli php-common php-mysql php-json php-curl -y
Menghapus wadah perantara 322532299fd9
---> f6897a9554f7
Langkah 5/6 : CMD ["apachectl","-D",,"FOREGROUND"]
---> Berjalan di 669635bc8bcb
Melepaskan wadah perantara 669635bc8bcb
---> e8400eb2e677
Langkah 6/6 : MENGUNGKAPKAN 8080
---> Berjalan di 937ae2b2d305
Menghapus wadah perantara 937ae2b2d305
---> 2123a857361d
Berhasil membangun 2123a857361d
Berhasil menandai lampu:Dockerfile

Anda sekarang dapat membuat daftar gambar yang baru Anda buat dengan menjalankan perintah berikut:

gambar buruh pelabuhan

Anda akan melihat output berikut:

UKURAN GAMBAR ID TAG REPOSITORY DIBUAT
lampu Dockerfile 2123a857361d 44 detik yang lalu 520MB
ubuntu 4e2eef94cd6b terbaru 8 hari yang lalu 73.9MB

Sekarang, Anda memiliki gambar server LAMP khusus di tangan Anda. Anda juga dapat melihat riwayat setiap perintah dengan perintah berikut:

lampu riwayat buruh pelabuhan: Dockerfile

Anda akan melihat output berikut:

GAMBAR DIBUAT OLEH UKURAN KOMENTAR
2123a857361d 16 menit yang lalu /bin/sh -c #(nop) EXPOSE 8080 0B
e8400eb2e677 16 menit yang lalu /bin/sh -c #(nop) CMD ["apachectl" "-D" "FO… 0B
f6897a9554f7 16 menit yang lalu /bin/sh -c apt-get update -y && apt-get inst… 446MB
86c82c95e75d 17 menit yang lalu /bin/sh -c #(nop) ENV DEBIAN_FRONTEND=nonin… 0B
1331df625c4c 17 menit yang lalu /bin/sh -c #(nop) MAINER Hitesh Jethva 0B
4e2eef94cd6b 8 hari yang lalu /bin/sh -c #(nop) CMD ["/bin/bash"] 0B

Membuat Wadah dari Gambar LAMP

Sekarang, Anda dapat menjalankan wadah dari gambar Anda menggunakan perintah berikut:

docker run -dit lamp:Dockerfile

Setelah wadah dimulai, Anda akan melihat output berikut:

0d2beb7dba01bb763768b116f734ae68286cee00d2ae923b2b7241c39ad54208

Anda dapat memverifikasi container yang sedang berjalan menggunakan perintah berikut:

buruh pelabuhan

Anda harus mendapatkan output berikut:

CONTAINER ID IMAGE COMMAND DIBUAT NAMA PORT STATUS
c14794784eb2 lamp:Dockerfile "apachectl -D FOREGR… " 2 menit yang lalu Naik 2 menit 0.0.0.0:8080->8080/tcp quirky_ramanujan

Kesimpulan

Dalam panduan ini, Anda mempelajari apa itu Dockerfile dan cara membuat image buruh pelabuhan dengan Dockerfile. Ini sangat berguna untuk membuat gambar khusus Anda alih-alih melakukan perubahan pada gambar yang ditarik.

Port Sumber Terbuka dari Mesin Game Komersial
Rekreasi mesin game gratis, open source, dan lintas platform dapat digunakan untuk bermain lama serta beberapa judul game yang cukup baru. Artikel ini...
Game Baris Perintah Terbaik untuk Linux
Baris perintah bukan hanya sekutu terbesar Anda saat menggunakan Linux-ini juga dapat menjadi sumber hiburan karena Anda dapat menggunakannya untuk me...
Aplikasi Pemetaan Gamepad Terbaik untuk Linux
Jika Anda suka bermain game di Linux dengan gamepad alih-alih sistem input keyboard dan mouse biasa, ada beberapa aplikasi yang berguna untuk Anda. Ba...