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

  • Penyebab Aplikasi Wondr BNI Tidak Bisa Dibuka
  • Kode 0425 Daerah Mana? Ini Pengertian dan Fakta Sebenarnya
  • Apa Itu SSS CapCut? Pengertian Downloader Video Tanpa Watermark yang Wajib Kalian Tahu
  • Apa Itu Paket GamesMAX Telkomsel? Ini Pengertian dan Fungsinya Bagi Gamers
  • Apa Itu Menu Plus di Google Search? Ini Pengertian dan Fungsinya
  • Apa Itu Lepas Kolpri? Ini Pengertian dan Fenomenanya di Dunia Gaming
  • Pixel Buds Pro Dapat Update Software dengan Dukungan ANC Adaptif dan Peningkatan Audio
  • Mous Pixel Watch 4 Akan Hadir dengan Charger Baru dan Fitur-Fitur Terbaru
  • Hati-hati, Video Asli Botol Golda Viral Season 4 Full 6.30 Menit, Cek Link dan Faktanya disini!
  • Google Docs Dapat Update Material 3 dan Desain Ekspresif Baru, Fokus pada Kreativitas dan Kolaborasi
  • Belum Tahu? Ini Trik Hitung Cost Per Gigabyte Supaya Gak Boncos Saat Beli Paket Internet
  • Apple TV dan Google Cast Akan Terintegrasi Lebih Dalam, Tawarkan Pengalaman Streaming yang Lebih Baik
  • Lagi Rame Botol Golda Viral 19 Detik? APA ITU? Jangan Asal Klik Link Sembarangan, Ini Bahayanya!
  • Apa itu Regedit FF Auto Headshot 100 No Password 2024? Simak Definisi dan Cara Kerjanya
  • Apa Itu KPH dan MPH? Pengertian dan Perbedaannya di Game Balap
  • Belum Tahu? Inilah Cara Aman Quotex Login dan Solusi Kalau Error!
  • Apa Itu Fitur Gestur Baru di Pixel Watch 4? Ini Pengertian dan Perbedaannya
  • Belum Tahu? Inilah Cara Aman Login Binomo dan Trik Trading Buat Pemula Biar Nggak Boncos
  • Cara Mengatasi Error ‘Versi Diagnostik Belum Terbarui’ (Your current version of diagnostics is not up to date)
  • Cara Membuat Newsletter di Outlook 365
  • Sering Telepon di Tempat Berisik? Fitur Baru Expressive Call dari Google Bakal Jadi Penyelamat Kalian!
  • Google Pixel 10 Pro Akan Punya Integrasi Play Points Lebih Dalam
  • Stop Cara Kuno! Ini Trik Supaya Manajemen Karyawan Jadi Lebih Cepat dan Anti Ribet
  • Bug di Aplikasi Cuaca Wear OS Google: Update Tidak Ngaruh!
  • Samsung Kembangkan Sensor Kamera Baru Pakai Teknologi Global Shutter dan Efek Blur Bergerak
  • Cara Membuat Anggaran Otomatis di Excel
  • Baseus X1 Pro Kamera: Kamera Ringkas dengan Fitur Canggih dan Harga yang Menarik
  • Profil Sosmed Kalian Sepi? Gini Caranya Makeover Bio Biar Makin Dilirik Sama Netizen!
  • Cara Mengatasi Error ‘Disk is Full or Read-Only’
  • Belum Tahu? Inilah Trik Ampuh Atasi Error ‘We Were Unable To Create Your Notebook’ di OneNote
  • Ini Dia ESP32 P4: IoT RISC-V dengan Layar AMOLED dan LoRa, Perangkat Handheld Inovatif
  • Apa Itu HealthyPi-6? Solusi Open Source untuk Akuisisi Biosignal
  • Jetson THOR Industrial PC: 25Gbe Networking dan Bisa Pakai Kamera GMSL2
  • Azul Systems Akuisisi Payara Java Server
  • PC Kentang Jadi Ngebut? Coba GRML 2025, Distro Debian Ringan dengan Kernel 6.17!
  • Apa Itu US National Framework for AI? Kepres Donald Trump Bikin Heboh Dunia AI
  • Kenapa Bisnis Properti & Real Estate Harus Pakai AI, Ini Alasannya!
  • BARU! Brave Browser Bakal Bisa Ngerjain Tugas Kalian Secara Otomatis Lewat Agentic AI!
  • Belum Tahu? Google Maps Bakal Makin Canggih Berkat Integrasi Gemini Visual Ini!
  • Siap-Siap! Tahun 2026 Gemini Bakal “Menjajah” Chrome, iPhone, sampai Smartwatch Kalian
  • Apa Itu Video PT Pabrik Brebes Viral? Ini Pengertian dan Fakta Sebenarnya
  • Apa itu Data Breach Coupang? Pengertian dan Kronologi Kebocoran Data Terbesar di Korea Selatan
  • Apa Itu CVE-2018-4063? Pengertian Celah Keamanan Sierra Wireless AirLink yang Masuk Katalog CISA
  • Apa Itu Ashen Lepus? Kelompok Peretas yang Mengincar Instansi Pemerintah Timur Tengah
  • Pengertian Vulnerability WebKit Apple Terbaru: Apa Itu CVE-2025-43529 dan CVE-2025-14174?

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