云服务器部署项目前如何在Ubuntu 22.04中安装并验证Docker?

在Ubuntu 22.04上安装和验证Docker的步骤如下:

一、卸载旧版本(如有)

sudo apt-get remove docker docker-engine docker.io containerd runc

二、安装Docker

方法1:使用官方脚本安装(推荐)

# 下载安装脚本
curl -fsSL https://get.docker.com -o get-docker.sh

# 执行安装
sudo sh get-docker.sh

方法2:使用APT仓库安装

# 1. 更新包索引并安装依赖
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg lsb-release

# 2. 添加Docker官方GPG密钥
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

# 3. 设置仓库
echo 
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu 
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 4. 安装Docker引擎
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin

三、验证安装

1. 检查Docker版本

docker --version
# 输出类似:Docker version 24.0.7, build afdd53b

docker compose version
# 检查Docker Compose版本

2. 运行测试容器

# 运行Hello World容器
sudo docker run hello-world

# 如果看到以下信息,说明安装成功:
# Hello from Docker!
# This message shows that your installation appears to be working correctly.

3. 检查Docker服务状态

sudo systemctl status docker
# 应该显示 active (running)

四、配置Docker(可选但推荐)

1. 以非root用户运行Docker

# 将当前用户加入docker组
sudo usermod -aG docker $USER

# 注销并重新登录,或执行以下命令使组更改生效
newgrp docker

# 验证非root用户权限
docker run hello-world

2. 设置Docker开机自启

sudo systemctl enable docker.service
sudo systemctl enable containerd.service

3. 配置Docker镜像提速(国内用户)

# 创建或修改配置文件
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn",
    "https://hub-mirror.c.163.com"
  ]
}
EOF

# 重启Docker使配置生效
sudo systemctl daemon-reload
sudo systemctl restart docker

五、常用Docker命令测试

# 查看Docker信息
docker info

# 查看镜像列表
docker images

# 查看运行中的容器
docker ps

# 查看所有容器(包括停止的)
docker ps -a

# 拉取并运行Nginx测试
docker run -d -p 8080:80 --name test-nginx nginx
# 访问 http://服务器IP:8080 应该能看到Nginx欢迎页面

# 停止并删除测试容器
docker stop test-nginx
docker rm test-nginx

六、安装Docker Compose(如果需要)

# 下载最新版本(替换v2.24.5为最新版本)
sudo curl -L "https://github.com/docker/compose/releases/download/v2.24.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

# 赋予执行权限
sudo chmod +x /usr/local/bin/docker-compose

# 验证安装
docker-compose --version

常见问题解决

  1. 权限问题:如果出现"Got permission denied"错误,确保用户已加入docker组并重新登录。

  2. 端口冲突:如果8080端口被占用,修改映射端口,如 -p 8081:80

  3. 镜像拉取慢:配置镜像提速器,或使用XX。

  4. 服务启动失败

    sudo systemctl daemon-reload
    sudo systemctl restart docker
    sudo journalctl -u docker.service  # 查看日志

完成以上步骤后,Docker就可以正常使用了,可以开始部署你的项目容器。

云服务器