diff --git a/docker-compose.yml b/docker-compose.yml index e2fa3e8..7cfda1a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -493,7 +493,7 @@ services: ipv4_address: 10.10.0.12 logging: *default-logging wp: - image: mercurykd/vpnbot-wp:1.1 + image: mercurykd/vpnbot-wp:1.2 build: dockerfile: dockerfile/warp.dockerfile args: @@ -503,7 +503,7 @@ services: devices: - /dev/net/tun:/dev/net/tun volumes: - - ./config/.profile:/root/.bashrc:ro + - ./config/.profile:/root/.ashrc:ro - ./ssh:/ssh - ./config/sshd_config:/etc/ssh/sshd_config - ./config:/config @@ -514,8 +514,11 @@ services: depends_on: php: condition: service_healthy - environment: - TZ: ${TZ} + env_file: + - path: ./.env + required: true # default + - path: ./override.env + required: false stop_grace_period: 1s command: ["/bin/sh", "/start_wp.sh"] networks: diff --git a/dockerfile/warp.dockerfile b/dockerfile/warp.dockerfile index 069d57f..650674b 100644 --- a/dockerfile/warp.dockerfile +++ b/dockerfile/warp.dockerfile @@ -1,6 +1,16 @@ -FROM ubuntu:22.04 -RUN apt update && apt install -y curl gpg socat jq lsb-release openssh-server \ +FROM ubuntu:22.04 AS build +RUN apt update && apt install -y curl gpg lsb-release \ && curl -fsSL https://pkg.cloudflareclient.com/pubkey.gpg | gpg --yes --dearmor --output /usr/share/keyrings/cloudflare-warp-archive-keyring.gpg \ && echo "deb [signed-by=/usr/share/keyrings/cloudflare-warp-archive-keyring.gpg] https://pkg.cloudflareclient.com/ $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/cloudflare-client.list \ - && apt update && apt install -y cloudflare-warp \ + && apt update && apt install -y cloudflare-warp + +FROM alpine:3.17 +ARG GLIBC_VERSION=2.34-r0 +COPY --from=build /usr/bin/warp-cli /usr/bin/warp-svc /usr/local/bin/ +RUN apk add --no-cache dbus-libs wget socat openssh-server jq curl \ + && mkdir /tmp/glibc-pkgs \ + && for PKG in glibc-$GLIBC_VERSION.apk glibc-bin-$GLIBC_VERSION.apk; do wget -q --directory-prefix /tmp/glibc-pkgs https://github.com/sgerrand/alpine-pkg-glibc/releases/download/$GLIBC_VERSION/$PKG; done \ + && apk add --no-cache --allow-untrusted --force-overwrite /tmp/glibc-pkgs/* \ + && rm -rf /tmp/glibc-pkgs \ + && /usr/glibc-compat/sbin/ldconfig /lib /usr/glibc-compat/lib \ && mkdir /root/.ssh diff --git a/makefile b/makefile index 3a0905a..a6c6f7d 100644 --- a/makefile +++ b/makefile @@ -31,7 +31,7 @@ up: # консоль сервиса ad: # консоль сервиса docker compose exec ad /bin/sh wp: # консоль сервиса - docker compose exec wp bash + docker compose exec wp /bin/sh proxy: # консоль сервиса docker compose exec proxy /bin/sh tg: # консоль сервиса diff --git a/scripts/start_wp.sh b/scripts/start_wp.sh index e65a357..f8b57eb 100644 --- a/scripts/start_wp.sh +++ b/scripts/start_wp.sh @@ -1,7 +1,6 @@ cat /ssh/key.pub > /root/.ssh/authorized_keys -echo 'HostKeyAlgorithms +ssh-rsa' >> /etc/ssh/sshd_config -echo 'PubkeyAcceptedKeyTypes +ssh-rsa' >> /etc/ssh/sshd_config -service ssh start +ssh-keygen -A +exec /usr/sbin/sshd -D -e "$@" & warp-svc > /dev/null & sleep 3 warp-cli --accept-tos registration new