如何在美国VPS服务器上部署Docker?

美国VPS服务器上部署 Docker 是一个快速、灵活的过程,可以帮助你在服务器上运行容器化的应用程序和服务。


一、准备工作

1. 确认系统环境

Docker 支持以下操作系统:

  • Ubuntu(推荐版本:20.04 或 22.04)
  • CentOS(推荐版本:7 或 8)
  • Debian(推荐版本:10 或 11)
  • 其他 Linux 发行版(例如 Fedora、AlmaLinux 等)

运行以下命令确认服务器的操作系统版本:

bash
cat /etc/os-release

2. 确保拥有 root 或 sudo 权限

为了安装和配置 Docker,你需要具备 root 权限或者能够使用 sudo


二、在美国VPS服务器上安装 Docker

1. 安装 Docker(以 Ubuntu 为例)

步骤 1:更新系统包

在安装 Docker 之前,先更新系统的软件包:

bash
sudo apt update
sudo apt upgrade -y

步骤 2:安装必要的软件

安装 apt-transport-httpsca-certificatescurlgnupg,以确保 Docker 的安装源可以被正确下载和验证:

bash
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y

步骤 3:添加 Docker 官方 GPG 密钥

添加 Docker 的 GPG 密钥以确保下载的软件包的安全性:

bash
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

步骤 4:添加 Docker 软件源

将 Docker 的官方存储库添加到系统:

bash
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

步骤 5:安装 Docker

更新软件包列表并安装 Docker:

bash
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io -y

步骤 6:检查 Docker 是否安装成功

运行以下命令验证 Docker 安装:

bash
docker --version

输出类似于以下内容表示安装成功:

 
Docker version 20.10.21, build baeda1f

2. 在 CentOS 上安装 Docker

步骤 1:更新系统包

bash
sudo yum update -y

步骤 2:安装必要的软件

bash
sudo yum install -y yum-utils

步骤 3:添加 Docker 的官方存储库

bash
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

步骤 4:安装 Docker

bash
sudo yum install -y docker-ce docker-ce-cli containerd.io

步骤 5:启动 Docker 服务

bash
sudo systemctl start docker
sudo systemctl enable docker

步骤 6:检查 Docker 是否安装成功

bash
docker --version

三、配置和优化 Docker

1. 添加用户到 Docker 组

默认情况下,只有 root 用户或者拥有 sudo 权限的用户可以运行 Docker。如果你希望普通用户也能使用 Docker,请将用户添加到 docker 组:

bash
sudo usermod -aG docker $USER

退出当前终端并重新登录以应用更改。

2. 配置 Docker 开机启动

确保 Docker 服务在系统重启后自动启动:

bash
sudo systemctl enable docker

3. 检查 Docker 服务状态

验证 Docker 服务是否正常运行:

bash
sudo systemctl status docker

四、运行第一个 Docker 容器

1. 测试 Docker

运行官方的测试容器 hello-world,验证 Docker 是否正常工作:

bash
docker run hello-world

如果 Docker 正常运行,你会看到类似以下的输出:

 
Hello from Docker!
This message shows that your installation appears to be working correctly.

2. 拉取其他镜像

你可以从 Docker 官方镜像仓库(Docker Hub)拉取其他镜像,例如:

bash
docker pull nginx

运行以下命令启动一个 nginx 容器:

bash
docker run -d -p 80:80 nginx
  • -d:让容器在后台运行。
  • -p 80:80:将服务器的端口 80 映射到容器的端口 80。

然后,你可以在浏览器中访问服务器的 IP 地址(例如 http://<美国VPS的IP>),你将看到 Nginx 的欢迎页面。


五、使用 Docker Compose(可选)

Docker Compose 是一种工具,可以帮助你定义和运行多容器 Docker 应用。以下是安装和使用 Docker Compose 的步骤:

1. 安装 Docker Compose

运行以下命令安装最新版本的 Docker Compose:

bash
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

赋予执行权限:

bash
sudo chmod +x /usr/local/bin/docker-compose

验证安装是否成功:

bash
docker-compose --version

2. 创建 docker-compose.yml 文件

创建一个 docker-compose.yml 文件来定义多容器应用。例如,以下是一个简单的示例,使用 Nginx 和 MySQL:

yaml
version: '3.8'
services:
  web:
    image: nginx
    ports:
      - "80:80"
  db:
    image: mysql:5.7
    environment:
      MYSQL_ROOT_PASSWORD: examplepassword

运行以下命令启动服务:

bash
docker-compose up -d

六、管理 Docker 容器

1. 查看运行中的容器

bash
docker ps

2. 停止容器

bash
docker stop <容器ID或名称>

3. 删除容器

bash
docker rm <容器ID或名称>

4. 查看容器日志

bash
docker logs <容器ID或名称>

5. 清理未使用的镜像和容器

清理未使用的镜像和停止的容器以释放磁盘空间:

bash
docker system prune -a

七、注意事项

  1. 安全性

    • 定期更新 Docker 和操作系统,修复已知漏洞。
    • 不要在生产环境中运行未经测试的镜像,确保镜像来源可信。
  2. 资源分配

    • 如果你的美国VPS资源有限(例如内存、CPU),可以通过 Docker 的资源限制功能为每个容器设置限制:
      bash
      docker run -d --memory="256m" --cpus="1" nginx
      
  3. 备份和恢复

    • 定期备份容器数据(例如挂载的数据卷)和配置文件。

八、总结

通过以上步骤,你可以在美国VPS服务器上快速部署 Docker,并运行容器化的应用程序。Docker 的轻量化、易扩展特性使其非常适合小型企业、中大型项目以及需要灵活部署的场景。以下是主要优势:

  1. 高效资源利用:在单台 VPS 上运行多个隔离的容器,优化资源使用。
  2. 便捷部署:快速启动和停止应用,提高运维效率。
  3. 灵活扩展:适应业务需求的变化,可以轻松添加或移除服务。

 

借助 Docker,你可以更高效地管理和扩展你的 IT 基础设施,实现快速的应用部署和全球化服务。

超过 50,000 人的信任 网硕互联期待你加入我们的会员。