Available Development Tools
Complete overview of development tools and utilities available in NazDocker Lab.
๐ Python Development
Python 3.x
# Check Python version
python3 --version
# Install packages with pip
pip3 install package_name
# Create virtual environment
python3 -m venv myenv
source myenv/bin/activate
# Run Python scripts
python3 script.py
uv - Fast Python Package Manager
# Check uv version
uv --version
# Initialize new project
uv init myproject
# Add dependencies
uv add requests
uv add flask django
# Run Python scripts
uv run script.py
# Run tools in ephemeral environment
uvx ruff check
uvx black .
uvx pytest
# Install tools globally
uv tool install ruff
uv tool install black
# Create virtual environment
uv venv
# Sync dependencies
uv sync
Common Python Packages
# Web development
pip3 install flask django fastapi
# Data science
pip3 install pandas numpy matplotlib seaborn
# Machine learning
pip3 install scikit-learn tensorflow pytorch
# Testing
pip3 install pytest unittest
# Code quality
pip3 install black flake8 pylint
๐ข Node.js Development
Node.js and npm
# Check Node.js version
node --version
# Check npm version
npm --version
# Install packages
npm install package_name
# Install globally
npm install -g package_name
# Run Node.js scripts
node script.js
Common Node.js Packages
# Web frameworks
npm install express koa fastify
# Build tools
npm install webpack vite parcel
# Testing
npm install jest mocha chai
# Code quality
npm install eslint prettier
๐ฆ Package Management
Ubuntu (apt)
# Update package list
apt-get update
# Install packages
apt-get install -y package_name
# Remove packages
apt-get remove package_name
# Search packages
apt search package_name
# Upgrade packages
apt-get upgrade
Alpine (apk)
# Update package list
apk update
# Install packages
apk add package_name
# Remove packages
apk del package_name
# Search packages
apk search package_name
# Upgrade packages
apk upgrade
๐ง System Utilities
Network Tools
# Network connectivity
ping google.com
curl -I https://google.com
wget https://example.com/file.txt
# Network configuration
ifconfig
ip addr show
netstat -tulpn
# DNS resolution
nslookup google.com
dig google.com
File Management
# File operations
ls -la
cp source destination
mv old_name new_name
rm file_name
# Archive operations
tar -czf archive.tar.gz directory/
tar -xzf archive.tar.gz
# File search
find . -name "*.py"
grep "pattern" file.txt
Process Management
# Process information
ps aux
top
htop
# Process control
kill process_id
pkill process_name
killall process_name
๐ Text Editors
Nano (Simple)
# Edit file
nano filename.txt
# Search in nano
Ctrl + W
# Save and exit
Ctrl + X, then Y, then Enter
Vim (Advanced)
# Edit file
vim filename.txt
# Vim commands
i # Insert mode
Esc # Command mode
:w # Save
:q # Quit
:wq # Save and quit
:q! # Quit without saving
VS Code (if installed)
# Install VS Code
apt-get install -y code # Ubuntu
apk add code # Alpine
# Open file
code filename.txt
# Open directory
code .
๐ Development Utilities
JSON Processing
# Install jq
apt-get install -y jq # Ubuntu
apk add jq # Alpine
# Process JSON
echo '{"name": "test"}' | jq '.name'
cat data.json | jq '.items[]'
Text Processing
# Sed for text replacement
sed 's/old/new/g' file.txt
# Awk for text processing
awk '{print $1}' file.txt
# Sort and unique
sort file.txt | uniq
Compression
# Gzip compression
gzip file.txt
gunzip file.txt.gz
# Zip compression
zip archive.zip file1.txt file2.txt
unzip archive.zip
๐๏ธ Version Control
Git
# Initialize repository
git init
# Clone repository
git clone https://github.com/user/repo.git
# Add files
git add filename.txt
git add .
# Commit changes
git commit -m "Add new feature"
# Push changes
git push origin main
# Check status
git status
git log --oneline
Git Configuration
# Set user information
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
# Set default branch
git config --global init.defaultBranch main
# View configuration
git config --list
๐งช Testing Tools
Python Testing
# Run tests with pytest
pytest test_file.py
# Run tests with unittest
python3 -m unittest test_file.py
# Run with coverage
pip3 install coverage
coverage run test_file.py
coverage report
Node.js Testing
# Run tests with npm
npm test
# Run tests with jest
npx jest
# Run tests with mocha
npx mocha test_file.js
๐ Debugging Tools
Python Debugging
# Use pdb
python3 -m pdb script.py
# Use ipdb (enhanced pdb)
pip3 install ipdb
python3 -m ipdb script.py
Node.js Debugging
# Use Node.js debugger
node --inspect script.js
# Use debug module
npm install debug
System Debugging
# Check system resources
free -h
df -h
top
# Check network
netstat -tulpn
ss -tulpn
# Check processes
ps aux | grep process_name
๐ Monitoring Tools
System Monitoring
# Real-time system stats
htop
top
# Disk usage
du -sh directory/
df -h
# Memory usage
free -h
cat /proc/meminfo
Network Monitoring
# Network connections
netstat -an
ss -tulpn
# Network traffic
iftop
nethogs
๐ง Custom Tools Installation
Installing Additional Tools
# Development tools
apt-get install -y build-essential cmake # Ubuntu
apk add build-base cmake # Alpine
# Database tools
apt-get install -y mysql-client postgresql-client # Ubuntu
apk add mysql-client postgresql-client # Alpine
# Monitoring tools
apt-get install -y htop iotop nethogs # Ubuntu
apk add htop iotop nethogs # Alpine
Python Development Environment
# Install Python development tools
apt-get install -y python3-dev python3-pip # Ubuntu
apk add python3-dev py3-pip # Alpine
# Install common Python packages
pip3 install ipython jupyter notebook
Node.js Development Environment
# Install Node.js development tools
apt-get install -y nodejs npm # Ubuntu
apk add nodejs npm # Alpine
# Install global packages
npm install -g nodemon pm2
๐ Related Topics
- Container Management - Managing the development environment
- Environment Variables - Configuration management
- User Management - User account management
- Troubleshooting - Common development issues