Docker Deployment Guide

Complete containerized deployment with CLI, web interface, and remote desktop access

Docker Deployment Overview

CoreSecurityFramework is designed for containerized deployment using Docker. This approach provides complete environment isolation, simplified deployment, and consistent behavior across different systems.

Why Docker?

Isolation

Complete environment isolation from host system

Easy Deployment

One-command deployment across any Docker-supported system

Consistency

Identical behavior regardless of host OS

Pre-configured

All dependencies and tools pre-installed and configured

What's Included in the Container

  • Kali Linux Base: Complete Kali Linux rolling distribution
  • CoreSecurityFramework: Latest version with all modules
  • Web Interface: Browser-based management dashboard
  • noVNC Server: Remote desktop access via web browser
  • Security Tools: Pre-installed common security tools
  • Development Environment: Python, Git, and development tools

CLI Deployment

Get CoreSecurityFramework running in less than 5 minutes with these simple commands.

1

Create the Dockerfile

In your project folder, or any directory you choose for building the image, create a file named Dockerfile and copy in the following content:

FROM kalilinux/kali-rolling:latest

FROM kalilinux/kali-rolling

ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
    python3 python3-pip tmux git wget ca-certificates sudo && \
    apt-get clean && rm -rf /var/lib/apt/lists/*

WORKDIR /opt
RUN git clone https://github.com/CoreSecFrame/CoreSecFrame.git coresecframe
WORKDIR /opt/coresecframe

RUN pip3 install --break-system-packages --upgrade pip
RUN pip3 install --break-system-packages -r requirements.txt

RUN ln -s /opt/coresecframe/main.py /usr/local/bin/coresecframe && chmod +x /usr/local/bin/coresecframe

CMD ["coresecframe"]
2

Build the Docker Image

docker build -t coresecframe .

This command tells Docker to build an image tagged as coresecframe using the current directory (dot .) as the build context. Once finished, you’ll have a new Docker image named “coresecframe” that contains Kali plus CoreSecFrame.

3

Run a Container

Create and start a container from the newly built image with:

docker run -it --rm coresecframe

-it provides an interactive terminal, and --rm removes the container once it stops, keeping your system clean of unused containers. By default, this runs the CMD ["coresecframe"] specified in the Dockerfile.

Web Deployment

WORKING ON THIS FEATURE

Container Management

Essential commands for managing your CoreSecurityFramework container.

Basic Operations

# Start container
docker start coresecframe

# Stop container
docker stop coresecframe

# Restart container
docker restart coresecframe

# Remove container
docker rm coresecframe

# View container status
docker ps -a

Monitoring & Logs

# View container logs
docker logs coresecframe

# Follow logs in real-time
docker logs -f coresecframe

# View resource usage
docker stats coresecframe

# Inspect container details
docker inspect coresecframe

Backup & Restore

# Backup container data
docker cp coresecframe:/opt/coresecframe/data ./backup/

# Create container snapshot
docker commit coresecframe coresecframe:backup-$(date +%Y%m%d)

# Export container
docker export coresecframe > coresecframe-backup.tar

# Import container
docker import coresecframe-backup.tar coresecframe:restored

Updates & Maintenance

# Update to latest image
docker pull coresecframe:latest
docker stop coresecframe
docker rm coresecframe
docker run -d [your-options] coresecframe:latest

# Clean up unused images
docker image prune

# Clean up system
docker system prune -a

General Troubleshooting Tips

  • Check Logs First: Always start with docker logs coresecframe
  • Verify Resources: Ensure adequate CPU, memory, and disk space
  • Test Incrementally: Start with basic deployment, then add complexity
  • Use Debug Mode: Enable debug mode with -e CORESEC_DEBUG=true
  • Check Docker Version: Ensure you're using a recent Docker version
  • Network Isolation: Test with --network host to eliminate network issues