From 916601160855af5cc1e88eb3eb6287705248adb1 Mon Sep 17 00:00:00 2001 From: mercury Date: Fri, 17 Feb 2023 02:00:35 +0400 Subject: [PATCH] universal OS version detection --- .env | 2 ++ docker-compose.yml | 12 ++++++++++++ docker-compose53.yml | 12 ++++++++++++ dockerfile/adguard.dockerfile | 5 ++++- dockerfile/shadowsocks.dockerfile | 5 ++++- dockerfile/wireguard.dockerfile | 5 ++++- makefile | 2 +- 7 files changed, 39 insertions(+), 4 deletions(-) diff --git a/.env b/.env index 8c224d1..b4d105b 100644 --- a/.env +++ b/.env @@ -2,3 +2,5 @@ TZ=Europe/Samara WGADDRESS=10.0.1.1/24 WGPORT=51820 SSPORT=8388 +SYSTEM=ubuntu +RELEASE=18.04 diff --git a/docker-compose.yml b/docker-compose.yml index fa55b2f..460d498 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -77,6 +77,9 @@ services: proxy: build: dockerfile: dockerfile/shadowsocks.dockerfile + args: + RELEASE: ${RELEASE} + SYSTEM: ${SYSTEM} volumes: - ./config/.profile:/root/.bashrc:ro - ./config/sslocal.json:/config.json @@ -96,6 +99,9 @@ services: wg: build: dockerfile: dockerfile/wireguard.dockerfile + args: + RELEASE: ${RELEASE} + SYSTEM: ${SYSTEM} volumes: - ./config/.profile:/root/.bashrc:ro - ./config/wg0.conf:/etc/wireguard/wg0.conf @@ -121,6 +127,9 @@ services: ad: build: dockerfile: dockerfile/adguard.dockerfile + args: + RELEASE: ${RELEASE} + SYSTEM: ${SYSTEM} volumes: - ./config/.profile:/root/.bashrc:ro - type: volume @@ -142,6 +151,9 @@ services: ss: build: dockerfile: dockerfile/shadowsocks.dockerfile + args: + RELEASE: ${RELEASE} + SYSTEM: ${SYSTEM} volumes: - ./config/.profile:/root/.bashrc:ro - ./config/ssserver.json:/config.json diff --git a/docker-compose53.yml b/docker-compose53.yml index 6134abb..9aa4f42 100644 --- a/docker-compose53.yml +++ b/docker-compose53.yml @@ -79,6 +79,9 @@ services: proxy: build: dockerfile: dockerfile/shadowsocks.dockerfile + args: + RELEASE: ${RELEASE} + SYSTEM: ${SYSTEM} volumes: - ./config/.profile:/root/.bashrc:ro - ./config/sslocal.json:/config.json @@ -98,6 +101,9 @@ services: wg: build: dockerfile: dockerfile/wireguard.dockerfile + args: + RELEASE: ${RELEASE} + SYSTEM: ${SYSTEM} volumes: - ./config/.profile:/root/.bashrc:ro - ./config/wg0.conf:/etc/wireguard/wg0.conf @@ -123,6 +129,9 @@ services: ad: build: dockerfile: dockerfile/adguard.dockerfile + args: + RELEASE: ${RELEASE} + SYSTEM: ${SYSTEM} volumes: - ./config/.profile:/root/.bashrc:ro - type: volume @@ -144,6 +153,9 @@ services: ss: build: dockerfile: dockerfile/shadowsocks.dockerfile + args: + RELEASE: ${RELEASE} + SYSTEM: ${SYSTEM} volumes: - ./config/.profile:/root/.bashrc:ro - ./config/ssserver.json:/config.json diff --git a/dockerfile/adguard.dockerfile b/dockerfile/adguard.dockerfile index fc09eba..85e96ac 100644 --- a/dockerfile/adguard.dockerfile +++ b/dockerfile/adguard.dockerfile @@ -1,4 +1,7 @@ -from ubuntu:18.04 +arg SYSTEM +arg RELEASE +from ${SYSTEM}:${RELEASE} +ENV DEBIAN_FRONTEND noninteractive run apt update && \ apt install -y git net-tools lsof ssh wget && \ wget https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.23/AdGuardHome_linux_amd64.tar.gz && \ diff --git a/dockerfile/shadowsocks.dockerfile b/dockerfile/shadowsocks.dockerfile index 1e13db8..6a473dd 100644 --- a/dockerfile/shadowsocks.dockerfile +++ b/dockerfile/shadowsocks.dockerfile @@ -1,4 +1,7 @@ -from ubuntu:18.04 +arg SYSTEM +arg RELEASE +from ${SYSTEM}:${RELEASE} +ENV DEBIAN_FRONTEND noninteractive run apt update && \ apt install -y ssh git net-tools run mkdir /root/.ssh && \ diff --git a/dockerfile/wireguard.dockerfile b/dockerfile/wireguard.dockerfile index 702aac2..be85e42 100644 --- a/dockerfile/wireguard.dockerfile +++ b/dockerfile/wireguard.dockerfile @@ -1,4 +1,7 @@ -from ubuntu:18.04 +arg SYSTEM +arg RELEASE +from ${SYSTEM}:${RELEASE} +ENV DEBIAN_FRONTEND noninteractive run apt update && \ apt install -y wireguard \ iproute2 \ diff --git a/makefile b/makefile index e8db655..32ffdae 100644 --- a/makefile +++ b/makefile @@ -5,7 +5,7 @@ hosts: unhosts # маппинг доменов на локалку unhosts: sed -i '/test.ru/d' /mnt/c/Windows/System32/drivers/etc/hosts u: # запуск контейнеров - docker compose up -d --build --force-recreate + RELEASE=$(shell lsb_release -rs) SYSTEM=$(shell lsb_release -is | tr '[:upper:]' '[:lower:]') docker compose up -d --build --force-recreate # sleep 1 # docker compose logs unit wg ss proxy d: # остановка контейнеров