Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Cara Membuat Image Docker untuk Next.JS

Posted on May 12, 2024

Docker adalah platform sumber terbuka yang memanfaatkan teknologi kontainerisasi untuk mempermudah proses pembuatan, penyebaran, dan pengoperasian aplikasi dengan menggunakan kontainer. Kontainer memungkinkan pengembang untuk mengemas semua komponen yang dibutuhkan oleh sebuah aplikasi, seperti pustaka dan dependensi lainnya, menjadi satu paket yang dapat dijalankan secara konsisten di berbagai lingkungan.

Kontainer Docker: Merupakan paket yang ringan, mandiri, dan dapat dieksekusi yang mencakup segala hal yang diperlukan untuk menjalankan sebuah perangkat lunak, termasuk kode, runtime, pustaka, variabel lingkungan, dan file konfigurasi.

Image Docker: Merupakan blueprint untuk membuat kontainer Docker. Image adalah file yang tidak dapat diubah yang berisi instruksi untuk membuat versi aplikasi yang lengkap dan dapat dieksekusi.

Langkah-langkah Membuat Image Next.js dengan Docker:

  1. Buat Dockerfile: Di direktori utama proyek Next.js Anda, buat file bernama Dockerfile dengan konten berikut:
# Gunakan gambar Alpine Node.js 18 yang ringan
FROM node:18-alpine

# Atur variabel lingkungan dengan nilai default untuk produksi
ARG NODE_ENV=production
ENV NODE_ENV=${NODE_ENV}

# Tentukan direktori kerja
WORKDIR /app

# Salin dan instal dependensi
COPY package*.json ./
RUN if [ "$NODE_ENV" = "development" ]; \
        then npm install; \
        else npm install --only=production; \
    fi

# Salin kode aplikasi
COPY . .

# Bangun aplikasi dalam mode produksi
RUN if [ "$NODE_ENV" = "production" ]; \
        then npm run build; \
    fi

# Terapkan port 3000
EXPOSE 3000

# Tentukan perintah untuk memulai aplikasi
CMD if [ "$NODE_ENV" = "development" ]; \
        then npm run dev; \
        else npm start; \
    fi
  1. Membangun dan Menjalankan Kontainer Docker:

Untuk membangun dan menjalankan kontainer Docker, gunakan perintah berikut di terminal:

Lingkungan Pengembangan:

docker build --build-arg NODE_ENV=development -t my-nextjs-app-dev .
docker run -p 3000:3000 -v $(pwd):/app my-nextjs-app-dev

Lingkungan Implementasi:

docker build -t my-nextjs-app-prod .
docker run -p 3000:3000 my-nextjs-app-prod
  1. Menghentikan Kontainer Docker:
docker stop <nama-kontainer>

Cara Mengunggah Image Docker ke Docker Hub:

  1. Login ke Docker Hub:
docker login
  1. Tag Image Docker:
docker tag my-nextjs-app yourusername/my-nextjs-app:latest
  1. Unggah Image ke Docker Hub:
docker push yourusername/my-nextjs-app:latest

Dengan demikian, Anda sekarang dapat melakukan implementasi aplikasi Next.js Anda menggunakan kontainer Docker. Ini adalah cara yang efektif untuk memastikan konsistensi di berbagai lingkungan dan menyederhanakan proses implementasi aplikasi.

Terbaru

  • Beli HP Bekas Flagship Oppo? Ini 3 Rekomendasi Terbaik yang Masih Gahar di 2026
  • Cuma 1 Jutaan! Ini 4 Rekomendasi HP POCO yang Performa Tetap Gila di 2026
  • Inilah Rekomendasi Laptop 5-6 Jutaan Paling Worth It di Pertengahan 2026, Spek Mewah Harga Ramah!
  • Inilah Deretan Smartphone Snapdragon 8s Gen 4 yang Bikin Kompetisi HP Menengah Atas Makin Panas!
  • Mengenal Otak di Balik AI: Apa Itu LLM dan Manfaatnya dalam Keseharian Kita Menurut Sebastian Raschka
  • Inilah Rahasia Spasi FF Salin Biar Nickname Kalian Makin Keren dan Unik Tanpa Aplikasi Tambahan
  • Rekomendasi HP Kamera Bagus 2-6 Jutaan Bulan Juli 2026
  • Cuma 2 Jutaan! Ini 6 Rekomendasi HP Paling Worth It Buat Multitasking dan Gaming Ringan
  • Rumor Galaxy Z Flip8 Jadi Seri Terakhir: Mengapa Samsung Mungkin Berhenti Bikin HP Lipat Clamshell?
  • Inilah Cara Registrasi Kartu SIM Pakai Verifikasi Biometrik Mulai 1 Juli 2026, Gak Bisa Lagi Pake Nomor Bodong!
  • Jangan Asal Lap! Inilah Cara Membersihkan Layar TV LED yang Benar Agar Tidak Rusak
  • Realme Narzo 100x 5G Segera Rilis: Baterai 8.000mAh, Layar 144Hz, dan Sertifikasi Militer
  • Waspada Penipuan Akun Mobile Legends: Kenali Pentingnya Marketplace Resmi dan Status PSE
  • Review DJI Osmo Pocket 4P: Kamera Saku Lensa Ganda yang Bikin Kamera Pro Kelihatan Ribet!
  • Samsung Bisa “AirDrop” ke iPhone? Cek Cara Pakai Fitur Quick Share Terbaru Ini!
  • Vivo X Fold 6 Bakal Masuk Indonesia? Speknya Gila, Baterai 7.000 mAh & Kamera 200 MP!
  • Bocoran iPhone Air 2: Akhirnya Apple Nggak Cuma Jual Tipis, Tapi Juga Baterai Awet dan Kamera Oke!
  • Google Search Console rilis fitur Social Media Property, bisa pantau TikTok & Instagram
  • Hati-hati! 22 Platform Digital Terancam Diblokir Pemerintah, Cek Daftar Hotel dan Maskapainya di Sini
  • Baterai 7.000mAh & Standar Militer, Inilah Moto G77 Power
  • Inilah Cara Shopee dan Meta Bikin Kalian Makin Gampang Dapat Cuan Afiliasi Instagram Tanpa Ribet
  • Gila Sih! Vivo Rilis HP Baterai 8.000 mAh di 2026, Nggak Perlu Ribet Bawa Powerbank Lagi?
  • Infinix Hot 70 vs Tecno Spark 50: Pilih Baterai Jumbo 7000 mAh atau Fast Charging 45W di Harga 2 Jutaan?
  • Gak Perlu HP Mahal buat Pake AI: Intip Fitur Canggih di Samsung Galaxy A37 dan A57 yang Bikin Hidup Lebih Gampang
  • Bocoran Galaxy Unpacked Juli 2026: Z Fold 8 & Z Flip 8 Bakal Fokus ke On-Device AI, Makin Canggih atau Cuma Gimmick?
  • Duel Tablet 2 Jutaan: ADVAN Tab Sketsa 3 vs itel VistaTab 30GT, Mana yang Lebih Worth It buat Kerja?
  • Review Asus ExpertBook PM5 G2: Laptop Bisnis Rasa AI, Ringan tapi Gak Kaleng-kaleng
  • Review Redmi Pad 2 9.7 4G: Tablet Murah yang Bisa Pakai Kartu SIM, Worth It Nggak?
  • Review JBL Quantum Series: Inilah Alasan Kenapa Audio Berkualitas Bisa Bikin Kamu Menang Main Game
  • Review Vivo Y500: HP Baterai Jumbo 8.100mAh yang Bikin Nggak Perlu Cari Colokan Lagi!
  • Deploy Nginx Rootful Container with Podman
  • How to Sandboxing Browser on Linux Desktop with Flatpak
  • How to Hardening Journald on Linux Server (Fedora/AlmaLinux)
  • Block Bad USB on Linux Server with USBGuard
  • How to Secure NetworkManager on Fedora/AlmaLinux
  • How to Automate Your Entire SEO Strategy Using a Swarm of 100 Free AI Agents Working in Parallel
  • How to create professional presentations easily using NotebookLM’s AI power for school projects and beyond
  • How to Master SEO Automation with Google Gemini 3.1 Flash-Lite in Google AI Studio
  • How to create viral AI video ads and complete brand assets using the Claude and Higgsfield MCP integration
  • How to Transform Your Mac Into a Supercharged AI Assistant with Perplexity Personal Computer
  • ChatGPT down hari ini Sabtu 25 Juli 2026, kok tiba-tiba error dan sampai jam berapa pulihnya?
  • Lagi rame dibahas, Ferran Torres punya pacar atau nggak sih? Ini rangkuman rumor asmaranya
  • Hati-hati, banyak beredar aplikasi FF Beta Testing 4.0 Nexa yang katanya bisa main tanpa OBB, asli atau cuma jebakan?
  • Info jadwal bank buka Sabtu Minggu Juli 2026, mending cek dulu sebelum jauh-jauh ke kantor cabang
  • Warga penasaran, Naykilla ternyata adik kandung Sara Fajira penyanyi Lathi, kok wajahnya beda banget?

©2026 emka.web.id | Design: Newspaperly WordPress Theme