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.
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"]
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.
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