Một Dockerfile là một tệp văn bản chứa các lệnh để build một Docker image — nó mô tả base image, các phụ thuộc, các tệp cần sao chép, và cách chạy ứng dụng. Nó làm cho việc build image có thể tái tạo và quản lý phiên bản được.
Một Dockerfile cơ bản
# FROM — base image để build lên
FROM node:20-alpine
# WORKDIR — đặt thư mục làm việc bên trong image
WORKDIR /app
# COPY các tệp phụ thuộc trước (để cache layer tốt hơn)
COPY package*.json ./
# RUN — thực thi một lệnh trong quá trình BUILD (cài đặt phụ thuộc)
RUN npm install
# COPY phần còn lại của mã ứng dụng
COPY . .
# EXPOSE — ghi chú cổng mà ứng dụng lắng nghe
EXPOSE 3000
# CMD — lệnh chạy khi một CONTAINER khởi động
CMD ["node", "server.js"]
