Skip to content
This repository has been archived by the owner on Oct 3, 2023. It is now read-only.

Commit

Permalink
Updating README with environment variable option
Browse files Browse the repository at this point in the history
  • Loading branch information
ajila-fmeyer committed Jan 21, 2020
1 parent 6f4799b commit b8e8bbd
Showing 1 changed file with 79 additions and 5 deletions.
84 changes: 79 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,38 @@
This is two in one docker image so it runs open source virus scanner ClamAV (https://www.clamav.net/), automatic virus definition updates as background process and REST api interface to interact with ClamAV process.
# Table of Contents

## Usage:
- [Introduction](#introduction)
- [Prerequisites](#prerequisites)
- [Installation](#installation)
- [Quick Start](#quick-start)
- [Status Codes](#status-codes)
- [Configuration](#configuration)
- [Environment Variables](#environment-variables)
- [Networking](#networking)
- [Maintenance](#maintenance)
- [Shell Access](#shell-access)
- [Developing](#developing)
- [References](#references)

# Introduction

This is two in one docker image so it runs open source virus scanner ClamAV (https://www.clamav.net/), automatic virus definition updates as background process and REST API interface to interact with ClamAV process.

# Prerequisites

This container doesn't do much on it's own unless you use an additional service or communicator to talk to it!

# Installation

Automated builds of the image are available on [Registry](https://hub.docker.com/r/ajilaag/clamav-rest) and is the recommended method of installation.

```bash
docker pull hub.docker.com/ajilaag/clamav-rest:(imagetag)
```

The following image tags are available:
* `latest` - Most recent release of ClamAV with REST API

# Quick Start

Run clamav-rest docker image:
```bash
Expand Down Expand Up @@ -34,19 +66,61 @@ Content-Length: 33
{ Status: "OK", Description: "" }
```
**Status codes:**
## Status Codes
- 200 - clean file = no KNOWN infections
- 400 - ClamAV returned general error for file
- 406 - INFECTED
- 412 - unable to parse file
- 501 - unknown request
# Configuration
## Environment Variables
Below is the complete list of available options that can be used to customize your installation.
## Developing:
| Parameter | Description |
|-----------|-------------|
| `MAX_SCAN_SIZE` | Amount of data scanned for each file - Default `100M` |
| `MAX_FILE_SIZE` | Don't scan files larger than this size - Default `25M` |
| `MAX_RECURSION` | How many nested archives to scan - Default `16` |
| `MAX_FILES` | Number of files to scan withn archive - Default `10000` |
| `MAX_EMBEDDEDPE` | Maximum file size for embedded PE - Default `10M` |
| `MAX_HTMLNORMALIZE` | Maximum size of HTML to normalize - Default `10M` |
| `MAX_HTMLNOTAGS` | Maximum size of Normlized HTML File to scan- Default `2M` |
| `MAX_SCRIPTNORMALIZE` | Maximum size of a Script to normalize - Default `5M` |
| `MAX_ZIPTYPERCG` | Maximum size of ZIP to reanalyze type recognition - Default `1M` |
| `MAX_PARTITIONS` | How many partitions per Raw disk to scan - Default `50` |
| `MAX_ICONSPE` | How many Icons in PE to scan - Default `100` |
| `PCRE_MATCHLIMIT` | Maximum PCRE Match Calls - Default `100000` |
| `PCRE_RECMATCHLIMIT` | Maximum Recursive Match Calls to PCRE - Default `2000` |
## Networking
| Port | Description |
|-----------|-------------|
| `3310` | ClamD Listening Port |
# Maintenance
## Shell Access
For debugging and maintenance purposes you may want access the containers shell.
```bash
docker exec -it (whatever your container name is e.g. clamav) bash
```
# Developing
Build golang (linux) binary and docker image:
```bash
# env GOOS=linux GOARCH=amd64 go build
docker build . -t clamav-go-rest
docker run -p 9000:9000 -itd --name clamav-rest clamav-go-rest
```
```
# References
* https://www.clamav.net

0 comments on commit b8e8bbd

Please sign in to comment.