Monolith Forensics
  • Monolith Resources
    • Accessing Monolith
  • Monolith Features
    • 🏁Getting Started
      • Basic License Terms
      • Monolith Desktop Setup
      • Login & 2FA
      • SSO Login
      • First Steps
    • On-Premises Deployments
      • Managing Licensing
      • Requirements
      • Monolith Containers (Docker)
      • Deployment
        • .env
        • docker-compose.yml
        • Docker Installation
        • How to Deploy
        • Useful Commands
      • Monolith Data
      • Backups
        • Restoring Backups
      • Updates
      • Custom Domains and TLS
      • Connecting to File Shares
      • Update MySQL Container
      • Using External MySQL Database
      • Manually Update User Email
    • Monolith UI Features
      • Tables
      • Query Filter
      • Global Search
    • Cloud Security
      • Security Overview
      • Single Sign On (SSO)
    • Hardware Integrations
      • Dymo Label Printers
      • Printer Recommendations
      • Scanner Recommendations
      • Signature Tablets
    • Case Reports
      • Report Templates
        • Template Variables
        • Template Examples
      • Monolith Case Reports
    • Storage Items
    • Audits
      • Creating Audits
      • Viewing and Accessing Audits
      • Audit Features & Layout
      • Auditing Items
      • Using a scanner
    • People
      • Clients
        • Client Page
    • Lab Management
      • Forensic Software
      • Equipment
    • Settings
      • System
      • Email Notifications
      • Organization Info
      • Editor Templates
      • Relay Settings
        • Basic Details
        • User Management
        • Relay Instructions
        • Custom Field Options
      • Item Number Formats
      • Case Types
      • Case Statuses
      • Case Progress
      • Evidence Types
      • Evidence Progress
      • Item Labels
      • Custom Fields
      • Task Templates
      • Time Entry Categories
      • QA Checklist Items
      • QA Issue Types
      • Admin Log
      • Integrations
  • Monolith API
    • API Access
      • API Endpoints
      • Authentication
    • Info API
    • Cases API
      • Get Cases
      • Create Case
    • Evidence API
      • Get Evidence
      • Create Evidence
      • Update Evidence
      • Delete Evidence
      • Migrate Evidence
    • Locations API
      • Get Locations
    • Chain of Custody API
      • Get COC Records
      • Create COC Records
    • Clients API
      • Get Clients
      • Create Client
    • Inquiries API
      • Get Inquiries
      • Create Inquiries
    • Tasks API
      • Get Tasks
      • Create Task
    • Monolith Endpoints
  • About Monolith Forensics
    • Support
    • Privacy Policy
    • End User License Agreement
Powered by GitBook
On this page
  • Windows/CIFS Share
  • Final docker-compose.yml File with CIFS
Export as PDF
  1. Monolith Features
  2. On-Premises Deployments

Connecting to File Shares

Default Monolith deployments store files on the local file system of the host that is running Monolith's Docker containers.

If you want to use an external file share, you will need to adjust the docker-compose.yml file to include configuration settings for the file share you would like to use.

Windows/CIFS Share

To connect to a basic Windows file share, add the following configuration to the bottom of your docker-compose.yml file:

volumes:
  monolith:
    driver: local
    driver_opts:
      type: cifs
      o: "username=your_username,password=your_password,domain=your_domain"
      device: "//<SHARE_IP_ADDRESS>/share/data"
  • Replace your_username, your_password, your_domain with the appropriate credentials for accessing the CIFS share. your_domain is not required if your share does not have a specific domain, so you can omit this value.

  • Replace //<SHARE_IP_ADDRESS>/share with the network path to your CIFS share, but append the "/data" location at the end.

To utilize this new volume, we need adjust the current volumes listed in each service block of the docker-compose.yml file.

// Some code
monolith-api:
  container_name: monolith-api
  image: monolithforensics/monolith-api:latest
  restart: always
  volumes:
    - monolith:/usr/src/app/data
  ports:
    - "3001:3001"
  env_file:
    - .env
  mem_limit: 512m

Final docker-compose.yml File with CIFS

The following demonstrates the final docker-compose.yml file once a CIFS share has been configured:

docker-compose.yml
services:
  monolith-api:
    container_name: monolith-api
    image: monolithforensics/monolith-api:latest
    restart: always
    volumes:
      - monolith:/usr/src/app/data
    ports:
      - "3001:3001"
    env_file:
      - .env
    mem_limit: 512m

  monolith-forms:
    container_name: monolith-forms
    image: monolithforensics/monolith-forms:on-prem
    restart: always
    volumes:
       - monolith:/usr/src/app/data
    ports:
      - "3003:3003"
    mem_limit: 150m

  monolith:
    container_name: monolith
    image: monolithforensics/monolith:on-prem
    restart: always
    volumes:
      - monolith:/usr/src/app/data
    ports:
      - "3005:3005"
    mem_limit: 150m

  mysql:
    container_name: mysql2
    image: mysql:8.0.16
    command: --default-authentication-plugin=mysql_native_password --sql_mode=""
    security_opt:
      - seccomp:unconfined
    restart: always
    ports:
     - "3307:3306"
    environment:
      MYSQL_ROOT_PASSWORD: ${MONOLITH_DB_PASSWORD}
      MYSQL_USER: ${MONOLITH_DB_USER}
      MYSQL_PASSWORD: ${MONOLITH_DB_PASSWORD}
      MYSQL_DATABASE: ${MONOLITH_DB_NAME}
    volumes:
      - ./data/mysql:/var/lib/mysql
      - ./init:/docker-entrypoint-initdb.d
    mem_limit: 512m

  nginx:
    container_name: nginx
    image: monolithforensics/nginx:latest
    restart: always
    ports:
      - "80:80"
      - "443:443"
    volumes:
     - monolith:/usr/src/app/data

  watchtower:
    container_name: watchtower
    image: containrrr/watchtower:latest
    restart: always
    environment:
      - WATCHTOWER_CLEANUP=true
    command: --interval 30
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    mem_limit: 512m

# Connect CIFS share
volumes:
  monolith:
    driver_opts:
      type: cifs
      o: username={username},password={password},vers=3.0
      device: //192.168.1.12/Monolith/data
PreviousCustom Domains and TLSNextUpdate MySQL Container

Last updated 2 years ago