Installs into .claude/skills of the current project.
Are you the author of Docker Local Status?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/majiayu000-docker-local-status)
---
name: docker-local-status
description: Check docker-local environment status - all services, containers, and project accessibility
---
# Docker-Local Status Skill
## Overview
This skill checks the complete status of the docker-local development environment, including:
- Docker daemon status
- Container states
- Service health
- Project accessibility
- Network connectivity
## Activation
Use this skill when:
- User wants to know if Docker is running
- User asks about service status
- User needs to verify their environment
- Troubleshooting connectivity issues
## MANDATORY: Prerequisite Check
**Before ANY docker-local command, verify installation:**
```bash
which docker-local > /dev/null 2>&1
```
**If docker-local is NOT found:**
1. Stop and ask the user if they want to install it
2. If yes, install via: `composer global require mwguerra/docker-local`
3. Add to PATH: `export PATH="$HOME/.composer/vendor/bin:$PATH"`
4. Initialize: `docker-local init`
5. Verify: `which docker-local && docker-local --version`
## Process
### 1. Check Docker Installation
```bash
# Verify docker-local is installed
which docker-local
# Check Docker daemon
docker info > /dev/null 2>&1 && echo "Docker is running" || echo "Docker is NOT running"
```
### 2. Check Environment Status
```bash
# Full status report
docker-local status
# This shows:
# - All container states
# - Health check status
# - Port bindings
# - Uptime
```
### 3. Check Container States
```bash
# List all docker-local containers
docker compose -f ~/.config/docker-local/docker-compose.yml ps -a
# Or using docker-local
docker-local status
```
### 4. Verify Services
Check each service individually if needed:
```bash
# Check specific logs
docker-local logs mysql
docker-local logs postgres
docker-local logs redis
docker-local logs traefik
docker-local logs nginx
docker-local logs mailpit
docker-local logs minio
```
### 5. Check Project Accessibility
```bash
# List all projects with their status
docker-local list
# This shows:
# - Project name
# - URL (https://project.test)
# - Status (accessible, DNS ok, not configured)
```
### 6. Test Connections
```bash
# Test database connections
docker exec mysql mysqladmin ping -h localhost -u root -psecret
# Test Redis
docker exec redis redis-cli ping
# Test PostgreSQL
docker exec postgres pg_isready -U laravel
```
## Expected Output
A healthy environment shows:
- All containers in "Up" state
- Health checks passing (healthy)
- Projects accessible via *.test domains
- Database connections working
## Common Issues
### Docker Not Running
```
Docker is NOT running
```
**Solution:** Start Docker Desktop (macOS/Windows) or `sudo systemctl start docker` (Linux)
### Containers Not Started
```
Container php: Exited
```
**Solution:** Run `docker-local up` to start containers
### Port Conflicts
```
Error: Port 3306 already in use
```
**Solution:** Stop the conflicting service or change the port in config
### DNS Not Configured
```
Status: DNS not configured
```
**Solution:** Run `sudo docker-local setup:dns` or add entries to /etc/hosts
## Output Format
Report the status in a clear format:
```
Docker-Local Status
==================
Docker Daemon: Running
Environment: Up
Services:
- php: Running (healthy)
- mysql: Running (healthy)
- postgres: Running (healthy)
- redis: Running (healthy)
- traefik: Running (healthy)
- nginx: Running (healthy)
- mailpit: Running (healthy)
- minio: Running (healthy)
Projects:
- blog: https://blog.test (accessible)
- api: https://api.test (accessible)
```
$ARGUMENTS