Quick Start Guide
Get NazDocker Lab up and running in minutes with this quick start guide.
π Prerequisites
- Docker (version 20.10+)
- Docker Compose (version 2.0+)
- Git
β‘ Quick Setup
1. Clone and Navigate
git clone https://github.com/nazdridoy/nazdocker-lab.git
cd nazdocker-lab
2. Set Up Environment
# Create separate data directories for Alpine and Ubuntu
mkdir -p data/{alpine,ubuntu}/{admin,user1,user2,user3,user4,user5}
# Configure environment variables
cp .env.example .env
# Edit .env with your configuration (see [Configuration Guide](/nazdocker-lab/administration/environment-variables/))
3. Start the Environment
Ubuntu Version (Recommended for Development):
docker-compose -f docker-compose.ubuntu.yml up -d
Alpine Version (82% smaller, Recommended for Production):
docker-compose -f docker-compose.alpine.yml up -d
4. Access the Lab
# Local SSH access
ssh admin@localhost -p 2222
# Password: admin123
π₯ Quick User Reference
| Username | Password | Sudo Access | Purpose |
|---|---|---|---|
admin | admin123 | β Yes | Administrative tasks |
user1 | user123 | β No | Regular development |
user2 | user123 | β No | Regular development |
user3 | user123 | β No | Regular development |
user4 | user123 | β No | Regular development |
user5 | user123 | β No | Regular development |
root | root123 | β Yes | System administration |
π§ Essential Commands
Container Management
# Start environment
docker-compose -f docker-compose.ubuntu.yml up -d
# Stop environment
docker-compose -f docker-compose.ubuntu.yml down
# View logs
docker-compose -f docker-compose.ubuntu.yml logs -f
# Access container shell
docker-compose -f docker-compose.ubuntu.yml exec lab-environment-ubuntu bash
Health Monitoring
# Check container status
docker-compose -f docker-compose.ubuntu.yml ps
# Check health status
docker ps --format "table \t\t"
π Remote Access
Local Access
ssh admin@localhost -p 2222
ssh user1@localhost -p 2222
# ... etc
Public Access (via Playit.gg)
- Set your
PLAYIT_SECRET_KEYin.env - Check tunnel status:
docker-compose logs | grep -i "playit" - Connect via the provided public URL
π οΈ Whatβs Available
- Python 3.x with pip
- uv - Fast Python package manager (replaces pip, pip-tools, pipx, poetry, pyenv, virtualenv)
- uvx - Run Python tools in ephemeral environments
- Node.js with npm
- Git for version control
- SSH server for remote access
- Development utilities (curl, jq, ping, etc.)
π Next Steps
- Configure Environment Variables - Set up passwords and tunneling
- Learn User Management - Manage user accounts
- Set Up SSH Keys - Secure authentication
- Explore Development Tools - Available development utilities
π Need Help?
- Common Issues - Solutions to frequent problems
- Diagnostic Commands - Troubleshooting tools
- Emergency Procedures - Emergency recovery