diff --git a/.gitea/workflows/deploy-ru-vps.yml b/.gitea/workflows/deploy-ru-vps.yml index b7f41d0..eb95e5c 100644 --- a/.gitea/workflows/deploy-ru-vps.yml +++ b/.gitea/workflows/deploy-ru-vps.yml @@ -1,28 +1,33 @@ name: Deploy ru-vps on: - workflow_dispatch: - inputs: - stack: - description: "Stack to deploy (leave empty to reconcile all)" - required: false + workflow_dispatch: + inputs: + stack: + description: "Stack to deploy (leave empty to reconcile all)" + required: false - push: - paths: - - ".gitea/workflows/deploy-ru-vps.yml" - - "ru-vps/**" - schedule: - - cron: "0 4 * * *" + push: + paths: + - ".gitea/workflows/deploy-ru-vps.yml" + - "ru-vps/**" + schedule: + - cron: "0 4 * * *" jobs: - deploy: - runs-on: ru-vps - steps: - - name: Sync repo - run: | - git config --global --replace-all safe.directory /opt/services - git -C /opt/services pull origin main --ff-only - chown -R 1000:100 /opt/services + deploy: + runs-on: ru-vps + steps: + - name: Sync repo + run: | + git config --global --replace-all safe.directory /opt/services + git -C /opt/services pull origin main --ff-only + chown -R 1000:100 /opt/services - - name: Deploy stacks - run: /opt/services/scripts/deploy.sh ru-vps "${{ inputs.stack }}" + - name: Write squid secrets + run: | + echo "PROXY_USER=${{ secrets.PROXY_USER }}" > /opt/services/ru-vps/squid/.env + echo "PROXY_PASS=${{ secrets.PROXY_PASS }}" >> /opt/services/ru-vps/squid/.env + + - name: Deploy stacks + run: /opt/services/scripts/deploy.sh ru-vps "${{ inputs.stack }}" diff --git a/ru-vps/squid/docker-compose.yml b/ru-vps/squid/docker-compose.yml index 9ed8182..73f35d2 100644 --- a/ru-vps/squid/docker-compose.yml +++ b/ru-vps/squid/docker-compose.yml @@ -6,3 +6,14 @@ services: - ./squid.conf:/etc/squid/squid.conf:ro - ./passwd:/etc/squid/passwd:ro restart: unless-stopped + + 3proxy: + image: 3proxy/3proxy + network_mode: host + environment: + - PROXY_USER=${PROXY_USER} + - PROXY_PASS=${PROXY_PASS} + volumes: + - ./entrypoint.sh:/entrypoint.sh:ro + entrypoint: sh /entrypoint.sh + restart: unless-stopped diff --git a/ru-vps/squid/entrypoint.sh b/ru-vps/squid/entrypoint.sh new file mode 100644 index 0000000..8c142f7 --- /dev/null +++ b/ru-vps/squid/entrypoint.sh @@ -0,0 +1,10 @@ +#!/bin/sh +cat > /tmp/3proxy.cfg << EOF +daemon +log /dev/stdout +auth strong +users ${PROXY_USER}:CL:${PROXY_PASS} +allow ${PROXY_USER} +socks -p1080 +EOF +exec 3proxy /tmp/3proxy.cfg