Compare commits
No commits in common. "main" and "v1.0.0" have entirely different histories.
6 changed files with 16 additions and 50 deletions
2
.github/workflows/autorelease.yml
vendored
2
.github/workflows/autorelease.yml
vendored
|
@ -11,6 +11,6 @@ jobs:
|
||||||
name: Build image
|
name: Build image
|
||||||
steps:
|
steps:
|
||||||
- name: 🚀 Release new version
|
- name: 🚀 Release new version
|
||||||
uses: softprops/action-gh-release@v2
|
uses: softprops/action-gh-release@v1
|
||||||
with:
|
with:
|
||||||
generate_release_notes: true
|
generate_release_notes: true
|
||||||
|
|
4
.github/workflows/autotag.yml
vendored
4
.github/workflows/autotag.yml
vendored
|
@ -6,14 +6,14 @@ on:
|
||||||
- main
|
- main
|
||||||
paths:
|
paths:
|
||||||
- "Dockerfile"
|
- "Dockerfile"
|
||||||
- "entrypoint.sh"
|
- "tailscale.sh"
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
auto-tag:
|
auto-tag:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: ⤵️ Check out code
|
- name: ⤵️ Check out code
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v3
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
token: ${{ secrets.GH_PAT }}
|
token: ${{ secrets.GH_PAT }}
|
||||||
|
|
12
.github/workflows/build.yml
vendored
12
.github/workflows/build.yml
vendored
|
@ -14,17 +14,17 @@ jobs:
|
||||||
name: Build image
|
name: Build image
|
||||||
steps:
|
steps:
|
||||||
- name: 📥 Checkout the repository
|
- name: 📥 Checkout the repository
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
- name: 🏗 Set up QEMU
|
- name: 🏗 Set up QEMU
|
||||||
uses: docker/setup-qemu-action@v3
|
uses: docker/setup-qemu-action@v1
|
||||||
|
|
||||||
- name: 🏗 Set up Docker Buildx
|
- name: 🏗 Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@v3
|
uses: docker/setup-buildx-action@v1
|
||||||
|
|
||||||
- name: 🪄 Extract metadata (tags, labels)
|
- name: 🪄 Extract metadata (tags, labels)
|
||||||
id: meta
|
id: meta
|
||||||
uses: docker/metadata-action@v5
|
uses: docker/metadata-action@v3
|
||||||
with:
|
with:
|
||||||
images: |
|
images: |
|
||||||
ghcr.io/${{ github.repository }}
|
ghcr.io/${{ github.repository }}
|
||||||
|
@ -36,14 +36,14 @@ jobs:
|
||||||
|
|
||||||
- name: 🔓 Registry login
|
- name: 🔓 Registry login
|
||||||
if: github.event_name == 'push'
|
if: github.event_name == 'push'
|
||||||
uses: docker/login-action@v3.1.0
|
uses: docker/login-action@v1.14.1
|
||||||
with:
|
with:
|
||||||
registry: ghcr.io
|
registry: ghcr.io
|
||||||
username: ${{ github.repository_owner }}
|
username: ${{ github.repository_owner }}
|
||||||
password: ${{ secrets.GITHUB_TOKEN }}
|
password: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
- name: 🛠️ Build image
|
- name: 🛠️ Build image
|
||||||
uses: docker/build-push-action@v5
|
uses: docker/build-push-action@v2
|
||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
file: ./Dockerfile
|
file: ./Dockerfile
|
||||||
|
|
6
.github/workflows/lint.yml
vendored
6
.github/workflows/lint.yml
vendored
|
@ -11,7 +11,7 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: ⤵️ Check out code
|
- name: ⤵️ Check out code
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
- name: 🚀 Run yamllint
|
- name: 🚀 Run yamllint
|
||||||
uses: reviewdog/action-yamllint@v1
|
uses: reviewdog/action-yamllint@v1
|
||||||
|
@ -24,7 +24,7 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: ⤵️ Check out code
|
- name: ⤵️ Check out code
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
- name: 🚀 Run hadolint
|
- name: 🚀 Run hadolint
|
||||||
uses: reviewdog/action-hadolint@v1
|
uses: reviewdog/action-hadolint@v1
|
||||||
|
@ -36,7 +36,7 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: ⤵️ Check out code
|
- name: ⤵️ Check out code
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
- name: 🚀 Run shellcheck
|
- name: 🚀 Run shellcheck
|
||||||
uses: reviewdog/action-shellcheck@v1
|
uses: reviewdog/action-shellcheck@v1
|
||||||
|
|
10
Dockerfile
10
Dockerfile
|
@ -1,12 +1,10 @@
|
||||||
FROM ghcr.io/wg-easy/wg-easy:12
|
FROM weejewel/wg-easy:5
|
||||||
|
|
||||||
# hadolint ignore=DL3022,DL3023
|
# hadolint ignore=DL3022,DL3023
|
||||||
COPY --from=mindflavor/prometheus-wireguard-exporter:3.6.6 /usr/local/bin/prometheus_wireguard_exporter /usr/local/bin/
|
COPY --from=mindflavor/prometheus-wireguard-exporter:3.5.1 /usr/local/bin/prometheus_wireguard_exporter /usr/local/bin/
|
||||||
|
|
||||||
# hadolint ignore=SC2016
|
RUN apk add -U --no-cache \
|
||||||
RUN sed \
|
wireguard-tools=1.0.20200102-r0
|
||||||
-i '1,/^\[Peer\]/{s//[Peer]\n# friendly_name = ${client.name}\n# (${clientId})/}' \
|
|
||||||
lib/WireGuard.js
|
|
||||||
|
|
||||||
COPY entrypoint.sh /app/entrypoint.sh
|
COPY entrypoint.sh /app/entrypoint.sh
|
||||||
RUN chmod +x /app/entrypoint.sh
|
RUN chmod +x /app/entrypoint.sh
|
||||||
|
|
32
README.md
32
README.md
|
@ -1,32 +0,0 @@
|
||||||
# wg-easy-extended
|
|
||||||
|
|
||||||
All-in-one: [wg-easy](https://github.com/wg-easy/wg-easy) + [prometheus-wireguard-exporter](https://github.com/MindFlavor/prometheus_wireguard_exporter)
|
|
||||||
|
|
||||||
## Run
|
|
||||||
|
|
||||||
<pre>
|
|
||||||
$ docker run -d \
|
|
||||||
--name=wg-easy-extended \
|
|
||||||
-e WG_HOST=<b>🚨YOUR_SERVER_IP</b> \
|
|
||||||
-e PASSWORD=<b>🚨YOUR_ADMIN_PASSWORD</b> \
|
|
||||||
-v ~/.wg-easy:/etc/wireguard \
|
|
||||||
-p 51820:51820/udp \
|
|
||||||
-p 51821:51821/tcp \
|
|
||||||
-p 9586:9586/tcp \
|
|
||||||
--cap-add=NET_ADMIN \
|
|
||||||
--cap-add=SYS_MODULE \
|
|
||||||
--sysctl="net.ipv4.conf.all.src_valid_mark=1" \
|
|
||||||
--sysctl="net.ipv4.ip_forward=1" \
|
|
||||||
--restart unless-stopped \
|
|
||||||
ghcr.io/tolkonepiu/wg-easy-extended
|
|
||||||
</pre>
|
|
||||||
|
|
||||||
> 💡 Replace `YOUR_SERVER_IP` with your WAN IP, or a Dynamic DNS hostname.
|
|
||||||
>
|
|
||||||
> 💡 Replace `YOUR_ADMIN_PASSWORD` with a password to log in on the Web UI.
|
|
||||||
|
|
||||||
* Web UI - `http://0.0.0.0:51821`
|
|
||||||
|
|
||||||
* Exporter metrics - `http://0.0.0.0:9586/metrics`
|
|
||||||
|
|
||||||
> 💡 Your configuration files will be saved in `~/.wg-easy`
|
|
Loading…
Add table
Reference in a new issue