Pular para o conteúdo
Skillpedia
Deploy e nuvem (DevOps)48 mil · #2862

docker-management

Ensina seu agente de IA a colocar projetos no ar e cuidar da infraestrutura e gerar imagens, ícones e diagramas.

O que ela faz

Esta ferramenta ajuda a criar, otimizar e corrigir problemas com contêineres e imagens Docker. Ela permite construir, rodar e gerenciar aplicações dentro desses contêineres.

Quando usar

  • ✓Ao criar um arquivo para definir como uma aplicação deve rodar em um contêiner (Dockerfile).
  • ✓Ao construir e nomear imagens Docker para suas aplicações.
  • ✓Ao rodar, parar ou depurar aplicações dentro de contêineres.

Exemplo do que pedir para a IA

“Como posso criar uma imagem Docker para minha aplicação web?”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/docker-management/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/docker-management/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Você pode pedir para criar um arquivo de instruções (Dockerfile) para sua aplicação, construir a imagem a partir dele e depois rodar essa imagem como um contêiner. A ferramenta também ajuda a resolver problemas que possam surgir.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill docker-management

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/docker-management/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Gerenciamento de Docker

Crie, execute e gerencie contêineres Docker para implantação e desenvolvimento de aplicações.

Quando Usar Esta Habilidade

Use esta habilidade quando:

  • Criar e otimizar Dockerfiles
  • Criar e marcar imagens Docker
  • Executar e gerenciar contêineres
  • Depurar problemas de contêineres
  • Configurar rede e volumes Docker
  • Implementar as melhores práticas de segurança para contêineres

Escopo de Execução

Confirme o contexto Docker e o projeto selecionados antes de qualquer operação. As instruções de build executam comandos contribuídos; inspecione o Dockerfile, o contexto de build, os scripts e as dependências baixadas primeiro. A publicação de imagens, paradas de contêineres compartilhados e exclusão de volumes precisam de autorização para o alvo exato. Não exponha valores de ambiente, histórico de imagens ou logs contendo credenciais. Estes exemplos são fragmentos independentes com ativos específicos do projeto, não uma implantação completa.

Pré-requisitos

  • Docker Engine instalado (20.10+)
  • Conhecimento básico de linha de comando
  • Compreensão de implantação de aplicações

Melhores Práticas de Dockerfile

Build em Múltiplas Etapas

# Build stage
FROM node:20-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build && npm prune --omit=dev

# Production stage
FROM node:20-alpine AS production
WORKDIR /app
RUN addgroup -g 1001 -S nodejs && \
    adduser -S nodejs -u 1001 -G nodejs
COPY --from=builder --chown=nodejs:nodejs /app/dist ./dist
COPY --from=builder --chown=nodejs:nodejs /app/node_modules ./node_modules
USER nodejs
EXPOSE 3000
CMD ["node", "dist/index.js"]

Otimização de Camadas

FROM python:3.12-slim

# Install dependencies first (cached unless requirements change)
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

# Copy application code (changes frequently)
COPY . .

CMD ["python", "app.py"]

Fortalecimento de Segurança

FROM node:20-alpine

# Create non-root user
RUN addgroup -g 1001 appgroup && \
    adduser -u 1001 -G appgroup -D appuser

WORKDIR /app

# Copy with proper ownership
COPY --chown=appuser:appgroup . .

# Drop privileges
USER appuser

# Use exec form for proper signal handling
CMD ["node", "server.js"]

Criação de Imagens

Build Básico

# Build with tag
docker build -t myapp:1.0 .

# Build with build args
docker build --build-arg NODE_ENV=production -t myapp:prod .

# Build for specific platform
docker build --platform linux/amd64 -t myapp:amd64 .

# Build with no cache
docker build --no-cache -t myapp:fresh .

Builds Multiplataforma

# Create builder
docker buildx create --name multiplatform --use

# Build for multiple architectures
docker buildx build \
  --platform linux/amd64,linux/arm64 \
  -t myregistry/myapp:latest \
  --push .

Execução de Contêineres

Operações Básicas

# Run container
docker run -d --name myapp -p 8080:3000 myapp:latest

# Run with environment variables
docker run -d \
  -e DATABASE_URL=postgres://localhost/db \
  -e NODE_ENV=production \
  myapp:latest

# Run with resource limits
docker run -d \
  --memory="512m" \
  --cpus="1.0" \
  myapp:latest

# Run with restart policy
docker run -d --restart=unless-stopped myapp:latest

Gerenciamento de Volumes

# Named volume
docker volume create mydata
docker run -v mydata:/app/data myapp:latest

# Bind mount
docker run -v "$(pwd)/config:/app/config:ro" myapp:latest

# tmpfs mount (memory)
docker run --tmpfs /tmp:rw,noexec,nosuid myapp:latest

Rede

# Create network
docker network create mynetwork

# Run on network
docker run -d --network mynetwork --name api myapp:latest

# Connect existing container
docker network connect mynetwork existing-container

# Expose specific ports
docker run -d -p 127.0.0.1:8080:3000 myapp:latest

Ciclo de Vida do Contêiner

Comandos de Gerenciamento

# List containers
docker ps -a

# Stop container
docker stop myapp

# Remove container
docker rm myapp

# Force remove running container
docker rm -f myapp

# Prune stopped containers
docker container prune -f

Logs e Monitoramento

# View logs
docker logs myapp

# Follow logs
docker logs -f --tail 100 myapp

# View resource usage
docker stats myapp

# Inspect container
docker inspect myapp

Depuração de Contêineres

Acesso Interativo

# Executa comando em contêiner em execução
docker exec -it meuapp /bin/sh

# Executa contêiner com shell
docker run -it --rm meuapp:latest /bin/sh

# Depura contêiner com falha

…
Perguntas frequentes

O que é um contêiner Docker?

É como uma caixa isolada que contém tudo que uma aplicação precisa para rodar: código, bibliotecas e ferramentas. Isso garante que a aplicação funcione da mesma forma em qualquer computador.

O que é um Dockerfile?

É um arquivo de texto com instruções passo a passo que o Docker segue para construir uma imagem. Ele define o ambiente e como a aplicação deve ser configurada dentro do contêiner.

Preciso saber programar para usar Docker?

É útil ter um conhecimento básico de linha de comando e entender como sua aplicação funciona. A ferramenta ajuda com os comandos específicos do Docker.

Detalhes

Descrição original do autor

Build, optimize, and troubleshoot Docker containers and images.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#2862
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas