قالب Dockerfile برای فریم ورک Nuxt.js
این راهنما به شما کمک میکند تا Dockerfile مناسب برای پروژههای مبتنی بر Nuxt.js بسازید.
نکات کلیدی برای تمام Dockerfile ها
- استفاده از ایمیج های رسمی Node.js
- ایجاد یک کاربر غیر root برای امنیت بیشتر
- استفاده از متغیرهای محیطی برای انعطافپذیری بیشتر
- بهینهسازی برای هر فریمورک خاص
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- : اجرای کانتینر در حالت بدون نمایش
توجه
- امنیت: همیشه از آخرین نسخههای پایدار Node.js و Nginx استفاده کنید.
- تست: قبل از استقرار در محیط تولید، حتماً ایمیج Docker خود را در یک محیط مشابه تولید تست کنید.