From 602f0dbca3e1fad36aea59dc46619ec4ae79ad7c Mon Sep 17 00:00:00 2001 From: root Date: Wed, 22 Dec 2021 10:34:14 +0800 Subject: [PATCH 1/7] add Dockerfile --- src/Dockerfile | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 src/Dockerfile diff --git a/src/Dockerfile b/src/Dockerfile new file mode 100644 index 0000000..0908ccb --- /dev/null +++ b/src/Dockerfile @@ -0,0 +1,13 @@ +FROM lscr.io/linuxserver/wireguard + +run apt-get update && \ + apt-get install -y python3 python3-pip python3-dev python3-setuptools libjpeg-dev \ + && rm -rf /var/lib/apt/lists/* + +COPY . /opt/WGDashboard +RUN pip3 install -r /opt/WGDashboard/requirements.txt --no-cache-dir + + +EXPOSE 10086 + +CMD ["python3", "/opt/WGDashboard/dashboard.py > log/run.log 2>&1 &"] \ No newline at end of file From daaa50fd9e2ab5378f0b1b001beca6602476d604 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 22 Dec 2021 10:50:19 +0800 Subject: [PATCH 2/7] add Dockerfile --- src/Dockerfile | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 src/Dockerfile diff --git a/src/Dockerfile b/src/Dockerfile old mode 100644 new mode 100755 From 9d7f986343847c347c50e10f0817ef6198eb78ae Mon Sep 17 00:00:00 2001 From: heiye1024 Date: Sat, 22 Jan 2022 16:06:19 +0800 Subject: [PATCH 3/7] Update Dockerfile --- src/Dockerfile | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/src/Dockerfile b/src/Dockerfile index 0908ccb..2b1f1c1 100755 --- a/src/Dockerfile +++ b/src/Dockerfile @@ -1,13 +1,25 @@ -FROM lscr.io/linuxserver/wireguard +FROM python:3.10.2-alpine3.15 -run apt-get update && \ - apt-get install -y python3 python3-pip python3-dev python3-setuptools libjpeg-dev \ - && rm -rf /var/lib/apt/lists/* +run apk apk --update-cache upgrade && add --no-cache gcc g++ libffi-dev jpeg-dev zlib-dev libjpeg wireguard-tools iptables ip6tables inotify-tools -COPY . /opt/WGDashboard -RUN pip3 install -r /opt/WGDashboard/requirements.txt --no-cache-dir +RUN mkdir -p /etc/wireguard/ + +# configure wireguard +RUN wg genkey | tee /etc/wireguard/privatekey | wg pubkey | tee /etc/wireguard/publick + + + +RUN cd /etc/wireguard/ && echo "[Interface]" >> wg0.conf && echo -n "PrivateKey = " >> wg0.conf && cat privatekey >> wg0.conf && cat privatekey | wg pubkey >> wg0.conf \ + && echo "ListenPort = 51820" >> wg0.conf && echo "Address = 10.1.1.1/32" >> wg0.conf && chmod 700 wg0.conf + +COPY . /opt/WGDashboard/src +RUN pip3 install -r /opt/WGDashboard/src/requirements.txt --no-cache-dir + +#RUN cd /opt/WGDashboard/src + +WORKDIR /opt/WGDashboard/src EXPOSE 10086 +EXPOSE 51820/udp -CMD ["python3", "/opt/WGDashboard/dashboard.py > log/run.log 2>&1 &"] \ No newline at end of file From f7603dff65e793511390eefec7077c9db3dc91b7 Mon Sep 17 00:00:00 2001 From: heiye1024 Date: Sat, 22 Jan 2022 16:07:09 +0800 Subject: [PATCH 4/7] Create docker-compose.yaml --- src/docker-compose.yaml | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 src/docker-compose.yaml diff --git a/src/docker-compose.yaml b/src/docker-compose.yaml new file mode 100644 index 0000000..d42a173 --- /dev/null +++ b/src/docker-compose.yaml @@ -0,0 +1,13 @@ +version: "3.7" +services: + + web: + build: + context: . + command: python dashboard.py + restart: unless-stopped + ports: + - 10086:10086 + - 51820:51820/udp + sysctls: + - net.ipv4.conf.all.src_valid_mark=1 From b3a5fd9c6cce0635fedca4e375f8b44e21bb100f Mon Sep 17 00:00:00 2001 From: root Date: Mon, 24 Jan 2022 09:46:05 +0800 Subject: [PATCH 5/7] fix docker --- src/Dockerfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Dockerfile b/src/Dockerfile index 2b1f1c1..9a0444b 100755 --- a/src/Dockerfile +++ b/src/Dockerfile @@ -1,6 +1,7 @@ FROM python:3.10.2-alpine3.15 -run apk apk --update-cache upgrade && add --no-cache gcc g++ libffi-dev jpeg-dev zlib-dev libjpeg wireguard-tools iptables ip6tables inotify-tools +RUN apk --update-cache upgrade && apk add --no-cache gcc g++ libffi-dev jpeg-dev zlib-dev libjpeg wireguard-tools iptables ip6tables inotify-tools \ + && rm -rf /var/cache/apk/* RUN mkdir -p /etc/wireguard/ From c9b9ef3c3f77839e71ee681b20c9bbd7b969ed70 Mon Sep 17 00:00:00 2001 From: Aidan Date: Mon, 24 Jan 2022 10:47:43 +0800 Subject: [PATCH 6/7] fix docker --- src/Dockerfile | 2 +- src/docker-compose.yaml | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/Dockerfile b/src/Dockerfile index 9a0444b..bc32927 100755 --- a/src/Dockerfile +++ b/src/Dockerfile @@ -10,7 +10,7 @@ RUN wg genkey | tee /etc/wireguard/privatekey | wg pubkey | tee /etc/wireguard -RUN cd /etc/wireguard/ && echo "[Interface]" >> wg0.conf && echo -n "PrivateKey = " >> wg0.conf && cat privatekey >> wg0.conf && cat privatekey | wg pubkey >> wg0.conf \ +RUN cd /etc/wireguard/ && echo "[Interface]" >> wg0.conf && echo -n "PrivateKey = " >> wg0.conf && cat privatekey >> wg0.conf \ && echo "ListenPort = 51820" >> wg0.conf && echo "Address = 10.1.1.1/32" >> wg0.conf && chmod 700 wg0.conf COPY . /opt/WGDashboard/src diff --git a/src/docker-compose.yaml b/src/docker-compose.yaml index d42a173..db18a3b 100644 --- a/src/docker-compose.yaml +++ b/src/docker-compose.yaml @@ -4,7 +4,12 @@ services: web: build: context: . + container_name: WGDashboard + cap_add: + - NET_ADMIN + - SYS_MODULE command: python dashboard.py + #command: gunicorn --bind 0.0.0.0:10086 dashboard:app restart: unless-stopped ports: - 10086:10086 From 9ad638733a28eb4ae4c652402ba09741185d315b Mon Sep 17 00:00:00 2001 From: Aidan Date: Mon, 24 Jan 2022 17:23:37 +0800 Subject: [PATCH 7/7] fix docker --- src/Dockerfile | 13 ++++++++----- src/docker-compose.yaml | 2 ++ 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/Dockerfile b/src/Dockerfile index bc32927..8e9bed8 100755 --- a/src/Dockerfile +++ b/src/Dockerfile @@ -1,4 +1,5 @@ -FROM python:3.10.2-alpine3.15 +FROM python:3.10.2-alpine3.15 as base + RUN apk --update-cache upgrade && apk add --no-cache gcc g++ libffi-dev jpeg-dev zlib-dev libjpeg wireguard-tools iptables ip6tables inotify-tools \ && rm -rf /var/cache/apk/* @@ -13,11 +14,13 @@ RUN wg genkey | tee /etc/wireguard/privatekey | wg pubkey | tee /etc/wireguard RUN cd /etc/wireguard/ && echo "[Interface]" >> wg0.conf && echo -n "PrivateKey = " >> wg0.conf && cat privatekey >> wg0.conf \ && echo "ListenPort = 51820" >> wg0.conf && echo "Address = 10.1.1.1/32" >> wg0.conf && chmod 700 wg0.conf + +COPY requirements.txt /opt/wgdashboard/ +RUN pip3 install -r /opt/wgdashboard/requirements.txt --no-cache-dir + + +FROM base COPY . /opt/WGDashboard/src -RUN pip3 install -r /opt/WGDashboard/src/requirements.txt --no-cache-dir - -#RUN cd /opt/WGDashboard/src - WORKDIR /opt/WGDashboard/src diff --git a/src/docker-compose.yaml b/src/docker-compose.yaml index db18a3b..3921d69 100644 --- a/src/docker-compose.yaml +++ b/src/docker-compose.yaml @@ -11,6 +11,8 @@ services: command: python dashboard.py #command: gunicorn --bind 0.0.0.0:10086 dashboard:app restart: unless-stopped + volumes: + - ./dashboard.py:/opt/WGDashboard/src/dashboard.py:rw ports: - 10086:10086 - 51820:51820/udp