From 4902b5f351621fdc1a613656a40a795ea9a4241f Mon Sep 17 00:00:00 2001 From: Daan Date: Wed, 23 Oct 2024 23:47:00 +0200 Subject: [PATCH] Initial testing to update from version 4.0.3 to 4.0.4 have succeeded! --- docker/README.md | 41 +++++++++++++++++++++-------------------- 1 file changed, 21 insertions(+), 20 deletions(-) diff --git a/docker/README.md b/docker/README.md index 2160e7e..349424c 100644 --- a/docker/README.md +++ b/docker/README.md @@ -13,7 +13,7 @@ I have tried to embed some new features such as `isolate` and interface startup ## Getting the container running: -To get the container running you either pull the image from the repository, `dselen/wgdashboard:latest`.
+To get the container running you either pull the image from the repository, `donaldzou/wgdashboard:latest`.
From there either use the environment variables describe below as parameters or use the Docker Compose file: `compose.yaml`.
Be careful, the default generated WireGuard configuration file uses port 51820/udp. So use this port if you want to use it out of the box.
Otherwise edit the configuration file in `/etc/wireguard/wg0.conf`. @@ -22,14 +22,14 @@ An example of a simple command to get the container running is show below:
```shell docker run -d \ - --name wireguard-dashboard \ + --name wgdashboard \ --restart unless-stopped \ -e enable=wg0 \ -e isolate=wg0 \ -p 10086:10086/tcp \ -p 51820:51820/udp \ --cap-add NET_ADMIN \ - dselen/wgdashboard:latest + donaldzou/wgdashboard:latest ```
If you want to use Compose instead of a raw Docker command, refer to the example in the `compose.yaml` or the one pasted below: @@ -37,34 +37,38 @@ If you want to use Compose instead of a raw Docker command, refer to the example ```yaml services: - wireguard-dashboard: - image: dselen/wgdashboard:latest + wgdashboard: + image: donaldzou/wgdashboard:latest restart: unless-stopped - container_name: wire-dash + container_name: wgdashboard environment: - #- tz= + #- tz= #- global_dns= - - enable=none - - isolate=wg0 + #- enable= + #- isolate= #- public_ip= ports: - 10086:10086/tcp - 51820:51820/udp volumes: - conf:/etc/wireguard - - app:/opt/wireguarddashboard/app + - data:/data cap_add: - NET_ADMIN volumes: conf: - app: + data: ``` -If you want to customize the yaml, make sure the core stays the same, but for example volume PATHs can be freely changed.
+If you want to customize the yaml, make sure the core stays the same, but for example volume PATHs (ON THE HOST) can be freely changed.
This setup is just generic and will use the Docker volumes. +## Updating the container: + +Updating is right now in Alpha stage. I have got it to work, testing methods. + ## Working with the container and environment variables: Once the container is running, the installation process is essentially the same as running it on bare-metal.
@@ -76,7 +80,7 @@ So go to the assign TCP port in this case HTTP, like the default 10086 one in th | global_dns | Any IPv4 address, such as my personal recommendation: 9.9.9.9 (QUAD9). | `1.1.1.1` | `8.8.8.8` or any IP-Address that resolves DNS-names, and of course is reachable | Set the default DNS given to clients once they connect to the WireGuard tunnel, and for new peers, set to Cloudflare DNS for reliability. | enable | Anything, preferably an existing WireGuard interface name. | `none` | `wg0,wg2,wg13` | Enables or disables the starting of the WireGuard interface on container 'boot-up'. | isolate | Anything, preferably an existing WireGuard interface name. | `wg0` | `wg1,wg0` | For security premade `wg0` interface comes with this feature enabled by default. Declaring `isolate=none` in the Docker Compose file will remove this. The WireGuard interface itself IS able to reach the peers (Done through the `iptables` package). -| public_ip | Any IPv4 (public recommended) address, such as the one returned by default | Default uses the return of `curl ifconfig.me` | `23.50.131.156` | To reach your VPN from outside your own network, you need WG-Dashboard to know what your public IP-address is, otherwise it will generate faulty config files for clients. This happends because it is inside a Docker/Kubernetes container. In or outside of NAT is not relevant as long as the given IP-address is reachable from the internet or the target network. +| public_ip | Any IPv4 (public recommended) address, such as the one returned by default | Default uses the return of `curl ifconfig.me` | `89.20.83.118` | To reach your VPN from outside your own network, you need WG-Dashboard to know what your public IP-address is, otherwise it will generate faulty config files for clients. This happends because it is inside a Docker/Kubernetes container. In or outside of NAT is not relevant as long as the given IP-address is reachable from the internet or the target network. ## Be careful with: @@ -87,8 +91,9 @@ The latter opens up UDP ports from 51820 to 51830, so all ports in between as we To build the image yourself, you need to do a couple things:
1. Clone the Github repository containing the source code of WGDashboard including the docker directory. For example do: `git clone https://github.com/donaldzou/WGDashboard.git` -1. Navigate into the docker directory. -1. (Make sure you have Docker correctly installed, if not: [Click here](https://docs.docker.com/engine/install/)) and run: `docker build . -t :` as an example: `docker build . -t dselen/wgdashboard:latest`.
This will make Docker compile the image from the resources in the directory you mention, in this case the current one. Let it compile, it takes about a minute or maximally two. +1. Navigate into the cloned repository. +1. (Make sure you have Docker correctly installed, if not: [Click here](https://docs.docker.com/engine/install/)) and run: `docker build . -t :` as an example: `docker build . -t dselen/wgdashboard:latest`.
+This will make Docker compile the image from the resources in the directory you mention, in this case the source/root one. Let it compile, it takes only a couple seconds with a minute at most. 1. If all went well, see your image with `docker images`. Example below: ```shell @@ -99,8 +104,4 @@ dselen/wgdashboard latest c96fd96ee3b3 42 minutes ago 314MB ## Closing remarks: -For feedback please submit an issue to the repository. Or message dselen@nerthus.nl. - -## In Progress: - -Auto-Updating Capabilities, together with Donald I am working on it. \ No newline at end of file +For feedback please submit an issue to the repository. Or message dselen@nerthus.nl. \ No newline at end of file