REST API with a single endpoint for on-demand malware scanning files using ClamAV.
Easiest way to get started is to run the prepackaged docker-compose
# docker-compose up
Or if you prefer to build from source make sure you have .NET 6 SDK and ClamAV installed, then from csproj root run
$ dotnet run
When up and running just launch the Swagger UI on http://localhost:5000/swagger/index.html to start playing.
- A running ClamAV daemon to can connect via TCP, typically on port 3310. A docker-compose file is provided to supply this via Docker-internal network.
- Slim Alpine container image (~65 MB runtime memory)
- Locked-down running with non-root user privileges
- Non-blocking implementation (async/await).
- Performant .net6 Kestrel web server
- Swagger/OpenAPI documentation
- Health endpoint keeps an eye on clamd TCP connection
- Complete docker compose solution available, binding to mkodockx/docker-clamav image
- Web API application available as Docker container
- Clamd proxy library available as NuGet
- MIT