Skip to content

emka.web.id

Menu
  • Home
  • Indeks Artikel
  • Tutorial
  • Tentang Kami
Menu

Pengantar Singkat Untuk Dockerfile

Posted on July 28, 2022 by Syauqi Wiryahasana

Dalam panduan ini, kita akan melihat pengenalan singkat tentang Dockerfile dan cara menggunakan Dockerfile untuk mengotomatiskan proses pembuatan gambar buruh pelabuhan kustom.
Contents
Apa Itu Dockerfile?Memahami format DockerfileMembuat DockerfileBuild image menggunakan DockerfileApa Itu Dockerfile?

Dockerfile adalah file teks sederhana dengan instruksi untuk membangun citra buruh pelabuhan. Ini berisi semua perintah yang dapat dipanggil pengguna pada baris perintah untuk membuat image.

Kita dapat menggunakan file docker untuk membuat gambar kustom kita sendiri. Kami kemudian dapat membagikan gambar Docker khusus ini melalui Docker Hub.

Bagi mereka yang bertanya-tanya, Docker Hub adalah layanan repositori yang dihosting yang disediakan oleh Docker untuk menemukan dan berbagi gambar kontainer dengan tim Anda dan tentu saja dengan siapa pun di dunia.

Bayangkan skenario ini. Sebelumnya jika kita ingin menggunakan Nginx, maka kita perlu menginstal Nginx dengan banyak langkah yang terlibat. Berkat Dockerhub, sekarang kita dapat mengunduh dan menjalankan image container bawaan Nginx dalam beberapa menit.

Untuk menarik image Jenkins dari DockerHub, jalankan:
# docker pull Jenkins

Setelah kita menarik image docker, kita dapat menggunakannya dengan menjalankan image menggunakan perintah :
# docker run -it -d -p 8080:8080 jenkins

Sesederhana itu!

Untuk mengetahui lebih banyak tentang penggunaan Docker, lihat panduan berikut.
Memulai Docker
Ada lebih dari 100.000 gambar kontainer dari vendor perangkat lunak, proyek sumber terbuka, dan komunitas yang tersedia di Dockerhub. Anda dapat mencari dan mengunduh gambar kontainer pilihan Anda dari Dockerhub dan mulai menggunakannya segera seperti yang ditunjukkan di atas.
Memahami format file Docker

Docker dapat membuat gambar secara otomatis dengan membaca instruksi dari Dockerfile.

Dockerfile khas berisi instruksi berikut:
FROM - Ini akan mengatur gambar dasar container.
Example:
FROM ubuntu:18.04

Ini akan mengatur gambar dasar container sebagai Ubuntu. Jika tag 18.04 tidak ditentukan, itu akan mengambil tag sebagai “terbaru”.
LABEL - Ini adalah pasangan nilai kunci yang digunakan untuk menentukan informasi metadata gambar.
Example:
LABEL ENV=”DEVELOPMENT”
RUN - Digunakan untuk mengeksekusi perintah pada gambar dasar dan itu akan membuat layer baru.
Example:
RUN apt-get update RUN apt-get install tomcat
CMD - Digunakan untuk mengatur perintah yang akan dijalankan pertama kali ketika wadah dimulai.
Example:
CMD [“java” , “-jar”, ​​“app.jar”]
EXPOSE - Ini akan membuka port untuk mengakses container. Container akan mendengarkan pada port jaringan ini. Kita dapat mengakses output menggunakan port ini.
Contoh:
EXPOSE 8080
MAINTAINER - Ini akan memberikan detail penulis yang membuat gambar Docker ini.
Contoh:
MAINAINER devops@admin.in
ENV - Digunakan untuk mengatur variabel lingkungan dalam pasangan nilai kunci. Variabel ini disetel selama pembuatan gambar dan tersedia setelah wadah dibuat.
Example:
ENV DB_NAME=”MySQL” ENV DB_VERSION=”8.0”
COPY - Digunakan untuk menyalin file lokal ke container.
Example:
COPY /target/devops.jar devops.jar
ADD - Ini berfungsi sama seperti menyalin tetapi memiliki beberapa fitur lagi seperti kita dapat mengekstrak tar lokal dan menambahkan URL.
Example:
ADD jarak jauh devops.tar.xz / . ADD http://example.com/abc.git /usr/local/devops/
ENTRYPOINT - Digunakan untuk mengatur perintah utama untuk gambar. Ini bekerja sama seperti instruksi CMD. Satu-satunya perbedaan antara CMD dan ENTRYPOINT adalah instruksi tidak ditimpa di ENTRYPOINT.
Contoh:
ENTRYPOINT [“java”, “-jar”, ​​“app.jar”]
VOLUME - Ini akan membuat titik mount dengan nama yang ditentukan.
Contoh:
VOLUME / app/devops
USER - Ini akan menetapkan nama pengguna dan grup pengguna untuk digunakan saat menjalankan image.
Example:
USER dhruv USER admin
WORKDIR - Ini akan mengatur direktori kerja. Ini akan membuat direktori jika tidak ada.
Example:
WORKDIR /var/lib/

Berikut adalah contoh Dockerfile untuk referensi Anda.
FROM ubuntu:MAINTAINER terbaru Dhruv Tiwari "dhruv.tiwari444@gmail.com" RUN apt-get install -y software -properties-common python RUN add-apt-repository ppa:chris-lea/node.js RUN echo "deb http://us.archive.ubuntu.com/ubuntu/ precision universe" >> /etc/apt/sources. daftar RUN apt-get update RUN apt-get install -y nodejs RUN mkdir /var/www ADD app.js /var/www/app.js CMD ["/usr/bin/node", "/var/www/app .js"]

Izinkan saya untuk menunjukkan kepada Anda contoh sederhana untuk membuat contoh Dockerfile dan membuat gambar menggunakan itu.
Membuat Dockerfile

Buat file bernama Dockerfile, tambahkan konten dalam file. Dalam contoh berikut, kami memperbarui dan menginstal vim dan curl.
# cat dockerfile
FROM alpine RUN apk update RUN apk add vim RUN apk add curl

Sekarang kami memiliki Dockerfile di tempatnya. Mari kita lanjutkan dan membuat gambar menggunakan gambar Dockerfile.
Build menggunakan Dockerfile

Untuk membuat gambar dari Dockerfile, cukup jalankan:
# docker build -t devops .

Harap perhatikan titik (.) di akhir.

Sesuai perintah di atas , Docker akan mulai membuat image secara otomatis dengan membaca instruksi dari Dockerfile yang disimpan di direktori kerja saat ini.

Jika Dockerfile disimpan di tempat lain, Anda dapat menyebutkan jalurnya menggunakan flag -f seperti di bawah ini.
# docker build -f / path/to/a/Dockerfile .

Setelah membuat gambar, kita dapat menjalankannya menggunakan perintah:
# docker run -it devops

Inilah cara membuat gambar wadah khusus menggunakan Dockerfile.

Kami hanya membahas dasar-dasarnya. Ada banyak lagi yang dapat Anda lakukan dengan Dockerfile. Saya sarankan Anda untuk merujuk panduan referensi Dockerfile resmi untuk mempelajari lebih lanjut tentang itu.

Baca yang Terkait:
Menjelaskan Konsep Jaringan DockerMenjelaskan Volume Docker Dengan ContohCara Memperbarui Secara Otomatis Menjalankan Docker Containersctop – Alat Pemantauan Baris Perintah Untuk Linux ContainersPortainer – Cara Termudah Mengelola DockerPiCluster – A Sederhana, Aplikasi Manajemen Docker Berbasis WebDockly – Kelola Kontainer Docker Dari Terminal
Seedbacklink

Recent Posts

TENTANG EMKA.WEB>ID

EMKA.WEB.ID adalah blog seputar teknologi informasi, edukasi dan ke-NU-an yang hadir sejak tahun 2011. Kontak: kontak@emka.web.id.

©2024 emka.web.id Proudly powered by wpStatically