{"categories":["docker","git","rust"],"nibbles":[{"category":"docker","key":"run","content":"### Run a Container\n\n| Command | Description |\n|---------|-------------|\n| `docker run image` | Run container from image |\n| `docker run -d image` | Run detached (background) |\n| `docker run -p 8080:80 image` | Map port 8080 to container's 80 |\n| `docker run -v /host:/container image` | Mount volume |\n| `docker run --rm image` | Remove container when it exits |\n\n> Pro Tip: Combine flags! `docker run -d -p 8080:80 --rm image`\n","examples":["docker run -d -p 3000:3000 --name myapp myapp:latest","docker run -it --rm ubuntu bash"],"tags":[["docker",1],["containers",5]]},{"category":"docker","key":"build","content":"### Build an Image\n\n| Command | Description |\n|---------|-------------|\n| `docker build -t name .` | Build from Dockerfile in current dir |\n| `docker build -t name:tag .` | Build with specific tag |\n| `docker build --no-cache .` | Build without cache |\n\n> Pro Tip: Use `.dockerignore` to speed up builds!\n","examples":["docker build -t myapp:latest .","docker build -t myapp:v1.0 -f Dockerfile.prod ."],"tags":[["docker",1],["containers",5],["devops",20]]},{"category":"git","key":"basics","content":"### Git Basics\n\n| Command | Description |\n|---------|-------------|\n| `git init` | Initialize a new repo |\n| `git clone url` | Clone a repository |\n| `git status` | Check current status |\n| `git add .` | Stage all changes |\n| `git commit -m \"msg\"` | Commit with message |\n\n> Pro Tip: `git add -p` lets you stage changes interactively!\n","examples":["git clone https://github.com/user/repo.git","git add -A && git commit -m 'feat: add feature'"],"tags":[["git",1],["vcs",5]]},{"category":"rust","key":"cargo","content":"### Cargo Commands\n\n| Command | Description |\n|---------|-------------|\n| `cargo new name` | Create new project |\n| `cargo build` | Build debug |\n| `cargo build --release` | Build optimized |\n| `cargo run` | Build and run |\n| `cargo test` | Run tests |\n| `cargo clippy` | Run linter |\n| `cargo fmt` | Format code |\n\n> Pro Tip: `cargo watch -x run` auto-rebuilds on changes!\n","examples":["cargo new myapp && cd myapp && cargo run","cargo build --release && ./target/release/myapp"],"tags":[["rust",1],["cargo",1],["build",10]]}]}