پرش به مطلب اصلی

قالب Dockerfile برای فریم ورک Nuxt.js

این راهنما به شما کمک می‌کند تا Dockerfile مناسب برای پروژه‌های مبتنی بر Nuxt.js بسازید.

نکات کلیدی برای تمام Dockerfile ها

  1. استفاده از ایمیج های رسمی Node.js
  2. ایجاد یک کاربر غیر root برای امنیت بیشتر
  3. استفاده از متغیرهای محیطی برای انعطاف‌پذیری بیشتر
  4. بهینه‌سازی برای هر فریم‌ورک خاص
FROM node:$node_version
ARG UID=1000
ARG GID=1000
ENV PORT=3000
ENV HOSTNAME=0.0.0.0
RUN groupadd -g $GID -o app && \
useradd -g $GID -u $UID -mr -d /home/app -o -s /bin/bash app
USER app
WORKDIR /home/app
COPY --chown=app:app app/ /home/app/
RUN npm install
# RUN generate
# CMD [ "HOSTNAME=0.0.0.0", "PORT=$PORT", "npm", "run", "start" ]
#or
# RUN npm run build
# CMD [ "node", ".output/server/index.mjs" ]
اطلاع
  • دو گزینه برای اجرا ارائه شده است: استفاده از npm run start یا اجرای مستقیم فایل خروجی سرور.
  • متغیر PORT را تعیین کرده اید که در تنظیمات پیشرفته یا داشبورد پروژه در کوبار جایگزین کنید .
توجه
  • $node_version را با نسخه مناسب Node.js جایگزین کنید.
  • بسته به نیازهای پروژه، یکی از دو گزینه CMD را انتخاب و از حالت کامنت خارج کنید.
  • اگر از حالت استاتیک استفاده می‌کنید، دستور RUN generate را از حالت کامنت خارج کنید.

بیلد و اجرا کردن داکر فایل

برای بیلد کردن داکر فایل و ساخت ایمیج از دستور

docker build -t [ProjectName] .
  • t- : دادن برچسپ و نام مخصوص برای پروژه

و سپس برای اجرای آن:

docker run -p outport:inport[3000] --name=container-name -d [ProjectName]
  • p- : تعیین پورت برای اجرای پروژه
  • outport : پورتی خارجی
  • inport : پورت داخلی پروژه که در داکر فایل تعیین کرده اید
  • name-- : تعیین نام کانتینر
  • d- : اجرای کانتینر در حالت بدون نمایش
توجه
  1. امنیت: همیشه از آخرین نسخه‌های پایدار Node.js و Nginx استفاده کنید.
  2. تست: قبل از استقرار در محیط تولید، حتماً ایمیج Docker خود را در یک محیط مشابه تولید تست کنید.