Cara Menggunakan Dockerfile untuk Membangun Citra Docker ⋆ ALexHost SRL
Uji kemampuan Anda di semua layanan Hosting kami dan dapatkan diskon 15%!

Gunakan kode saat checkout:

Skills
04.06.2025

Cara Menggunakan Dockerfile untuk Membangun Citra Docker

Apa yang dimaksud dengan Dockerfile?

Dockerfile adalah skrip yang berisi serangkaian instruksi yang memberi tahu Docker cara membangun citra. Instruksi ini menentukan citra dasar, menyalin berkas, mengatur variabel lingkungan, dan menjalankan perintah di dalam kontainer. Saat Docker memproses Dockerfile, Docker akan menciptakan citra baru berdasarkan instruksi tersebut.

Alur kerja dasar terlihat seperti ini:

  1. Tulis berkas Docker dengan instruksi yang diperlukan.
  2. Bangun citra Docker menggunakan Dockerfile.
  3. Jalankan kontainer Docker dari citra yang dibangun.

Panduan Langkah-demi-Langkah untuk Membuat Dockerfile dan Membangun Citra

Langkah 1: Siapkan Proyek Anda

Untuk memulai, Anda memerlukan aplikasi sederhana untuk melakukan kontainerisasi. Dalam contoh ini, kita akan membuat aplikasi Node.js dasar. Jika Anda belum menginstal Node.js, Anda dapat mengikuti langkah-langkah berikut untuk membuat aplikasi Node.js sederhana.

  1. Buat direktori proyek:
mkdir my-docker-app
cd my-docker-app
  1. Buat berkas package.json untuk aplikasi Node.js Anda:
npm init -y
  1. Membuat berkas server.js:
sentuh server.js
  1. Tambahkan konten berikut ini ke file server.js:

const http = require('http');
const hostname = '0.0.0.0';
const port = 3000;
const server = http.createServer((req, res) => { res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World\n'); });
server.listen(port, hostname, () => {
console.log(Server running at http://${hostname}:${port}/); });

Langkah 2: Menulis berkas Docker

Setelah Anda memiliki aplikasi dasar, langkah selanjutnya adalah membuat berkas Docker yang akan digunakan untuk membangun citra Docker untuk aplikasi ini.

  1. Buat Dockerfile di direktori root proyek Anda:
sentuh Dockerfile
  1. Menambahkan instruksi ke Dockerfile:

Berikut ini adalah Dockerfile sederhana untuk aplikasi Node.js Anda:

FROM node:14   # Use an official Node.js runtime as a base image
WORKDIR /app # Set the working directory inside the container
COPY package*.json ./ # Copy package.json and install dependencies
RUN npm install
COPY . .  # Copy the rest of the application code
EXPOSE 3000  # Expose the port that the app runs on
CMD ["node", "server.js"] # Command to run the application

Penjelasan tentang Dockerfile:

  • FROM: Menentukan citra dasar yang akan digunakan untuk membangun citra Anda. Dalam kasus ini, citra resmi Node.js 14.
  • WORKDIR: Menetapkan direktori kerja di dalam kontainer. Semua perintah selanjutnya akan dijalankan di dalam direktori ini.
  • COPY: Menyalin berkas dari mesin host ke dalam kontainer Docker.
    • COPY package*.json ./: Ini menyalin berkas package.json dan package-lock.json .
    • COPY . .: Menyalin seluruh proyek ke dalam kontainer.
  • RUN: Menjalankan perintah di dalam kontainer, dalam hal ini, menjalankan npm install untuk menginstal dependensi Node.js.
  • EXPOSE: Menginformasikan kepada Docker bahwa kontainer mendengarkan pada porta 3000.
  • CMD: Menentukan perintah yang akan dijalankan di dalam kontainer saat kontainer dimulai (dalam hal ini, menjalankan aplikasi Node.js dengan node server.js).

Langkah 3: Membangun Citra Docker

Setelah Anda menyiapkan berkas Docker, Anda dapat membangun citra Docker menggunakan perintah docker build.

  1. Di direktori proyek Anda, jalankan perintah berikut:
docker build -t my-docker-app .

Inilah yang dilakukan oleh perintah tersebut:

  • t my-docker-app: Menandai citra dengan nama my-docker-app.
  • . menentukan direktori saat ini (tempat Dockerfile berada).

Docker akan memproses Dockerfile, langkah demi langkah, membangun citra sesuai instruksi Anda. Jika semuanya telah diatur dengan benar, Anda akan melihat pesan bahwa citra telah berhasil dibangun.

Langkah 4: Jalankan Kontainer Docker

Setelah citra dibangun, Anda dapat membuat dan menjalankan kontainer menggunakan perintah docker run.

docker run -p 3001:3000 my-docker-app
  • p 3000:3000: Memetakan port 3000 pada mesin lokal Anda ke port 3000 di dalam kontainer.
  • my-docker-app: Nama citra Docker yang Anda buat.

Anda seharusnya melihat pesan ini: Server berjalan di http://0.0.0.0:3001/.

Untuk menguji aplikasi, buka peramban web Anda atau gunakan curl untuk mengunjungi:

Anda akan melihat “Hello World” ditampilkan.

Langkah 5: Dorong Citra Docker ke Docker Hub (Opsional)

Jika Anda ingin berbagi citra dengan orang lain atau menerapkannya ke server, Anda dapat mendorongnya ke Docker Hub.

  1. Pertama, masuk ke Docker Hub:
masuk docker
  1. Kemudian tandai gambar Anda dengan nama pengguna Docker Hub Anda:
docker tag my-docker-app nama-pengguna-dockerhub-mu/aplikasi-docker-saya
  1. Dorong citra ke Docker Hub:
docker push your-dockerhub-username/my-docker-app

Kini, citra Docker Anda tersedia secara publik (atau pribadi) di Docker Hub.

Praktik Terbaik untuk Dockerfile

  • Gunakan gambar dasar yang kecil dan spesifik: Jika memungkinkan, gunakan gambar dasar yang ringan seperti alpine untuk mengurangi ukuran gambar.
  • Minimalkan jumlah lapisan: Setiap perintah di dalam sebuah Dockerfile akan membuat sebuah layer baru. Cobalah untuk meminimalkan jumlah lapisan dengan menggabungkan perintah jika memungkinkan (misalnya, gunakan && untuk menggabungkan beberapa perintah dalam satu instruksi RUN ).
  • Gunakan pembuatan multi-tahap: Ini membantu mengurangi ukuran gambar akhir dengan memisahkan lingkungan build dari lingkungan runtime.
  • Memanfaatkan cache: Docker menyimpan cache setiap lapisan citra, sehingga menggunakan kembali perintah yang sama (seperti COPY dan RUN) membantu mempercepat proses build berikutnya.
Uji kemampuan Anda di semua layanan Hosting kami dan dapatkan diskon 15%!

Gunakan kode saat checkout:

Skills