O DuckConsole é um terminal de desenvolvimento completo, portátil e totalmente isolado via Docker.
Ele replica o ambiente que você usa localmente — mas roda com segurança em qualquer Linux, sem interferir no seu sistema real.
Feito para desenvolvedores que trabalham com Python, Rust, TypeScript, PostgreSQL, SSH, Neovim e outras ferramentas modernas.
✅ Ambientes:
ZshcomOh My ZshNeovim(configuração custom via NeoDuckEditor)tmux,fzf,direnv
✅ Python:
Python 3.xpyenv(gerenciador de versões)poetry(gerenciador de dependências)pyright(type checker)
✅ JavaScript / Node:
nvm(gerenciador de Node)Node LTSyarnetypescript
✅ Rust:
rustup(instalador do Rust)cargo
✅ Outros:
makecatimgripgreppostgresql-clientopenssh-client(com suporte a forwarding de chave SSH)docker CLI(opcional via volume do host)
- Todo o ambiente roda dentro de um container Docker
- Nenhuma instalação ou alteração no sistema real
- Os arquivos do host só são acessíveis se você montar explicitamente com
-v - Suporte ao
ssh-agentsem expor suas chaves privadas - Usuário dentro do container usa o mesmo UID/GID do host, evitando problemas com permissões
| Requisito | Versão mínima |
|---|---|
| Linux | Ubuntu 20.04+ ou compatível |
| Docker | v20.10+ |
| make | qualquer versão |
| git, curl | qualquer versão |
git clone https://github.com/PheFreire/DuckConsole.git
cd DuckConsolemake setupO que esse comando faz:
- Instala o Docker (caso ainda não esteja instalado)
- Adiciona seu usuário ao grupo
docker - Cria um alias global
termno seu shell (zsh/bash) - Prepara o
.zshrcusado no container
newgrp docker para aplicar permissões.
termEle abrirá o terminal no diretório atual, com todos os recursos configurados.
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/<sua_key>O terminal terá acesso via
ssh-agente poderá fazer push/pull do GitHub.
| Comando | O que faz |
|---|---|
make build |
Gera a imagem Docker personalizada |
make term |
Roda o terminal Docker no diretório atual |
make setup |
Instala Docker, configura alias e permissões |
make clean |
Remove arquivos temporários de build |
make prepare-zshrc |
Gera .zshrc dentro da pasta build/ (usado pelo Dockerfile) |
.
├── build/
│ └── .zshrc # .zshrc usado dentro do container
├── .zshrc # Modelo base para build
├── .env # Variáveis do projeto
├── Dockerfile # Define todo o ambiente Docker
├── Makefile # Scripts automatizados
└── README.md # Documentação completa
Criado por PheFreire — feito com foco em produtividade, isolamento e portabilidade.
MIT — sinta-se livre para adaptar e melhorar.
