vi tinyproxy.conf
User nobody Group nogroup Port 3128 Listen 0.0.0.0 Timeout 600 LogFile "/var/log/tinyproxy/tinyproxy.log" LogLevel Info PidFile "/var/run/tinyproxy.pid" MaxClients 100 Allow 127.0.0.1 Allow 192.168.0.0/16 Allow 10.0.0.0/8 ViaProxyName "tinyproxy" ConnectPort 443 ConnectPort 563
Allow 172.16.0.0/16
ConnectPort 8006
vi docker-compose.yml
services: tinyproxy: image: vimagick/tinyproxy hostname: tinyproxy container_name: tinyproxy environment: - TZ=Asia/Taipei ports: - "3128:3128" volumes: - ./tinyproxy.conf:/etc/tinyproxy/tinyproxy.conf:ro - ./logs:/var/log restart: always command: sh -c "mkdir -p /var/log/tinyproxy && chown -R nobody:nogroup /var/log/tinyproxy && tinyproxy -d" watchtower: container_name: watchtower image: containrrr/watchtower volumes: - /var/run/docker.sock:/var/run/docker.sock environment: - TZ=Asia/Taipei - WATCHTOWER_SCHEDULE=0 45 23 * * * - WATCHTOWER_CLEANUP=true labels: - "com.centurylinklabs.watchtower.enable=true" restart: unless-stopped
docker compose up -d
docker compose logs -f
# tail -f ~/logs/tinyproxy/tinyproxy.log INFO Sep 26 05:48:45.689 [1]: opensock: getaddrinfo returned for 192.168.11.1:80 CONNECT Sep 26 05:48:45.690 [1]: Established connection to host "192.168.11.1" using file descriptor 6. INFO Sep 26 05:48:45.692 [1]: Closed connection between local client (fd:5) and remote client (fd:6) CONNECT Sep 26 05:48:48.630 [1]: Connect (file descriptor 5): 192.168.11.8 CONNECT Sep 26 05:48:48.634 [1]: Request (file descriptor 5): GET http://192.168.11.1/system_status_data.asp HTTP/1.1 INFO Sep 26 05:48:48.635 [1]: No upstream proxy for 192.168.11.1 INFO Sep 26 05:48:48.635 [1]: opensock: opening connection to 192.168.11.1:80 INFO Sep 26 05:48:48.636 [1]: opensock: getaddrinfo returned for 192.168.11.1:80 CONNECT Sep 26 05:48:48.637 [1]: Established connection to host "192.168.11.1" using file descriptor 6. INFO Sep 26 05:48:48.639 [1]: Closed connection between local client (fd:5) and remote client (fd:6) :
apk add logrotate
vi /etc/logrotate.d/tinyproxy
/root/logs/tinyproxy/tinyproxy.log { daily rotate 365 compress delaycompress missingok notifempty create 644 root root postrotate docker exec tinyproxy kill -HUP $(docker exec tinyproxy cat /var/run/tinyproxy.pid 2>/dev/null) 2>/dev/null || true endscript }
logrotate -d /etc/logrotate.d/tinyproxy