tprasadtp / protonvpn-docker

ProtonVPN Wireguard Docker Image. Supports ARMv8 (64-bit ) and x86 (64-Bit).
GNU General Public License v3.0
276 stars 24 forks source link

[QUESTION]: Could not resolve host: protonwire-api.vercel.app #300

Closed Anthony-Eid closed 4 months ago

Anthony-Eid commented 4 months ago

Version

2.3/protonwire:latest

Support Request

Hi guys,

I'm trying to use this container to connect to proton vpn but keep running into "Could not resolve host: proton-api.vercel.app error.

I've check that the docker container is getting my private-key correctly, and that I could access https://protonwire-api.vercel.app/v1/server/node-nl-96.protonvpn.net via my web browser.

Here's my docker compose file

version: '2.3'
services:
  protonwire:
    container_name: protonwire
    # Use semver tags or sha256 hashes of manifests.
    # using latest tag can lead to issues when used with
    # automatic image updaters like watchtower/podman.
    image: ghcr.io/tprasadtp/protonwire:latest
    init: true
    restart: unless-stopped
    environment:
      # Quote this value as server name can contain '#'.
      PROTONVPN_SERVER: "node-nl-96.protonvpn.net"  # NL-FREE#100070
      # Set this to 1 to show debug logs for issue forms.
      DEBUG: "1"
      # Set this to 0 to disable kill-switch.
      KILL_SWITCH: "0"
    # NET_ADMIN capability is mandatory!
    cap_add:
      - NET_ADMIN
    # sysctl net.ipv4.conf.all.rp_filter is mandatory!
    # net.ipv6.conf.all.disable_ipv6 disables IPv6 as protonVPN does not support IPv6.
    # 'net.*' sysctls are not required on application containers,
    # as they share network stack with protonwire container.
    sysctls:
      net.ipv4.conf.all.rp_filter: 2
      net.ipv6.conf.all.disable_ipv6: 1
    volumes:
      - type: tmpfs
        target: /tmp
      - type: bind
        source: private-key
        target: /etc/protonwire/private-key
        read_only: true
    ports:
      - 8000:80

  caddy_proxy:
    image: caddy:latest
    network_mode: service:protonwire
    command: |
      caddy reverse-proxy \
      --change-host-header \
      --from :80 \
      --to https://ip.me:443

Here are the error messages via docker logs protonwire. The main things that sticks out to me are Server info file is missing - /tmp/protonwire.server.json, and that DNS is having issues being resolved. I've tried different proton ip addresses, and googling this but couldn't find out. I also checked my Pi hole to see if the DNS was being blocked, and it wasn't.

Does anyone have any suggestions for how I could fix this? Could it be something with the docker container not having the correct firewall settings? I'm on Fedora linux, which has SElinux enabled.

Code of Conduct & PII Redaction

Anthony-Eid commented 4 months ago

Solved by

  1. Getting a new api key
  2. changing the permissions of my private-key file with chmod 400
  3. Using default Proton dns server