Argus Proxy is a modern, Docker-ready forward web proxy designed for network traffic control, web filtering, security, and centralized access management.
It provides a web-based administration interface with powerful filtering and security features, making it suitable for home networks, businesses, schools, laboratories, and other managed network environments.
After the first installation, Argus can be accessed using the following default administrator credentials:
adminadminImportant: Change the default password immediately after the first login, especially in production environments.
| Port | Protocol | Purpose |
|---|---|---|
8080 | TCP | Argus Web GUI |
8888 | TCP | Forward Proxy |
8081 | TCP | Error / Block Page Web Server |
123 | UDP | Built-in NTP Server |
The NTP port is only required when the built-in NTP server is enabled in the Argus GUI.
Virus scanning is optional and uses ClamAV.
If virus scanning is required, deploy the included clamav service. Argus uses the Docker service hostname clamav and port 3310 by default, so no additional environment variables are required.
If virus scanning is not needed, the ClamAV service can be removed from the Docker Compose configuration. Virus scanning can then remain disabled in the Argus GUI.
ClamAV's virus database is stored in a persistent Docker volume:
argus-clamav-data
This prevents the virus database from being lost when the container is recreated.
The following Docker Compose configuration deploys Argus together with the optional ClamAV virus scanner:
version: "3.8"
services:
argus:
build: .
restart: unless-stopped
ports:
- "8080:8080" # Web GUI
- "8888:8888" # Forward proxy
- "8081:8081" # Error page web server
- "123:123/udp" # Built-in NTP server (only needed if enabled in the GUI)
environment:
DB_HOST: mysql
DB_PORT: 3306
DB_NAME: argus
DB_USER: argus
DB_PASSWORD: changeme
DB_DIALECT: mysql
SESSION_SECRET: "please-change-this-to-a-long-random-string"
# Optional environment variables
WEBGUI_PORT: 8080
PROXY_PORT: 8888
ERRORPAGE_PORT: 8081
NTP_PORT: 123
# Optional: only needed if virus scanning (ClamAV) should be enabled.
# Can be removed if virus scanning is not needed.
# Leave virus scanning disabled in the Argus GUI when this service is removed.
clamav:
image: clamav/clamav:stable
restart: unless-stopped
volumes:
- argus-clamav-data:/var/lib/clamav
volumes:
argus-clamav-data:
Argus requires a MySQL database.
The Docker Compose configuration expects a MySQL server with the following settings:
| Setting | Value |
|---|---|
| Host | mysql |
| Port | 3306 |
| Database | argus |
| Username | argus |
| Password | changeme |
| Dialect | mysql |
The mysql hostname must be reachable from the Argus container. If MySQL is deployed in the same Docker Compose stack, the service should normally be named mysql.
For production deployments, replace the example database password with a strong password.
The following environment variables can be used to configure Argus:
| Variable | Default | Description |
|---|---|---|
DB_HOST | mysql | MySQL database hostname |
DB_PORT | 3306 | MySQL database port |
DB_NAME | argus | Database name |
DB_USER | argus | Database username |
DB_PASSWORD | changeme | Database password |
DB_DIALECT | mysql | Database dialect |
SESSION_SECRET | - | Secret used for application sessions |
WEBGUI_PORT | 8080 | Web GUI port |
PROXY_PORT | 8888 | Forward proxy port |
ERRORPAGE_PORT | 8081 | Error page web server port |
NTP_PORT | 123 | Built-in NTP server port |
Content type
Image
Digest
sha256:2f0aa55f1…
Size
64 MB
Last updated
23 days ago
docker pull raphaeljaeger/argus-proxy