Adguard: Init
This commit is contained in:
parent
85c14829c0
commit
bf41705208
2 changed files with 76 additions and 0 deletions
51
cfg/jobs/adguard.run
Executable file
51
cfg/jobs/adguard.run
Executable file
|
@ -0,0 +1,51 @@
|
||||||
|
#!/bin/env bash
|
||||||
|
# Upstream doc: https://adguard-dns.io/kb/adguard-home/getting-started/
|
||||||
|
set -euxo pipefail
|
||||||
|
|
||||||
|
IMAGE="ubuntu/24.04"
|
||||||
|
DIST="${IMAGE%%/*}"
|
||||||
|
VER="${IMAGE#*/}"
|
||||||
|
VER="${VER%/*}"
|
||||||
|
VER="${VER//./-}"
|
||||||
|
UPSTREAM_VER="0.107.54"
|
||||||
|
UPSTREAM_VER_DASH="${UPSTREAM_VER//./-}"
|
||||||
|
UPSTREAM_NAME="adguard"
|
||||||
|
SERIAL="1benoitjpnet"
|
||||||
|
CNAME="$UPSTREAM_NAME-$UPSTREAM_VER_DASH-$SERIAL-$DIST-$VER"
|
||||||
|
ALIAS="$UPSTREAM_NAME-$UPSTREAM_VER-$SERIAL"
|
||||||
|
|
||||||
|
cd "$WORKSPACE"
|
||||||
|
incus launch images:$IMAGE "$CNAME" --quiet
|
||||||
|
|
||||||
|
wait_network "$CNAME"
|
||||||
|
|
||||||
|
incus exec "$CNAME" -- bash -c '
|
||||||
|
apt-get update && apt-get upgrade -y && apt-get install -y --no-install-recommends wget
|
||||||
|
|
||||||
|
adduser \
|
||||||
|
--system \
|
||||||
|
--shell /bin/bash \
|
||||||
|
--gecos "AdGuard Home DNS Server" \
|
||||||
|
--group \
|
||||||
|
--disabled-password \
|
||||||
|
--home /opt/adguard \
|
||||||
|
adguard
|
||||||
|
|
||||||
|
cd /tmp && \
|
||||||
|
wget --quiet https://github.com/AdguardTeam/AdGuardHome/releases/download/v'"$UPSTREAM_VER"'/AdGuardHome_linux_amd64.tar.gz && \
|
||||||
|
tar -xzf AdGuardHome_linux_amd64.tar.gz -C /opt/adguard --strip-components=1 && \
|
||||||
|
rm AdGuardHome_linux_amd64.tar.gz
|
||||||
|
|
||||||
|
install -d -m 755 -o adguard -g adguard /opt/adguard/{data,config}
|
||||||
|
'
|
||||||
|
|
||||||
|
incus file push adguard.service "$CNAME"/etc/systemd/system/
|
||||||
|
incus exec "$CNAME" -- systemctl enable adguard
|
||||||
|
|
||||||
|
laminarc run incus_publish \
|
||||||
|
CNAME="$CNAME" \
|
||||||
|
UPSTREAM=$UPSTREAM_NAME \
|
||||||
|
UPSTREAM_VER=$UPSTREAM_VER \
|
||||||
|
IMAGE=$IMAGE \
|
||||||
|
SERIAL=$SERIAL \
|
||||||
|
ALIAS=$ALIAS
|
25
run/adguard/workspace/adguard.service
Normal file
25
run/adguard/workspace/adguard.service
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
[Unit]
|
||||||
|
Description=AdGuard Home: Network-level blocker
|
||||||
|
ConditionFileIsExecutable=/opt/adguard/AdGuardHome
|
||||||
|
|
||||||
|
After=syslog.target network-online.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
User=adguard
|
||||||
|
Group=adguard
|
||||||
|
StartLimitInterval=5
|
||||||
|
StartLimitBurst=10
|
||||||
|
ExecStart=/tmp/AdGuardHome/AdGuardHome "-s" "run" "-c" "/etc/adguard/adguard.yaml"
|
||||||
|
|
||||||
|
WorkingDirectory=/opt/adguard
|
||||||
|
|
||||||
|
StandardOutput=journal
|
||||||
|
StandardError=journal
|
||||||
|
|
||||||
|
Restart=always
|
||||||
|
|
||||||
|
RestartSec=10
|
||||||
|
EnvironmentFile=-/etc/sysconfig/AdGuardHome
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
Loading…
Add table
Reference in a new issue