Khám Phá Docker: Hướng Dẫn Dành Cho Người Mới Bắt Đầu
Xin chào các bạn, hôm nay chúng ta sẽ cùng nhau khám phá một công cụ tuyệt vời mang tên Docker. Nếu bạn đã từng đau đầu vì ứng dụng chạy tốt trên máy của mình nhưng lại "đổ vỡ" khi triển khai lên server, thì Docker chính là vị cứu tinh của bạn. Hãy tưởng tượng Docker như một chiếc hộp thần kỳ, bạn có thể bỏ vào đó mọi thứ cần thiết cho ứng dụng của mình và mang nó đi khắp nơi mà không lo bị "rơi rớt" bất cứ thứ gì. Nào, hãy cùng bắt đầu hành trình khám phá Docker nhé!
Giới Thiệu Về Docker
Docker là một nền tảng mã nguồn mở giúp tự động hóa việc triển khai, mở rộng và quản lý ứng dụng bằng cách sử dụng container. Container cho phép các lập trình viên đóng gói ứng dụng cùng với tất cả các phụ thuộc của nó vào một đơn vị tiêu chuẩn cho phát triển phần mềm.
Tại Sao Nên Sử Dụng Docker?
- Nhất quán: Docker đảm bảo rằng ứng dụng của bạn chạy giống nhau ở các môi trường khác nhau.
- Cô lập: Mỗi container chạy trong môi trường riêng biệt, ngăn chặn xung đột giữa các ứng dụng.
- Mở rộng: Docker giúp dễ dàng mở rộng ứng dụng theo chiều ngang bằng cách thêm nhiều container.
- Hiệu quả: Container nhẹ và chia sẻ kernel của hệ thống chủ, làm cho chúng hiệu quả hơn so với máy ảo truyền thống.
Cài Đặt Docker
Để cài đặt Docker, hãy làm theo hướng dẫn cho hệ điều hành của bạn:
Các Lệnh Docker Cơ Bản
Dưới đây là một số lệnh Docker cơ bản để bạn bắt đầu:
docker --version
: Kiểm tra phiên bản Docker đã cài đặt.docker pull <image>
: Tải một Docker image từ Docker Hub.docker run <image>
: Chạy một Docker container từ image.docker ps
: Liệt kê các container đang chạy.docker stop <container_id>
: Dừng một container đang chạy.docker rm <container_id>
: Xóa một container đã dừng.docker rmi <image_id>
: Xóa một Docker image.
Xây Dựng Một Docker Image
Để xây dựng một Docker image, bạn cần tạo một Dockerfile
. Dockerfile
là một tài liệu văn bản chứa tất cả các lệnh để lắp ráp một image.
Ví Dụ Về Dockerfile
# Sử dụng một Node.js runtime chính thức làm image cha
FROM node:14
# Đặt thư mục làm việc
WORKDIR /usr/src/app
# Sao chép package.json và package-lock.json
COPY package*.json ./
# Cài đặt các phụ thuộc
RUN npm install
# Sao chép phần còn lại của mã ứng dụng
COPY . .
# Mở cổng mà ứng dụng chạy
EXPOSE 8080
# Định nghĩa lệnh để chạy ứng dụng
CMD ["node", "app.js"]
Xây Dựng Image
Để xây dựng Docker image, điều hướng đến thư mục chứa Dockerfile
và chạy lệnh sau:
docker build -t my-node-app .
Lệnh này xây dựng image và gắn thẻ nó là my-node-app
.
Chạy Container
Để chạy một container từ image bạn vừa xây dựng, sử dụng lệnh sau:
docker run -p 8080:8080 my-node-app
Lệnh này ánh xạ cổng 8080 trên máy chủ của bạn tới cổng 8080 trong container.
Docker Compose
Docker Compose là một công cụ để định nghĩa và chạy các ứng dụng Docker đa container. Với Compose, bạn sử dụng một tệp docker-compose.yml
để cấu hình các dịch vụ của ứng dụng.
Ví Dụ Về docker-compose.yml
version: '3'
services:
web:
image: my-node-app
build: .
ports:
- "8080:8080"
redis:
image: "redis:alpine"
Chạy Docker Compose
Để khởi động ứng dụng với Docker Compose, điều hướng đến thư mục chứa tệp docker-compose.yml
và chạy:
docker-compose up
Lệnh này khởi động tất cả các dịch vụ được định nghĩa trong tệp docker-compose.yml
.
Ở bài tiếp theo chúng ta sẽ tiếp tục đi làm rõ hơn về docker compose. Hãy tham khảo bài viết nhé.
Kết Luận
Docker là một công cụ mạnh mẽ giúp đơn giản hóa quá trình phát triển, triển khai và chạy ứng dụng. Bằng cách sử dụng Docker, bạn có thể đảm bảo tính nhất quán giữa các môi trường, cô lập ứng dụng và mở rộng chúng một cách hiệu quả. Với những kiến thức cơ bản được đề cập trong hướng dẫn này, bạn sẽ sẵn sàng tận dụng Docker trong quy trình phát triển của mình.
All rights reserved