├── .gitignore ├── README.md ├── entrypoint.sh ├── Dockerfile └── docker-compose.yml /.gitignore: -------------------------------------------------------------------------------- 1 | .env 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # How to use 2 | ```sh 3 | $ docker-compose up --abort-on-container-exit 4 | ``` 5 | -------------------------------------------------------------------------------- /entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | ( echo yes; echo $ANYCONNECT_PASSWORD ) | openconnect $ANYCONNECT_SERVER --user=$ANYCONNECT_USER --timestamp 3 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM alpine:3.5 2 | RUN apk add openconnect --no-cache --repository http://dl-3.alpinelinux.org/alpine/edge/testing/ --allow-untrusted 3 | ADD entrypoint.sh /entrypoint.sh 4 | HEALTHCHECK --interval=10s --timeout=10s --start-period=10s \ 5 | CMD /sbin/ifconfig tun0 6 | CMD ["/entrypoint.sh"] 7 | -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '3' 2 | 3 | services: 4 | vpn: 5 | container_name: vpn 6 | image: jetbrainsinfra/docker-anyconnect-vpn 7 | environment: 8 | - ANYCONNECT_SERVER=${ANYCONNECT_SERVER} 9 | - ANYCONNECT_USER=${ANYCONNECT_USER} 10 | - ANYCONNECT_PASSWORD=${ANYCONNECT_PASSWORD} 11 | networks: 12 | - default 13 | privileged: true 14 | cap_add: 15 | - NET_ADMIN 16 | restart: unless-stopped 17 | security_opt: 18 | - label:disable 19 | packer: 20 | container_name: packer 21 | image: alpine 22 | tty: true 23 | entrypoint: /bin/sleep 10 24 | depends_on: 25 | - vpn 26 | network_mode: "service:vpn" 27 | --------------------------------------------------------------------------------