Skip to content

Evaemon/PQR-Docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PQR-Docker

This repository contains Docker configurations and scripts for deploying the PQR-Tunnel and PQR-KeyCrafter projects in a containerized environment. It supports client, server, and key generation containers, while maintaining modularity and independence.


Features

  • Multi-Container Setup: Includes Docker Compose for running client, server, and keygen containers.
  • Modular Independence: Designed to work independently of PQR-Tunnel and PQR-KeyCrafter repositories, making it easier to expand or adapt to other frameworks (e.g., VMware, Kubernetes).
  • Environment Variables: .env files for easy configuration of container settings.
  • Automated Scripts: Scripts for building, starting, and stopping containers.

Quick Start

1. Clone the Repository

git clone https://github.com/Evaemon/PQR-Docker.git
cd PQR-Docker

2. Set Permissions for Scripts

Ensure that the scripts in the scripts/ directory have executable permissions:

chmod +x scripts/*.sh

3. Configure Docker Permissions

To avoid permission errors while using Docker, follow these steps:

  1. Add your user to the Docker group:

    sudo usermod -aG docker $USER
  2. Restart your terminal or log out and back in for the changes to take effect.

  3. Verify that Docker works without sudo:

    docker ps

    If this command runs without errors, your Docker setup is ready.

  4. Start the Docker daemon if it is not already running:

    sudo systemctl start docker

4. Build Docker Images

Run the following command to build the required containers:

bash scripts/build_containers.sh

This script automatically pulls the required code from:

5. Start the Containers

bash scripts/start_containers.sh

6. Stop and Clean Up

bash scripts/stop_containers.sh

Troubleshooting

1. Permission Denied Errors

If you encounter a Permission Denied error while running any script or using Docker, follow these steps:

  1. Ensure the script has executable permissions:

    chmod +x scripts/<script_name>.sh
  2. Add your user to the Docker group:

    sudo usermod -aG docker $USER
  3. Restart your terminal or log out and back in.

  4. Start the Docker daemon if it is not running:

    sudo systemctl start docker
  5. Retry the script:

    bash scripts/<script_name>.sh

2. Docker Not Found

If you see an error indicating Docker is not installed:

  1. Install Docker:

  2. Verify the installation:

    docker --version
  3. Ensure Docker Compose is also installed:

    docker-compose --version
  4. Restart your terminal and retry the commands.

3. Unable to Connect to the Docker Daemon

If you see an error like Cannot connect to the Docker daemon:

  1. Ensure the Docker service is running:

    sudo systemctl start docker
  2. Add your user to the docker group to avoid needing sudo:

    sudo usermod -aG docker $USER
  3. Log out and back in for the group changes to take effect.

  4. Retry the command.


Folder Structure

PQR-Docker/
├── docker-compose.yml                # Docker Compose file for multi-container setup
├── Dockerfiles/                      # Individual Dockerfiles for each service
│   ├── client.Dockerfile
│   ├── server.Dockerfile
│   ├── keygen.Dockerfile
├── config/                           # Configuration files
│   ├── client.env
│   ├── server.env
│   ├── shared.env
├── scripts/                          # Utility scripts for container management
│   ├── build_containers.sh
│   ├── start_containers.sh
│   ├── stop_containers.sh
└── README.md                         # Documentation

Project Dependencies

The Docker containers rely on the following projects:

Ensure these repositories remain updated to avoid issues during the container build process.


Contributing

Contributions are welcome! Please fork the repository and submit a pull request with your improvements.


License

Proprietary - All Rights Reserved

This project is licensed under the Trednets Enterprise Software License (TESL) v1.2.
All rights, title, and interest in the software remain exclusively with Trednets B.V.

See the included LICENSE file for the repository license notice.
For the full and current license text, visit: https://trednets.com/license

Third-party components and dependencies remain subject to their respective original license terms.

About

Docker configuration files and scripts for deploying the PQR-Tunnel (Post-Quantum Realm) project in containerized environments.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors