{"id":19374658,"url":"https://github.com/jabez007/docker-kitchen","last_synced_at":"2026-05-01T23:34:47.240Z","repository":{"id":254349174,"uuid":"846234836","full_name":"jabez007/docker-kitchen","owner":"jabez007","description":"A collection of my Docker images","archived":false,"fork":false,"pushed_at":"2025-01-17T14:27:32.000Z","size":41087,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-17T15:39:05.838Z","etag":null,"topics":["astronvim","aws-cli","docker","dockerfile","kubectl","neovim","nvim"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jabez007.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-22T19:39:52.000Z","updated_at":"2025-01-12T00:39:56.000Z","dependencies_parsed_at":"2025-01-17T15:39:45.656Z","dependency_job_id":null,"html_url":"https://github.com/jabez007/docker-kitchen","commit_stats":null,"previous_names":["jabez007/aws-kubectl","jabez007/docker-kitchen"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jabez007%2Fdocker-kitchen","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jabez007%2Fdocker-kitchen/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jabez007%2Fdocker-kitchen/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jabez007%2Fdocker-kitchen/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jabez007","download_url":"https://codeload.github.com/jabez007/docker-kitchen/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240502383,"owners_count":19811794,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["astronvim","aws-cli","docker","dockerfile","kubectl","neovim","nvim"],"created_at":"2024-11-10T08:35:49.538Z","updated_at":"2026-05-01T23:34:47.232Z","avatar_url":"https://github.com/jabez007.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Docker Kitchen\n\nDocker Kitchen is a collection of Dockerfiles and related resources to build and use various Docker images.\n\n## Repository Structure\n\nEach Docker image has its own sub-directory containing:\n\n- A `Dockerfile` for building the image\n- Supporting scripts and files as needed\n\n## Installation and Usage Examples\n\nThis repo also includes a comprehensive setup script for building and configuring development environments on Linux systems, VMs, and Docker containers.\n\n### Modular Installation Script\n\nThe install.sh script is a powerful, modular tool that can set up complete development environments or install specific components as needed.\nIt automatically detects your system (regular Linux, Docker container, or root environment) and adapts accordingly.\n\n#### Quick Start\n\n##### Install Everything\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/jabez007/docker-kitchen/master/install.sh | bash -s -- all\n```\n\n##### Install Specific Component\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/jabez007/docker-kitchen/master/install.sh | bash -s -- base go editor\n```\n\n**Available Components**\n| Component | Description |\n|-----------|-------------|\n| `base` | Base dependencies (curl, git, build tools, ripgrep, etc.) |\n| `go` | Go programming language (latest version) |\n| `node` | Node.js stack (NVM, Node.js LTS, Deno) |\n| `editor` | Editor stack (Neovim, LazyGit, Bottom system monitor) |\n| `config` | User configurations (AstroNvim configuration) |\n| `shell` | Shell stack (Fish shell, Tmux, Starship prompt) |\n| `docker` | Docker and Docker Compose |\n| `all` | Install all components |\n\n#### Usage Examples\n\n##### Basic Development Setup\n\n```bash\n# Minimal setup for coding\n./install.sh base go editor config\n\n# Full development environment\n./install.sh all\n```\n\n##### Docker Container Setup\n\n```bash\n# Lightweight container setup\n./install.sh base editor config\n\n# Container with specific language support\n./install.sh base go node editor config\n```\n\n##### VM/Server Setup\n\n```bash\n# Complete development server\n./install.sh --debug all\n\n# Shell-focused setup\n./install.sh base shell config\n```\n\n#### Advanced Options\n\n```bash\n# Enable debug output\n./install.sh --debug base go editor\n\n# Install system-wide where applicable\n./install.sh --system-wide base\n\n# Customize tmux session name\n./install.sh --tmux-session \"dev\" shell\n\n# Use different Starship preset\n./install.sh --starship-preset \"pure-preset\" shell\n\n# Use custom AstroNvim configuration\n./install.sh --astronvim-repo \"https://github.com/your-user/astronvim-config.git\" config\n```\n\n#### Configuration File\n\nThe script supports configuration files for consistent setups across multiple environments:\n\n```bash\n# Create a configuration file\n./install.sh --save-config\n```\n\n#### Key Features\n\n- **Environment Detection**: Automatically detects Docker containers, root environments, and regular user setups\n- **User Preservation**: When run with sudo, installs user configs to the original user's home directory\n- **Package Manager Agnostic**: Supports apt, dnf, yum, brew, and pacman\n- **Modular Design**: Install only what you need\n- **Comprehensive Logging**: Detailed logs saved to `setup.log`\n- **Fish Shell Integration**: Automatic NVM setup, tmux integration, and Starship prompt\n\n#### What Gets Installed\n\n##### Base Component\n\n- Essential build tools and libraries\n- Git, curl, unzip, ripgrep\n- Python 3 and Lua\n- SSL certificates and SSH client\n\n##### Go Component\n\n- Latest Go version from official releases\n- Proper PATH configuration\n- Cross-platform architecture detection\n\n##### Node Component\n\n- NVM (Node Version Manager)\n- Node.js LTS\n- Deno runtime\n- Fish shell NVM integration\n\n##### Editor Component\n\n- Neovim (latest stable)\n- LazyGit (Git TUI)\n- Bottom (system monitor)\n\n##### Config Component\n\n- AstroNvim configuration\n- Customizable via `--astronvim-repo` option\n\n##### Shell Component\n\n- Fish shell with smart configuration\n- Tmux with TPM (Tmux Plugin Manager)\n- Starship prompt with customizable presets\n- Automatic tmux session management\n- Bash-to-Fish integration\n\n##### Docker Component\n\n- Docker CE and Docker Compose\n- Proper user group configuration\n- Platform-specific installation\n\n#### Docker Integration\n\nThe script is designed to work seamlessly in Docker containers:\n\n```dockerfile\n# Example Dockerfile usage\nFROM ubuntu:22.04\n\n# Install development environment\nRUN curl -fsSL https://raw.githubusercontent.com/jabez007/docker-kitchen/master/install.sh | bash -s -- base go editor config\n\n# Set Fish as default shell\nSHELL [\"fish\", \"-c\"]\n```\n\n#### Logging and Troubleshooting\n\n- All operations are logged to `setup.log` in the script directory\n- Use `--debug` flag for verbose output\n- Each component can be installed independently for troubleshooting\n- The script is idempotent - safe to run multiple times\n\n#### System Requirements\n\n- Linux-based system (Ubuntu, Debian, Fedora, CentOS, Arch Linux)\n- macOS (limited support via Homebrew)\n- Bash 4.0+ or compatible shell\n- Internet connection for downloading packages\n\n### Install NerdFont for AstroNvim and Starship\n\nYou can download and install a NerdFont zip file from the repository using the following command:\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/jabez007/docker-kitchen/master/astro-nvim/Mononoki.zip -o Mononoki.zip \u0026\u0026 \\\nunzip Mononoki.zip -d ~/.fonts \u0026\u0026 \\\nfc-cache -fv\n```\n\n## Contributing\n\nContributions are welcome! Please fork the repository and create a pull request with your changes.\n\n## License\n\nThis repository is licensed under the MIT License. See the `LICENSE` file for more details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjabez007%2Fdocker-kitchen","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjabez007%2Fdocker-kitchen","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjabez007%2Fdocker-kitchen/lists"}