This documentation explains how to use our custom Docker-like system with the base64 encoding/decoding service.
- Linux operating system
- Root privileges
- Basic tools: curl, bash, unshare, chroot
.
├── dockerlite.sh # Main container management script
├── app/
│ ├── Dockerfile # Container definition for the base64 service
│ ├── package.json # Node.js dependencies
│ └── server.js # Express server implementation
└── containers/
- Clone or create the project structure:
git clone https://github.com/yashmakhija/docklite- Navigate to the project directory:
cd docker-lite- List all available commands:
./docker-lite.sh- Build an image:
sudo ./docker-lite.sh build app/DockerfileThis will output an image ID - save it for the next step.
- List all images:
sudo ./docker-lite.sh images- Run a container:
sudo ./docker-lite.sh run <image-id>- List all containers:
sudo ./docker-lite.sh ps- Remove a container:
sudo ./docker-lite.sh rm <container-id>- Remove an image:
sudo ./docker-lite.sh rmi <image-id>Current implementation has the following limitations:
- Basic network isolation
- No volume mounting
- Limited Dockerfile instruction support
- Basic environment variable handling
- No port mapping (uses host network)
- Limited container lifecycle management
sudo ./docker-lite.sh build app/Dockerfilesudo ./docker-lite.sh run <image-id>curl -X POST -d '{"text": "Hello, World!"}' http://localhost:3000/encodesudo ./docker-lite.sh rm <container-id>
sudo ./docker-lite.sh rmi <image-id>For any additional features or improvements, please refer to the source code or request enhancements.