changed vpn docker to a systemd service dockerized
This commit is contained in:
parent
b7c6825268
commit
af0ac3bfbf
@ -1,22 +1,19 @@
|
|||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
services.docker-compose = {
|
environment.etc."docker/vpn/docker-compose.yml".source = ./vpn.yml;
|
||||||
enable = true;
|
|
||||||
containers = {
|
systemd.services.wireguard = {
|
||||||
wireguard = {
|
description = "Wireguard Docker Compose Service";
|
||||||
image = "lscr.io/linuxserver/wireguard:latest";
|
after = [ "network-online.target" ];
|
||||||
containerName = "wireguard";
|
wants = [ "network-online.target" ];
|
||||||
capAdd = [ "NET_ADMIN" ];
|
serviceConfig = {
|
||||||
environment = {
|
ExecStart = "${pkgs.docker-compose}/bin/docker-compose -f /etc/docker/vpn/docker-compose.yml up";
|
||||||
PEERS = "fold6,pc,laptop";
|
ExecStop = "${pkgs.docker-compose}/bin/docker-compose -f /etc/docker/vpn/docker-compose.yml down";
|
||||||
};
|
WorkingDirectory = "/etc/docker/vpn";
|
||||||
volumes = [ "./wireguard:/config" ];
|
Restart = "always";
|
||||||
ports = [ "51820:51820/udp" ];
|
RestartSec = 10;
|
||||||
sysctls = {
|
|
||||||
"net.ipv4.conf.all.src_valid_mark" = 1;
|
|
||||||
};
|
|
||||||
restartPolicy = "unless-stopped";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
18
config/nixos/docker/vpn.yml
Normal file
18
config/nixos/docker/vpn.yml
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
version: '3.8'
|
||||||
|
|
||||||
|
services:
|
||||||
|
wireguard:
|
||||||
|
image: lscr.io/linuxserver/wireguard:latest
|
||||||
|
container_name: wireguard
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN
|
||||||
|
environment:
|
||||||
|
- PEERS=fold6,pc,laptop
|
||||||
|
volumes:
|
||||||
|
- ./wireguard:/config
|
||||||
|
ports:
|
||||||
|
- 51820:51820/udp
|
||||||
|
sysctls:
|
||||||
|
- net.ipv4.conf.all.src_valid_mark=1
|
||||||
|
restart: unless-stopped
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user