Linux 如何在docker中使用带wireguard的Pro Custodibus

Linux 如何在docker中使用带wireguard的Pro Custodibus,linux,server,wireguard,Linux,Server,Wireguard,我想使用,但我的wireguard服务器位于docker容器()上。如何配置PRo custodibus以加载和管理wireguard数据?您必须将PRo custodibus代理烘焙到包含wireguard的容器中 这里有一个Dockerfile: # Dockerfile FROM ghcr.io/linuxserver/wireguard ENV DEBIAN_FRONTEND noninteractive RUN \ apt-get update && \

我想使用,但我的wireguard服务器位于docker容器()上。如何配置PRo custodibus以加载和管理wireguard数据?

您必须将PRo custodibus代理烘焙到包含wireguard的容器中

这里有一个Dockerfile:

# Dockerfile
FROM ghcr.io/linuxserver/wireguard

ENV DEBIAN_FRONTEND noninteractive
RUN \
    apt-get update && \
    apt-get install -y libsodium23 python3-pip && \
    rm -rf /var/lib/apt/lists/*

RUN \
    mkdir -p /etc/services.d/procustodibus-agent && \
    echo \
        '#!/usr/bin/with-contenv bash\n' \
        'exec procustodibus-agent --loop=120 --config=/config/procustodibus.conf\n' \
        > /etc/services.d/procustodibus-agent/run && \
    gpg --keyserver hkp://keys.gnupg.net --recv-keys EFC1AE969DD8159F

RUN \
    cd /tmp && \
    curl -O https://ad.custodib.us/agents/procustodibus-agent-latest.tar.gz && \
    curl https://ad.custodib.us/agents/procustodibus-agent-latest.tar.gz.sig | \
    gpg --verify - procustodibus-agent-latest.tar.gz && \
    tar xf procustodibus-agent-latest.tar.gz && \
    pip3 install procustodibus-agent-*/ && \
    rm -rf /tmp/*
它:

  • 用作其基础(这反过来又基于Ubuntu20.04,加上用于流程主管)
  • 安装Pro Custodibus代理依赖项:带pip的libnaude和python3
  • 将s6配置为将Pro Custodibus代理作为服务运行(使用代理配置文件的/config目录)
  • 下载、验证和安装Pro Custodibus代理
  • 如果将此Dockerfile构建为一个容器,则可以运行它来代替通常的linuxserver/wireguard容器

    例如,如果您有一个docker-compose.yml,如下所示:

    # docker-compose.yml
    ---
    version: "2.1"
    services:
      wireguard:
        build: .
        container_name: wireguard
        cap_add:
          - NET_ADMIN
          - SYS_MODULE
        environment:
          - PUID=1000
          - PGID=1000
          - TZ=Etc/UTC
        volumes:
          - ./config:/config
          - /lib/modules:/lib/modules
        ports:
          - 51820:51820/udp
        sysctls:
          - net.ipv4.conf.all.src_valid_mark=1
    
    您可以将WireGuard和Pro Custodibus配置文件放在与Dockerfile和docker-compose.yml文件处于同一级别的
    config
    目录中,然后运行
    docker compose up

    $ tree
    .
    ├── docker-compose.yml
    ├── Dockerfile
    └── config
        ├── procustodibus.conf
        ├── procustodibus-setup.conf
        └── wg0.conf
    
    $ sudo docker-compose up
    Creating network "docker-wireguard_default" with the default driver
    Building wireguard
    Step 1/5 : FROM ghcr.io/linuxserver/wireguard
    ...
    Successfully built e4b8b8e8f2e3
    Successfully tagged docker-wireguard_wireguard:latest
    WARNING: Image for service wireguard was built because it did not already exist. To rebuild this image you must use `docker-compose build` or `docker-compose up --build`.
    Creating wireguard ... done
    Attaching to wireguard
    wireguard    | [s6-init] making user provided files available at /var/run/s6/etc...exited 0.
    ...
    wireguard    | [#] ip link set mtu 1420 up dev wg0