Docker là một dự án mã nguồn mở cho phép triển khai các ứng dụng Linux và Windows trên những container ảo. Bài viết này sẽ hướng dẫn cách cài đặt Docker trên Linux/Ubuntu đơn giản và nhanh nhất.
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 ứng dụng bằng cách sử dụng các container. Container là những đơn vị phần mềm được đóng gói với tất cả các phụ thuộc cần thiết để chạy, bao gồm cả mã, thư viện hệ thống, công cụ và các cài đặt khác.

Docker giúp đơn giản hóa quá trình phát triển, thử nghiệm và triển khai ứng dụng bằng cách cung cấp một cách thức tiêu chuẩn để đóng gói và chạy các ứng dụng trong các container riêng biệt. Điều này giúp cải thiện hiệu quả, khả năng di chuyển và khả năng mở rộng của ứng dụng.
Các thành phần chính của Docker:
- Images: Images là bản mẫu chỉ đọc chứa tất cả các hướng dẫn cần thiết để tạo một container.
- Containers: Containers là phiên bản chạy của một image.
- Docker Engine: Docker Engine là phần mềm được sử dụng để tạo, chạy và quản lý container.
- Docker Hub: Docker Hub là kho lưu trữ công khai cho các images Docker.
Cách cài đặt Docker trên Linux
Mọi bản phân phối Linux đều cần cài đặt file 64-bit và kernel phiên bản 3.10 trở lên để sử dụng Docker. Ta có thể kiểm tra phiên bản Linux bằng lệnh uname -r.
uname -r
Cài đặt trên Debian và Ubuntu
Hiện tại theo công bố từ Docker có thể chạy trên những phiên bản sau:
- Ubuntu Noble 24.04 (LTS)
- Ubuntu Jammy 22.04 (LTS)
- Ubuntu Focal 20.04 (LTS)
- Debian Bookworm 12 (stable)
- Debian Bullseye 11 (oldstable)
- RHEL 8
- RHEL 9
- Fedora 39
- Fedora 40
- 32-bit Raspberry Pi OS Bookworm 12 (stable)
- 32-bit Raspberry Pi OS Bullseye 11 (oldstable)
- CentOS 9 (stream)
- SLES 15-SP4 on s390x (IBM Z)
- SLES 15-SP5 on s390x (IBM Z)
Tuy nhiên hệ thống của bạn vẫn nên đáp ứng tối thiểu các hệ hiều hành sau để có thể sử dụng Docker:
- Ubuntu Xenial 16.04 LTS
- Ubuntu Wily 15.10
- Ubuntu Trusty 14.04 LTS
- Ubuntu Precise 12.04 LTS
- Debian testing
- Debian 8.0 Jessie
- Debian 7.0 Wheezy (cần enable backport)
Debian Wheezy
Trước hết ta cần mở backport trên hệ thống như sau:
- Mở terminal bằng quyền sudo hoặc root (hoặc chạy sudo -i trong terminal).
- Tiếp theo, mở /etc/apt/sources.list.d/backports.list bằng text editor bất kỳ.
- Xóa mọi entry có trong file.
- Thêm một entry cho backport trên Debian Wheezy rồi cập nhật lại package:
deb http://http.debian.net/debian wheezy-backports main
apt-get update -y
Ubuntu Precise 12.04
Đối với Ubuntu Precise 12.04, ta cần có kernel ở phiên bản 3.13 trở đi để cài đặt Docker trên Linux. Bạn đọc có thể làm theo các bước dưới đây để cập nhật kernel:
1. Mở terminal.
2. Cập nhật package:
sudo apt-get update -y
3. Cài đặt những package bổ sung:
sudo apt-get install -y linux-image-generic-lts-trusty linux-headers-generic-lts-trusty
4. Đối với môi trường Ubuntu có giao diện đồ họa thì ta cần chạy thêm lệnh:
sudo apt-get install -y xserver-xorg-lts-trusty libgl1-mesa-glx-lts-trusty
5. Cuối cùng là reboot lại hệ thống:
sudo reboot
Cập nhật Aptitude
1. Đăng nhập hệ thống bằng quyền sudo.
2. Mở một cửa sổ terminal rồi xóa những repo cũ bằng lệnh sau:
sudo apt-get purge -y lxc-docker* && sudo apt-get -y purge docker.io*
3. Cập nhật package, đảm bảo rằng apt hoạt động tốt với https và server có certificate CA:
sudo apt-get update -y && sudo apt-get install -y apt-transport-https ca-certificates
4. Nhận GPG key mới:
sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
5. Mở (hoặc tạo file nếu chưa có) /etc/apt/sources.list.d/docker.list bằng text editor bất kỳ rồi thêm entry tương ứng với hệ điều hành của mình:
Phiên bản | Nguồn |
---|---|
Ubuntu Precise 12.04 LTS | deb https://apt.dockerproject.org/repo ubuntu-precise main |
Ubuntu Trusty 14.04 LTS | deb https://apt.dockerproject.org/repo ubuntu-trusty main |
Ubuntu Wily 15.10 LTS | deb https://apt.dockerproject.org/repo ubuntu-wily main |
Ubuntu Xenial 16.04 LTS | deb https://apt.dockerproject.org/repo ubuntu-xenial main |
Debian Wheezy | deb https://apt.dockerproject.org/repo debian-wheezy main |
Debian Jessie | deb https://apt.dockerproject.org/repo debian-jessie main |
Debian Stretch/Sid | deb https://apt.dockerproject.org/repo debian-stretch main |
6. Lưu và đóng file lại.
7. Sau đó cập nhật lại Aptitude:
sudo apt-get update -y
8. Xác nhận rằng Aptitude được pull về từ đúng repo:
sudo apt-cache policy docker-engine
Cài đặt Docker
Đối với Ubuntu Trusty, Wily hoặc Xenial thì ta có thể cài đặt package kernel linux-image-extra như sau:
sudo apt-get update -y && sudo apt-get install -y linux-image-extra-$(uname -r)
1. Cài đặt Docker:
sudo apt-get install docker-engine -y
2. Khởi động Docker:
sudo service docker start
3. Xác thực Docker:
sudo docker run hello-world
Docker Group
Nếu muốn mở rộng thêm thì ta có thể cài đặt một nhóm docker để chạy Docker (thay vì phải chạy bằng quyền root). Tuy nhiên, docker cần có quyền truy cập sudo nên nhóm docker cũng sẽ có quyền truy cập tương tự như root.
1. Thực thi lệnh dưới đây để tạo một nhóm Docker trên Ubuntu:
sudo groupadd docker && sudo usermod -aG docker ubuntu
2. Đăng nhập lại hệ thống.
3. Chạy lệnh dưới đây để tạo một nhóm Docker trên Debian:
sudo groupadd docker && sudo gpasswd -a ${USER} docker && sudo service docker restart
4. Xác thực xem quá trình cài đặt đã thành công chưa:
docker run hello-world
Sau khi đã hoàn tất việc cài đặt Docker trên hệ thống của bạn, việc đảm bảo một môi trường ổn định và mạnh mẽ là điều cần thiết để triển khai các container hiệu quả. Dịch vụ VPS AMD của Vietnix, với bộ vi xử lý AMD EPYC mạnh mẽ và ổ cứng NVMe Enterprise siêu tốc, sẽ mang đến cho bạn hiệu suất tuyệt vời và khả năng mở rộng dễ dàng. Hơn nữa, VPS của Vietnix còn hỗ trợ nhiều hệ điều hành khác nhau, phù hợp cho cả các ứng dụng đòi hỏi xử lý phức tạp và dữ liệu lớn.
Cài đặt Docker trên Red Hat Enterprise Linux (RHEL) và CentOS
Docker có thể được cài đặt trên RHEL 7 và CentOS 7.
Cài đặt bằng yum
1. Đăng nhập bằng quyền sudo.
2. Cập nhật hệ thống:
sudo yum update -y
3. Thêm repo yum:
$ sudo tee /etc/yum.repos.d/docker.repo <<-'EOF'
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
EOF
4. Cài đặt Docker:
sudo yum install docker-engine -y
5. Khởi động Docker:
sudo service docker start
6. Xác thực xem quá trình cài đặt đã được hoàn tất chưa:
sudo docker run hello-world
Cài đặt bằng script
1. Đăng nhập bằng quyền sudo:
2. Cập nhật hệ thống:
sudo yum update -y
3. Chạy script cài đặt Docker (lệnh này sẽ thêm docker.repo vào repo và cài đặt Docker):
curl -fsSL https://get.docker.com | sh;
4. Khởi động Docker:
sudo service docker start
5. Xác thực Docker:
sudo docker run hello-world
Tạo Docker Group
Tương tự với Debian và Ubuntu, ta cũng có thể tạo một nhóm docker theo các bước dưới đây:
1. Tạo nhóm Docker rồi thêm user hiện tại vào nhóm (thay USERNAME trong lệnh bằng tên user tương ứng):
sudo groupadd docker && sudo usermod -aG docker USERNAME
2. Đăng nhập lại vào hệ thống.
3. Xác thực xem Docker đã hoạt động chưa:
docker run hello-world
Khởi động Docker khi boot
Chạy một trong hai lệnh sau để khởi động Docker mỗi khi boot hệ thống:
sudo chkconfig docker on
sudo systemctl enable docker
Lời kết
Bài viết này đã hướng dẫn chi tiết các bước cài đặt Docker trên Ubuntu, Debian và CentOS. Một số người dùng Ubuntu thường gặp lỗi khi cài đặt Docker, khi đó bạn có thể cập nhật lên hệ điều hành hoặc kernel mới hơn. Tương tự, người dùng Debian Wheezy cũng thỉnh thoảng gặp lỗi cài đặt nếu chưa cập nhật nguồn với backport. Chúc bạn thành công!