docker-ipsec-vpn-server

GitHub

Docker image to run an IPsec VPN server, with IPsec/L2TP, Cisco IPsec and IKEv2. Auto-generates server config and supports VPN client setup on Linux, Windows, macOS, iOS and Android.

RAW Compose
1. Pull Image docker pull hwdsl2/ipsec-vpn-server
2. 1-Click Launch Command docker run -d -p 500:500 --name docker-ipsec-vpn-server hwdsl2/ipsec-vpn-server
3. Compose Deployment docker compose up -d
docker-compose.yml
Download .yml
volumes:
  ikev2-vpn-data:

services:
  vpn:
    image: hwdsl2/ipsec-vpn-server
    restart: always
    env_file:
      - ./vpn.env
    ports:
      - "500:500/udp"
      - "4500:4500/udp"
    privileged: true
    hostname: ipsec-vpn-server
    container_name: ipsec-vpn-server
    volumes:
      - ikev2-vpn-data:/etc/ipsec.d
      - /lib/modules:/lib/modules:ro
    # To enable IPv6 support for IKEv2 clients, the Docker host must have a
    # public IPv6 address. Uncomment the network section below and configure
    # IPv6 in your Docker daemon (set "ipv6": true and "fixed-cidr-v6" in
    # /etc/docker/daemon.json), then re-create this container.
    # networks:
    #   vpnnet:

# networks:
#   vpnnet:
#     enable_ipv6: true
#     ipam:
#       config:
#         - subnet: fddd:1::/64