Docker教程 · 2024年11月15日

使用Docker安装WireGuard的教程

使用Docker安装WireGuard的教程

WireGuard是一种现代的VPN协议,以其高效性和易用性而受到广泛欢迎。通过Docker安装WireGuard,可以简化配置过程,并确保环境的一致性。本文将详细介绍如何在Docker中安装和配置WireGuard。

前提条件

  • 确保已安装Docker和Docker Compose。
  • 具有基本的Linux命令行知识。
  • 拥有一个可以访问的Linux服务器。

步骤一:拉取WireGuard镜像

首先,我们需要从Docker Hub拉取WireGuard的官方镜像。打开终端并运行以下命令:

docker pull linuxserver/wireguard

步骤二:创建配置文件

在Docker中运行WireGuard之前,我们需要创建一个配置文件。可以在主目录下创建一个名为“wireguard”的文件夹,并在其中创建配置文件。

mkdir ~/wireguard
cd ~/wireguard
touch .env

在“.env”文件中,添加以下内容:

WG_HOST=你的服务器IP
WG_PORT=51820
WG_PERSISTENT_KEEPALIVE=25

步骤三:创建Docker Compose文件

接下来,我们需要创建一个Docker Compose文件,以便更方便地管理WireGuard容器。在“wireguard”文件夹中创建一个名为“docker-compose.yml”的文件:

touch docker-compose.yml

在“docker-compose.yml”文件中,添加以下内容:

version: '3'
services:
  wireguard:
    image: linuxserver/wireguard
    container_name: wireguard
    cap_add:
      - NET_ADMIN
      - SYS_MODULE
    environment:
      - PUID=1000
      - PGID=1000
      - WG_HOST=${WG_HOST}
      - WG_PORT=${WG_PORT}
      - WG_PERSISTENT_KEEPALIVE=${WG_PERSISTENT_KEEPALIVE}
    volumes:
      - ./config:/config
    ports:
      - "${WG_PORT}:${WG_PORT}/udp"
    restart: unless-stopped

步骤四:启动WireGuard

完成配置后,可以使用以下命令启动WireGuard:

docker-compose up -d

此命令将在后台启动WireGuard容器。可以使用以下命令查看容器的状态:

docker ps

步骤五:生成客户端配置

要连接到WireGuard VPN,您需要为每个客户端生成配置文件。可以通过以下命令进入WireGuard容器:

docker exec -it wireguard /bin/bash

在容器内,使用以下命令生成客户端密钥对:

wg genkey | tee client_private.key | wg pubkey > client_public.key

然后,您可以根据需要创建客户端配置文件。以下是一个示例配置:

[Interface]
PrivateKey = 客户端私钥
Address = 10.0.0.2/24
DNS = 1.1.1.1

[Peer]
PublicKey = 服务器公钥
Endpoint = 你的服务器IP:51820
AllowedIPs = 0.0.0.0/0

总结

通过以上步骤,您可以在Docker中成功安装和配置WireGuard。WireGuard以其高效和安全性,成为了许多用户的首选VPN解决方案。如果您需要更稳定和安全的服务器环境,可以考虑使用米云提供的美国VPS云服务器,以满足您的需求。米云致力于提供高质量的服务器解决方案,确保您的数据安全和隐私保护。