Title
Create new category
Edit page index title
Edit category
Edit link
Container-Based Setup
Before running the setup, please check [Central Hub] Recommended System Configuration to install all required dependencies.
Setup order requirement
Please follow installation steps in order to complete the system setup properly:
Order no. | Service | Notes |
|---|---|---|
1 | Redis, RabbitMQ, PostgreSQL and File Server (NAS) |
|
2 | First MetaDefender Core instance in the shared DB mode. |
|
3 | The Hub instance, and any other MetaDefender Core instances in the shared DB mode. |
|
1. Redis caching server
Pull the target docker image from Redis repository on DockerHub e.g. https://hub.docker.com/layers/library/redis/7.0.5/images/sha256-2bd864580926b790a22c8b96fd74496fe87b3c59c0774fe144bab2788e78e676?context=explore
Run the image:
Check container log to ensure everything works properly:
Example:
Pull Redis version
7.0.5from DockerHub.Run the image with name set to
'redis', port tied to'6379'and image name set to'redis:7.0.5'Check container log.
2. RabbitMQ broker server
Pull the target docker image from RabbitMQ repository on DockerHub e.g. https://hub.docker.com/layers/library/rabbitmq/3.10.7/images/sha256-90801171d4fdffc9b8877bb3ea5edb974cc123a2f27a678d5fd81488fb5025a2?context=explore
Run the inage:
Check container log to ensure everything works properly:
Example:
Pull RabbitMQ version 3.10.7 from DockerHub.
Run the image with name set to
'rabbitmq', username and password set to'admin', port tied to'6379'and image name set to'rabbitmq:3.10.7'Check container log in real time.
3. PostgreSQL database server
Pull the target docker image from PostgreSQL repository on DockerHub e.g. https://hub.docker.com/layers/library/postgres/12.10/images/sha256-788f33abeef419b4252f73bf55ddf6fc6f77db759f81c7557fb8e1a72fad353b?context=explore
Run the image:
Check container log to ensure everything works properly:
Example:
Pull PostgreSQL version 12.10 from DockerHub.
Run the image with name set to
'postgres', password set to'admin', port tied to'5432'and image name set to'postgres:12.10'Check container log in real time.
4. File storage server (NAS)
Create a designated folder for <NAS config folder> e.g.
~/mdcore/nas_configGenerate private key, certificate in X509 format and store to a designated location
<NAS config folder>Complete configuration file
ometascan_nas.confMetaDefender Core NAS (File Storage Server) and store it in <NAS config folder>Pull the target docker image from OPSWAT repository on DockerHub
<repository>:
opswat<platform>:
centos ordebian``<version>: File storage server version, default is
latest
Run the image and mount <NAS config folder> to
/etc/opswat
Check container log to ensure everything works properly
Example 1:
Docker pull NAS version 1.0 from DockerHub
Create folder
~/mdcore/nas_configGenerate private key, certificate and store to
~/mdcore/nas_configFill configuration file
ometascan_nas.confand store to~/mdcore/nas_configRun the image with
/etc/opswatfolder tied to~/mdcore/nas_config, port tied to'8888'and image name set to'mdnas-debian:1.0.0'Check container log
Example 2 (Run as non-root with random uid use --user and uid !=0):
Example 3 (Run with enabled read-only mode):
5. MetaDefender Core server
Create a designated folder for <Core ignition folder> e.g.
~/mdcore/ignition_fileComplete ignition file
ometascan.confMetaDefender Core and store it in <Core ignition folder>Pull the target docker image from OPSWAT repository on DockerHub
<repository>:
opswat<platform>:
centos ordebian``<version>: MetaDefender Core version, default is
latest
Run the image and mount <Core ignition folder> to
/opt/ometascan/core_data/opswat
Check container log to ensure everything works properly
Example 1:
Docker pull MetaDefender Core version 5.3.0 from DockerHub
Create folder
~/mdcore/ignition_fileFill configuration file
ometascan.confand store to~/mdcore/ignition_fileRun the image with
/opt/ometascan/core_data/opswatfolder tied to~/mdcore/ignition_file, port tied to'8888'and image name set to'mdcore-debian:5.3.0'Check container log
Example 2 (Run as non-root with random uid):
Example 3 (Run with enabled read-only):
6. Hub server
Create a designated folder for <Hub config folder> e.g.
~/mdcore/hub_configComplete configuration file
ometascan_hub.confMetaDefender Core Hub (Hub) and store it in <Hub config folder>Pull the target docker image from OPSWAT repository on DockerHub
<repository>:
opswat<platform>:
centosordebian<version>: Hub version, default is
latest
Run the image and mount <Hub config folder> to
/etc/opswat
Check container log to ensure everything works properly
Example 1:
Docker pull Hub version 1.0 from DockerHub
Create folder
~/mdcore/hub_configFill configuration file
ometascan_hub.confand store to~/mdcore/hub_configRun the image with
/etc/opswatfolder tied to~/mdcore/hub_config, port tied to'8889'and image name set to'mdhub-debian:1.0.0'Check container log
Example 2 (Run as non-root random uid with option --user <uid>:<gid>):
Example 3 (Run with enabled read only file-system with option --ready-only):