0Pricing
Docker & DevOps Fundamentals · Pelajaran

Membuat Image Docker Kustom

Bangun image Docker kustom pertama untuk aplikasi sederhana, lalu beri tag dan versi dengan benar.

Membuat Image Docker Kustom adalah pelajaran Docker & DevOps Fundamentals gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Docker & DevOps Fundamentals, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Docker & DevOps Fundamentals mencakup 4 pelajaran total.

Bangun Image Docker Pertama Anda

Mengapa membangun image khusus? Image khusus memungkinkan Anda mengemas aplikasi tertentu, dependensinya, dan konfigurasinya menjadi satu unit portabel. Hal ini penting untuk konsistensi dan penerapan yang mudah.

Anda menentukan cara membangun image ini menggunakan file bernama Dockerfile.

Membuat Image Docker Kustom — ilustrasi 1

Aplikasi Web Sederhana Kami

Kita akan memasukkan aplikasi web Python Flask yang sangat sederhana ke dalam container. Aplikasi ini hanya mengembalikan "Hello from Docker!" saat Anda mengunjungi alamat webnya.

Bayangkan kita memiliki file berikut dalam sebuah direktori:

  • app.py: Kode aplikasi Python
  • requirements.txt: Daftar dependensi Python
  • Dockerfile: Instruksi untuk membangun image

Kode Aplikasi Flask

Ini adalah aplikasi Python Flask dasar kita. Aplikasi ini mendengarkan pada port 5000 dan merespons dengan "Hello from Docker!".

Anda dapat menjalankannya secara lokal (setelah memasang Flask) untuk melihatnya beraksi!

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello():
    return 'Hello from Docker!'

if __name__ == '__main__':
    app.run(debug=True, host='0.0.0.0')

Menentukan Dependensi

Aplikasi kita memerlukan pustaka Flask. Kita mencantumkannya dalam requirements.txt. Berkas ini memberi tahu Docker (dan pengelola paket Python, pip) apa saja yang harus dipasang.

Dengan demikian, citra kita memiliki semua pustaka yang diperlukan agar aplikasi dapat berjalan.

Flask==2.3.2

Anatomi Dockerfile Kita

Dockerfile adalah berkas teks yang berisi instruksi untuk membangun citra. Setiap instruksi membuat sebuah lapisan. Berikut yang akan kita gunakan:

  • FROM: Menentukan citra dasar (misalnya, Python).
  • WORKDIR: Menetapkan direktori kerja di dalam wadah.
  • COPY: Menyalin berkas dari komputer lokal Anda ke dalam citra.
  • RUN: Menjalankan perintah (misalnya, memasang dependensi).
  • EXPOSE: Memberi tahu Docker tentang port yang didengarkan wadah.
  • CMD: Menentukan perintah bawaan yang dijalankan saat wadah dimulai.

Menyusun Dockerfile

Berikut adalah Dockerfile lengkap untuk aplikasi Flask kita. Letakkan berkas ini di direktori yang sama dengan app.py dan requirements.txt.

# Use an official Python runtime as a parent image
FROM python:3.9-slim-buster

# Set the working directory in the container
WORKDIR /app

# Copy the current directory contents into the container at /app
COPY requirements.txt .
COPY app.py .

# Install any needed packages specified in requirements.txt
RUN pip install --no-cache-dir -r requirements.txt

# Make port 5000 available to the world outside this container
EXPOSE 5000

# Run app.py when the container launches
CMD ["python", "app.py"]

Perintah `docker build`

Sekarang, mari kita bangun citra kita! Buka terminal di direktori tempat Dockerfile dan berkas aplikasi Anda berada.

Opsi -t memberi tag pada citra kita dengan nama (my-flask-app) dan versi (1.0). Tanda . memberi tahu Docker untuk menggunakan direktori saat ini sebagai konteks pembangunan.

docker build -t my-flask-app:1.0 .

Memverifikasi Citra Baru Anda

Setelah pembangunan selesai, Anda dapat memverifikasi bahwa citra baru Anda tersedia dengan menampilkan semua citra Docker lokal.

Cari my-flask-app dengan tag 1.0 pada keluarannya.

docker images

Menjalankan Wadah Aplikasi Anda

Saatnya melihat aplikasi Anda beraksi! Gunakan docker run untuk membuat dan memulai wadah dari citra Anda.

Opsi -p 5000:5000 memetakan port 5000 pada mesin host Anda ke port 5000 di dalam wadah. Opsi -d menjalankannya dalam mode terpisah (di latar belakang).

docker run -d -p 5000:5000 my-flask-app:1.0

Buka http://localhost:5000 di peramban Anda untuk melihat "Hello from Docker!".

Praktik Terbaik Pemberian Tag Citra

Tag sangat penting untuk mengelola berbagai versi citra Anda. Praktik yang umum adalah menggunakan pembuatan versi semantik (misalnya, 1.0.0, 2.1.5) serta tag latest.

Anda dapat menambahkan beberapa tag ke sebuah citra menggunakan docker tag:

docker tag my-flask-app:1.0 my-flask-app:latest

Dengan begitu, Anda dapat merujuk citra yang sama menggunakan nama yang berbeda, sehingga penerapannya menjadi fleksibel.

Pemeriksaan Singkat

Perhatikan Dockerfile dan perintah pembangunan berikut:

# Dockerfile content
FROM alpine:latest
WORKDIR /app
COPY . .
CMD ["echo", "Hello"]

docker build -t my-app:v1 .

Pernyataan manakah berikut ini yang TRUE tentang perintah docker build -t my-app:v1 .?

Rangkuman: Citra Kustom

Kerja bagus! Anda telah mempelajari cara:

  • Menyiapkan aplikasi sederhana untuk dijadikan wadah.
  • Menulis Dockerfile dasar menggunakan instruksi utama (FROM, WORKDIR, COPY, RUN, EXPOSE, CMD).
  • Membangun citra Docker kustom menggunakan docker build -t.
  • Memverifikasi citra Anda dengan docker images.
  • Menjalankan wadah dari citra kustom menggunakan docker run -p.
  • Memahami pentingnya pemberian tag dan pembuatan versi citra.

Berikutnya, kita akan membahas lebih dalam struktur citra Docker dengan lapisan serta teknik untuk mengoptimalkan ukuran dan waktu pembangunannya!

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Membuat Image Docker Kustom” gratis?

Ya — teks lengkap “Membuat Image Docker Kustom” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Docker & DevOps Fundamentals, upgrade ke CoddyKit PRO. Kursus Docker & DevOps Fundamentals mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Membuat Image Docker Kustom”?

Bangun image Docker kustom pertama untuk aplikasi sederhana, lalu beri tag dan versi dengan benar. Kamu berlatih Docker & DevOps Fundamentals dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Docker & DevOps Fundamentals?

Tidak diperlukan pengalaman sebelumnya. Docker & DevOps Fundamentals di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.

Berapa lama pelajaran “Membuat Image Docker Kustom” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Docker & DevOps Fundamentals ini?

Ya. Setiap pelajaran Docker & DevOps Fundamentals menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Memahami Dockerfile
  2. Membuat Image Docker Kustom
  3. Lapisan dan Optimasi Image
  4. Build Multi-Tahap dan Image yang Lebih Kecil
← Kembali ke Docker & DevOps Fundamentals