NetRunner: Java Mastery Guide 1.0 Help

Docker Básico

DOCKER ESSENTIALS ├── Conceitos ├── Instalação ├── Comandos Básicos ├── Docker Compose └── Best Practices

Fundamentos

Conceitos Básicos

DOCKER COMPONENTS ├── Images ├── Containers ├── Volumes ├── Networks └── Registry

Instalação

# Linux (Ubuntu) curl -fsSL https://get.docker.com | sh # Windows/Mac # Baixar Docker Desktop do site oficial

Comandos Essenciais

Gerenciamento de Containers

# Executar container docker run hello-world docker run -d -p 8080:80 nginx # Listar containers docker ps docker ps -a # Operações docker start container_id docker stop container_id docker restart container_id docker rm container_id

Imagens

# Listar imagens docker images # Pull de imagem docker pull ubuntu:latest # Remover imagem docker rmi imagem_id # Build de imagem docker build -t app:1.0 .

Dockerfile

Estrutura Básica

# Base image FROM openjdk:17-jdk-slim # Metadados LABEL maintainer="netrunner@corp.net" # Diretório de trabalho WORKDIR /app # Copiar arquivos COPY target/*.jar app.jar # Porta EXPOSE 8080 # Comando de execução CMD ["java", "-jar", "app.jar"]

Docker Compose

docker-compose.yml

version: '3.8' services: app: build: . ports: - "8080:8080" environment: - DB_HOST=db depends_on: - db db: image: postgres:13 environment: - POSTGRES_PASSWORD=secret

Comandos Compose

# Iniciar serviços docker-compose up -d # Parar serviços docker-compose down # Logs docker-compose logs

Redes

Network Commands

# Criar rede docker network create mynet # Listar redes docker network ls # Conectar container docker network connect mynet container_id

Volumes

Volume Management

# Criar volume docker volume create mydata # Listar volumes docker volume ls # Usar volume docker run -v mydata:/data nginx

Troubleshooting

Problemas Comuns

# Verificar logs docker logs container_id # Inspecionar container docker inspect container_id # Entrar no container docker exec -it container_id bash

Segurança

Best Practices

SECURITY CHECKLIST ├── Usar imagens oficiais ├── Manter containers atualizados ├── Limitar recursos ├── Usar usuários não-root └── Escanear vulnerabilidades

Monitoramento

Ferramentas

MONITORING TOOLS ├── Docker Stats ├── Prometheus ├── Grafana └── cAdvisor

Próximos Passos

Aprofundamento

  • Orquestração com Kubernetes

  • CI/CD com Docker

  • Docker Swarm

  • Microserviços

Setup Cloud

26 June 2025