สรุปการสร้าง Dockerfile - panupongth148/Project-SW-DEV-TOOLS-AND-ENV-Group4 GitHub Wiki
สรุปการสร้าง Dockerfile
Frontend
- กำหนด base image ที่จะใช้
FROM node:12.18.1-alpine
2.กำหนด Working Directory เพื่อใช้เป็น Default Location ที่จะใช้คำสั่งต่าง ๆ ภายใน Dockerfile
WORKDIR /app
- กำหนด path
ENV PATH /app/node_modules/.bin:$PATH
- คัดลอกไฟล์ทั้ง package.json เข้าไปยัง Working Directory ที่กำหนดไว้
COPY package.json /app/package.json
- ติดตั้ง node module และ dependency ที่ใช้
RUN npm install
- ติดตั้ง module vue cli
RUN npm install @vue/cli -g
- กำหนดคำสั่งสำหรับรัน Container Image
CMD ["npm", "run", "serve"]
Backend
1.กำหนด Base Image ที่จะใช้ภายใน Container
FROM node:16.13.2-alpine
2.กำหนด Working Directory เพื่อใช้เป็น Default Location ที่จะใช้คำสั่งต่าง ๆ ภายใน Dockerfile
WORKDIR /app
3.คัดลอกไฟล์ทั้ง package.json และ package-lock.json เข้าไปยัง Working Directory ที่กำหนดไว้
COPY ["package.json", "package-lock.json", "./"]
4.เข้าไปยัง Working Directory แล้ว จะทำการรันคำสั่ง npm install เพื่อติดตั้ง Dependencies
RUN npm install
5.หลังจากทำการติดตั้ง Dependencies ต่าง ๆ เรียบร้อยแล้ว จะทำการคัดลอก Source code ทั้งหมดเข้าไปยังโฟลเดอร์ app
COPY ./app
6.ระบุ Port ภายใน Container ว่าจะให้ทำงานที่ Port 3000
EXPOSE 3000
7.กำหนดคำสั่งสำหรับรัน Container Image
CMD [ "npm", "start" ]