Ngày nay, Docker là một công cụ không thể thiếu trong việc phát triển và triển khai ứng dụng, đặc biệt với các kỹ sư hệ thống và DevOps. Việc tự xây dựng hình ảnh Docker từ nguồn thay vì sử dụng các hình ảnh có sẵn từ kho Docker Hub giúp bạn kiểm soát tốt hơn quy trình và tối ưu hóa tài nguyên. Trong bài viết này, chúng ta sẽ hướng dẫn bạn cách xây dựng hình ảnh Ubuntu mới nhất bằng Docker, sử dụng mã nguồn từ GitHub.
1. Chuẩn Bị Môi Trường
Trước khi bắt đầu, bạn cần một môi trường để thực thi các lệnh Docker. Play-with-Docker là một lựa chọn tuyệt vời để thử nghiệm, cung cấp các instance tạm thời với Docker đã được cài đặt. Với phiên bản Docker mới nhất (tính đến thời điểm phát hành vào đầu năm 2025), bạn sẽ có hiệu suất tốt hơn và các tính năng bảo mật tiên tiến. Để kiểm tra phiên bản, hãy chạy:
docker -v
Nếu bạn đang sử dụng Play-with-Docker và thấy phiên bản cũ (như 1.13.0 trong ví dụ trước), hãy cân nhắc cập nhật môi trường cục bộ của bạn hoặc sử dụng một instance mới với phiên bản mới nhất.
2. Tải Xuống Mã Nguồn Từ GitHub
Để xây dựng hình ảnh Ubuntu, chúng ta sẽ sử dụng kho lưu trữ docker-brew-ubuntu-core từ GitHub, nơi chứa các Dockerfile cho các phiên bản Ubuntu. Thay vì sử dụng nhánh dist và phiên bản xenial (16.04) như trước đây, chúng ta sẽ chuyển sang nhánh main và phiên bản noble (Ubuntu 24.04 LTS), phiên bản mới nhất được hỗ trợ tính đến tháng 5/2025. Chạy lệnh sau để tải mã nguồn:
$ git clone -b main https://github.com/tianon/docker-brew-ubuntu-core.git
Lệnh này tải toàn bộ kho lưu trữ, bao gồm các tệp Dockerfile và phụ thuộc cần thiết. Tiếp theo, di chuyển vào thư mục noble, phiên bản Ubuntu 24.04 LTS mới nhất:
$ cd docker-brew-ubuntu-core/noble
3. Xây Dựng Hình Ảnh Docker
Trong thư mục noble, bạn sẽ tìm thấy tệp Dockerfile được thiết kế để xây dựng hình ảnh Ubuntu 24.04. Để tạo hình ảnh, sử dụng lệnh:
$ docker build -t my-ubuntu:24.04 .
- -t my-ubuntu:24.04: Gán tên và phiên bản cho hình ảnh (tùy chỉnh theo ý bạn).
- .: Chỉ định thư mục hiện tại chứa Dockerfile.
4. Kiểm Tra Hình Ảnh Đã Xây Dựng
Sau khi hoàn tất, hãy kiểm tra các hình ảnh Docker cục bộ bằng lệnh:
$ docker images
Lệnh này liệt kê tất cả các hình ảnh, bao gồm cả hình ảnh my-ubuntu:24.04 vừa xây dựng và các hình ảnh khác được tải từ Docker Hub. Bạn sẽ thấy thông tin như ID hình ảnh, kích thước, và ngày tạo, giúp bạn dễ dàng quản lý.
5. Chạy Hình Ảnh Đã Xây Dựng
Để kiểm tra hình ảnh vừa tạo, hãy chạy một container từ nó bằng lệnh:
$ docker run -ti my-ubuntu:24.04
- -t: Cấp phát một pseudo-TTY để tương tác với container.
- -i: Cho phép tương tác đầu vào (interactive).
- my-ubuntu:24.04: Tên hình ảnh bạn đã xây dựng.
6. Tối Ưu Hóa và Ứng Dụng Thực Tế
- Tối ưu hóa hình ảnh: Nếu bạn muốn giảm kích thước hình ảnh, hãy chỉnh sửa Dockerfile để loại bỏ các gói không cần thiết hoặc sử dụng lệnh docker build với tùy chọn --squash (nếu được hỗ trợ).
- Ứng dụng trong DevOps: Hình ảnh tùy chỉnh này có thể được tích hợp vào pipeline CI/CD (như Jenkins hoặc GitHub Actions) để triển khai ứng dụng trên các môi trường như Kubernetes hoặc Docker Swarm.
- Cập nhật thường xuyên: Vì Ubuntu 24.04 LTS được hỗ trợ đến năm 2029, hãy định kỳ chạy docker build với các bản vá bảo mật mới từ kho Ubuntu.
Việc tự xây dựng hình ảnh Docker Ubuntu 24.04 không chỉ giúp bạn làm quen với quy trình mà còn mang lại sự linh hoạt trong quản lý container. Với Docker 25.0.3 và môi trường Play-with-Docker, bạn có thể thử nghiệm ngay hôm nay mà không cần cài đặt phức tạp. Hãy dành thời gian khám phá Dockerfile, thử nghiệm các cấu hình khác nhau, và chia sẻ kinh nghiệm của bạn trong phần bình luận!
Chúc bạn thành công trong hành trình Docker hóa hệ thống của mình!