This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [SonarSource/sonarqube-scan-action](https://github.com/SonarSource/sonarqube-scan-action) | action | major | `v7.2.1` → `v8.2.1` | --- ### Release Notes <details> <summary>SonarSource/sonarqube-scan-action (SonarSource/sonarqube-scan-action)</summary> ### [`v8.2.1`](https://github.com/SonarSource/sonarqube-scan-action/releases/tag/v8.2.1) [Compare Source](https://github.com/SonarSource/sonarqube-scan-action/compare/v8.2...v8.2.1) #### What's Changed ##### Bug fix - [SQSCANGHA-156](https://sonarsource.atlassian.net/browse/SQSCANGHA-156) GPG signature verification fails when temporary directory path is too long **Full Changelog**: <https://github.com/SonarSource/sonarqube-scan-action/compare/v8.2.0...v8.2.1> ### [`v8.2.0`](https://github.com/SonarSource/sonarqube-scan-action/releases/tag/v8.2.0) [Compare Source](https://github.com/SonarSource/sonarqube-scan-action/compare/v8.2...v8.2) #### What's Changed - SQSCANGHA-149 Add scannerBinariesAuthHeader input by [@​henryju](https://github.com/henryju) in [#​246](https://github.com/SonarSource/sonarqube-scan-action/pull/246) - SQSCANGHA-88 Deprecate the SONARCLOUD\_URL env variable support by [@​henryju](https://github.com/henryju) in [#​249](https://github.com/SonarSource/sonarqube-scan-action/pull/249) - SQSCANGHA-84 Remove outdated wget/curl references by [@​henryju](https://github.com/henryju) in [#​248](https://github.com/SonarSource/sonarqube-scan-action/pull/248) - SQSCANGHA-135 Fix scanner binaries always re-downloaded due to incompatible 4-part version by [@​henryju](https://github.com/henryju) in [#​250](https://github.com/SonarSource/sonarqube-scan-action/pull/250) - SQSCANGHA-127 Rename downloaded file to .zip before extraction on Windows by [@​henryju](https://github.com/henryju) in [#​251](https://github.com/SonarSource/sonarqube-scan-action/pull/251) **Full Changelog**: <https://github.com/SonarSource/sonarqube-scan-action/compare/v8...v8.2.0> ### [`v8.2`](https://github.com/SonarSource/sonarqube-scan-action/compare/v8.1.0...v8.2) [Compare Source](https://github.com/SonarSource/sonarqube-scan-action/compare/v8.1.0...v8.2) ### [`v8.1.0`](https://github.com/SonarSource/sonarqube-scan-action/releases/tag/v8.1.0) [Compare Source](https://github.com/SonarSource/sonarqube-scan-action/compare/v8.1.0...v8.1.0) #### What's Changed - SQSCANGHA-146 Add proxy support for GPG keyserver access by [@​henryju](https://github.com/henryju) in [#​244](https://github.com/SonarSource/sonarqube-scan-action/pull/244) - SQSCANGHA-148 Update SonarScanner CLI to 8.1.0.6389 by [@​github-actions](https://github.com/github-actions)\[bot] in [#​232](https://github.com/SonarSource/sonarqube-scan-action/pull/232) **Full Changelog**: <https://github.com/SonarSource/sonarqube-scan-action/compare/v8...v8.1.0> ### [`v8.1`](https://github.com/SonarSource/sonarqube-scan-action/compare/v8...v8.1.0) [Compare Source](https://github.com/SonarSource/sonarqube-scan-action/compare/v8...v8.1.0) ### [`v8.0.0`](https://github.com/SonarSource/sonarqube-scan-action/releases/tag/v8.0.0) [Compare Source](https://github.com/SonarSource/sonarqube-scan-action/compare/v8...v8) #### What's Changed ##### Breaking change - SQSCANGHA-145 Set skipSignatureVerification default value to false by [@​antoine-vinot-sonarsource](https://github.com/antoine-vinot-sonarsource) in [#​241](https://github.com/SonarSource/sonarqube-scan-action/pull/241) **Full Changelog**: <https://github.com/SonarSource/sonarqube-scan-action/compare/v7...v8.0.0> ### [`v8.0`](https://github.com/SonarSource/sonarqube-scan-action/compare/v8...v8) [Compare Source](https://github.com/SonarSource/sonarqube-scan-action/compare/v8...v8) ### [`v8`](https://github.com/SonarSource/sonarqube-scan-action/compare/v7.2.1...v8) [Compare Source](https://github.com/SonarSource/sonarqube-scan-action/compare/v7.2.1...v8) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMjAuMiIsInVwZGF0ZWRJblZlciI6IjQzLjI1Ny45IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Reviewed-on: #148 Co-authored-by: Renovate-Clanker <renovate-bot@fossy.my.id> Co-committed-by: Renovate-Clanker <renovate-bot@fossy.my.id>
Features
- SSH interactive session with real-time command handling
- Custom subdomain management for HTTP tunnels
- Dual protocol support: HTTP and TCP tunnels
- Real-time connection monitoring
Requirements
- Go 1.18 or higher
- Valid domain name for subdomain routing
Environment Variables
The following environment variables can be configured in the .env file:
| Variable | Description | Default | Required |
|---|---|---|---|
DOMAIN |
Domain name for subdomain routing | localhost |
No |
FRONTEND_URL |
URL for the frontend dashboard/landing page | https://<DOMAIN> |
No |
PORT |
SSH server port | 2200 |
No |
HTTP_PORT |
HTTP server port | 8080 |
No |
HTTPS_PORT |
HTTPS server port | 8443 |
No |
KEY_LOC |
Path to the private key file | certs/privkey.pem |
No |
TLS_ENABLED |
Enable TLS/HTTPS | false |
No |
TLS_REDIRECT |
Redirect HTTP to HTTPS | false |
No |
TLS_STORAGE_PATH |
Path to store TLS certificates | certs/tls/ |
No |
ACME_EMAIL |
Email for Let's Encrypt registration | admin@<DOMAIN> |
No |
CF_API_TOKEN |
Cloudflare API token for DNS-01 challenge | - |
Yes (if auto-cert) |
ACME_STAGING |
Use Let's Encrypt staging server | false |
No |
CORS_LIST |
Comma-separated list of allowed CORS origins | - |
No |
ALLOWED_PORTS |
Port range for TCP tunnels (e.g., 40000-41000) | 40000-41000 |
No |
BUFFER_SIZE |
Buffer size for io.Copy operations in bytes (4096-1048576) | 32768 |
No |
MAX_HEADER_SIZE |
Maximum size of HTTP headers in bytes (4096-131072) | 4096 |
No |
PPROF_ENABLED |
Enable pprof profiling server | false |
No |
PPROF_PORT |
Port for pprof server | 6060 |
No |
MODE |
Runtime mode: standalone or node |
standalone |
No |
GRPC_ADDRESS |
gRPC server address/host used in node mode |
localhost |
No |
GRPC_PORT |
gRPC server port used in node mode |
8080 |
No |
NODE_TOKEN |
Authentication token sent to controller in node mode |
- |
Yes (node mode) |
Note: All environment variables now use UPPERCASE naming. The application includes sensible defaults for all variables, so you can run it without a .env file for basic functionality.
Docker Deployment
Three Docker Compose configurations are available for different deployment scenarios. Each configuration uses the image git.fossy.my.id/bagas/tunnel-please:latest.
Configuration Options
1. Root with Host Networking (RECOMMENDED)
File: docker-compose.root.yml
Advantages:
- Full TCP port forwarding support (ports 40000-41000)
- Direct binding to privileged ports (80, 443, 2200)
- Best performance with no NAT overhead
- Maximum flexibility for all tunnel types
- No port mapping limitations
Use Case: Production deployments where you need unrestricted TCP forwarding and maximum performance.
Deploy:
docker-compose -f docker-compose.root.yml up -d
2. Standard (HTTP/HTTPS Only)
File: docker-compose.standard.yml
Advantages:
- Runs with unprivileged user (more secure)
- Standard port mappings (2200, 80, 443)
- Simple and predictable networking
- TCP port forwarding disabled (
ALLOWED_PORTS=none)
Use Case: Deployments where you only need HTTP/HTTPS tunneling without custom TCP port forwarding.
Deploy:
docker-compose -f docker-compose.standard.yml up -d
3. Limited TCP Forwarding
File: docker-compose.tcp.yml
Advantages:
- Runs with unprivileged user (more secure)
- Standard port mappings (2200, 80, 443)
- Limited TCP forwarding (ports 30000-31000)
- Controlled port range exposure
Use Case: Deployments where you need both HTTP/HTTPS tunneling and limited TCP forwarding within a specific port range.
Deploy:
docker-compose -f docker-compose.tcp.yml up -d
Quick Start
- Choose your configuration based on your requirements
- Edit the environment variables in the chosen compose file:
DOMAIN: Your domain name (e.g.,example.com)ACME_EMAIL: Your email for Let's EncryptCF_API_TOKEN: Your Cloudflare API token (if using automatic TLS)
- Deploy:
docker-compose -f docker-compose.root.yml up -d - Check logs:
docker-compose -f docker-compose.root.yml logs -f - Stop the service:
docker-compose -f docker-compose.root.yml down
Recommendation
Use docker-compose.root.yml for production deployments if you need:
- Full TCP port forwarding capabilities
- Any port range configuration
- Direct port binding without mapping overhead
- Maximum performance and flexibility
This is the recommended configuration for most use cases as it provides the complete feature set without limitations.
Contributing
Contributions are welcome!
If you'd like to contribute to this project, please follow the workflow below:
- Fork the repository
- Create a new branch for your changes
- Commit and push your updates
- Open a Pull Request targeting the
stagingbranch - Clearly describe your changes and the reasoning behind them
License
This project is licensed under the Attribution-NonCommercial-NoDerivatives 4.0 International (CC BY-NC-ND 4.0) license.
Author
Bagas (fossyy)
- Website: fossy.my.id
- GitHub: @fossyy
