Bài 1. Cài đặt Docker trên Ubuntu
Giới thiệu
Docker là một công cụ cho phép tạo container và dựng lên container image. Ở bước đầu tiên này, chúng ta sẽ cài đặt Docker.
Yêu cầu
- Đã có kiến thức cơ bản về Linux
- Đã có kiến thức cơ bản về Git
- Terminal đến máy chủ Ubuntu sẵn sàng nhập lệnh
Nội dung
Mở terminal của Ubuntu và thực hiện các bước dưới đây:
Bước 1: Cập nhật các package của ubuntu và cài đặt một số công cụ hỗ trợ:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
Bước 2: Thêm key GPG official của Docker
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
Bước 3: Thêm Docker vào repository của apt
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Bước 4: Cập nhật lại repository apt
sudo apt-get update
Bước 5: Cài đặt Docker Engine
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Hoặc bạn có thể chỉ định version muốn cài đặt:
# Liệt kê các version
# List the available versions:
apt-cache madison docker-ce | awk '{ print $3 }'
# Ví dụ kết quả:
# 5:24.0.0-1~ubuntu.22.04~jammy
# 5:23.0.6-1~ubuntu.22.04~jammy
# Cài đặt chỉ định version
VERSION_STRING=5:24.0.0-1~ubuntu.22.04~jammy
sudo apt-get install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin
Bước 6: Xác nhận cài đặt thành công
Kiểm tra thông tin:
sudo docker info
# hoặc
sudo docker version
Tạo ra container:
sudo docker run hello-world
Bước 6: Thêm user cá nhân vào group của Docker
Mặc định, chỉ có user root có quyền thực hiện các câu lệnh của docker để quản lý các thành phần trong Docker. Khi bạn cài đặt, có một group mới được tạo ra trong hệ thống Linux có tên “docker”. Để user có quyền thực hiện các chức năng của Docker, bạn cần thực hiện thêm user vào group:
# thay <user> thành username của máy tính
sudo usermod -aG docker <user>
# ví dụ: $ sudo usermod -aG docker xboxuser
Câu lệnh này sẽ không có tác dụng trực tiếp trên shell hiện tại, bạn cần chuyển sang shell mới để áp dụng hiệu lực và trải nghiệm các lệnh của Docker ($ su - <user>)
Phụ lục
1. Tham khảo tài liệu official: https://docs.docker.com/engine/
2. Script cài đặt Docker
# install_docker.sh
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg -y
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
sudo usermod -aG docker $(whoami)
Tác giả: Đỗ Thiên Giang
Chú ý: Tất cả các bài viết trên TEDU.COM.VN đều thuộc bản quyền TEDU, yêu cầu dẫn nguồn khi trích lại trên website khác.
Tags:
Bài viết liên quan
Lộ trình Fullstack .NET Developer 2026
Chào bạn, bước sang năm 2026, lộ trình của một Fullstack .NET Developer đã có những thay đổi quan trọng để thích nghi với sự lên ngôi của AI, điện toán đám mây và phiên bản .NET 10 (LTS) vừa ra mắt cuối năm 2025.
Đọc thêm
TỔNG QUAN LÝ THUYẾT & THÀNH PHẦN CỐT LÕI SYSTEM DESIGN
Các lý thuyết cốt lõi trong System Design
Đọc thêm
Cẩm nang Big-O: Thước đo hiệu năng thuật toán trong C#
Hiểu rõ Big-O từ O(1) đến O(n!) qua ví dụ C# thuần. Bí quyết tối ưu code, chọn đúng cấu trúc dữ liệu để hệ thống luôn chạy nhanh và ổn định.
Đọc thêm
Bản Đồ Tư Duy Cho Dev: Giải Mã Cấu Trúc Dữ Liệu & Giải Thuật Cốt Lõi
Đọc thêm
Các mẫu thiết kế (design patterns) phổ biến trong kiến trúc Microservices.
Các mẫu thiết kế (design patterns) phổ biến trong kiến trúc Microservices.
Đọc thêm
Hướng dẫn Bind Jenkins vào IIS trên Windows bằng Reverse Proxy
Cho phép truy cập Jenkins từ một subdomain (ví dụ jenkins.tedu.com.vn) thay vì phải gõ http://localhost:8080.
Đọc thêm
Hiểu về AI, LLM, RAG và Agentic RAG trong 15 phút
Trong vài năm gần đây, trí tuệ nhân tạo (AI) đã bùng nổ mạnh mẽ và trở thành tâm điểm của cả thế giới công nghệ. Nhưng đi kèm với nó là hàng loạt khái niệm mới như LLM, RAG, hay Agentic RAG khiến nhiều người mới bắt đầu cảm thấy lúng túng.
Đọc thêm
Hướng dẫn tự triển khai N8N trên CentOS bằng Docker Compose và NGINX
N8N là công cụ mã nguồn mở cho phép bạn tự động hóa quy trình làm việc (workflow automation) và tích hợp nhiều dịch vụ khác nhau mà không cần phải lập trình.
Đọc thêm
Hướng dẫn phân tích độ phức tạp thuật toán chi tiết
Độ phức tạp của giải thuật là một cách để đánh giá hiệu quả của một giải thuật dựa trên hai yếu tố chính là độ phức tạp thời gian và độ phức tạp không gian.
Đọc thêm
Bài 6. Các thao tác với XPath và Selector trong Selenium
Bài viết này hướng dẫn bạn làm việc XPath và Css Selector trong Selenium.
Đọc thêm