version: "3"
services:
  wg-easy:
    container_name: ${CONTAINER_NAME}
    restart: always
    networks:
      - 1panel-network
    environment:
      - WG_HOST=${HOST_ADDRESS}
      - PASSWORD=${WEBUI_PWD}
      - WG_PORT=${WIREGUARD_PORT}
      # Optional:
      # - WG_DEFAULT_ADDRESS=10.8.0.x
      # - WG_DEFAULT_DNS=1.1.1.1
      # - WG_MTU=1420
      # - WG_ALLOWED_IPS=192.168.15.0/24, 10.0.1.0/24
      # - WG_PRE_UP=echo "Pre Up" > /etc/wireguard/pre-up.txt
      # - WG_POST_UP=echo "Post Up" > /etc/wireguard/post-up.txt
      # - WG_PRE_DOWN=echo "Pre Down" > /etc/wireguard/pre-down.txt
      # - WG_POST_DOWN=echo "Post Down" > /etc/wireguard/post-down.txt
    volumes:
      - ${DATA_PATH}:/etc/wireguard
    ports:
      - "${WIREGUARD_PORT}:${WIREGUARD_PORT}/udp"
      - "${PANEL_APP_PORT_HTTP}:51821/tcp"
    cap_add:
      - NET_ADMIN
      - SYS_MODULE
    sysctls:
      - net.ipv4.ip_forward=1
      - net.ipv4.conf.all.src_valid_mark=1
    image: weejewel/wg-easy:nightly
    labels:  
      createdBy: "Apps"

networks:  
  1panel-network:  
    external: true
