Files
ArgoCD Setup d380cd8585 refactor: migrar GitLab → Gitea (aulas 10, 11, 13)
- Aula 10: Gitea + Registry + Actions + Runner (substituiu GitLab)
  - gitea-values.yaml: PostgreSQL standalone, Valkey standalone, ~800Mi RAM
  - setup.sh/cleanup.sh: namespace gitea, Helm gitea-charts/gitea + actions
  - README.md: documentação completa com de→para (GitLab/Harbor/Tekton vs Gitea)

- Aula 11: ArgoCD (GitOps) — removido GitLab Runner (runner vive na aula-10)
  - setup.sh: só ArgoCD, integração SSH com Gitea
  - node-bugado/.gitea/workflows/ci.yml: pipeline convertida

- Aula 13: Container Factory — atualizado para Gitea
  - setup.sh/cleanup.sh: referências GitLab → Gitea
  - pipelines/postgresql/ci.yml: Gitea Actions workflow
  - README.md: conexão com act_runner explicada

- CLAUDE.md: tabela de aulas atualizada
2026-03-14 01:44:30 -03:00

91 lines
3.9 KiB
Docker

# =============================================================================
# DevOps Toolbox - Demonstração de eStargz
# =============================================================================
# Imagem grande (~650MB) com múltiplas ferramentas em camadas separadas.
# Ideal para demonstrar lazy pulling: você só usa UMA ferramenta por vez!
# =============================================================================
FROM alpine:3.21
LABEL maintainer="workshop"
LABEL description="DevOps toolbox for eStargz lazy pulling demonstration"
# -----------------------------------------------------------------------------
# Camada 1: Ferramentas básicas (~50MB)
# -----------------------------------------------------------------------------
RUN apk add --no-cache \
bash \
curl \
wget \
jq \
git \
openssh-client \
ca-certificates \
unzip
# -----------------------------------------------------------------------------
# Camada 2: Terraform (~100MB)
# -----------------------------------------------------------------------------
ARG TERRAFORM_VERSION=1.9.8
ARG TARGETARCH
RUN wget -q "https://releases.hashicorp.com/terraform/${TERRAFORM_VERSION}/terraform_${TERRAFORM_VERSION}_linux_${TARGETARCH}.zip" -O /tmp/terraform.zip && \
unzip -q /tmp/terraform.zip -d /usr/local/bin/ && \
rm /tmp/terraform.zip && \
chmod +x /usr/local/bin/terraform
# -----------------------------------------------------------------------------
# Camada 3: OpenTofu (~100MB)
# -----------------------------------------------------------------------------
ARG TOFU_VERSION=1.8.8
RUN wget -q "https://github.com/opentofu/opentofu/releases/download/v${TOFU_VERSION}/tofu_${TOFU_VERSION}_linux_${TARGETARCH}.zip" -O /tmp/tofu.zip && \
unzip -q /tmp/tofu.zip -d /usr/local/bin/ && \
rm /tmp/tofu.zip && \
chmod +x /usr/local/bin/tofu
# -----------------------------------------------------------------------------
# Camada 4: Kubectl (~50MB)
# -----------------------------------------------------------------------------
ARG KUBECTL_VERSION=1.31.4
RUN curl -sLO "https://dl.k8s.io/release/v${KUBECTL_VERSION}/bin/linux/${TARGETARCH}/kubectl" && \
chmod +x kubectl && \
mv kubectl /usr/local/bin/
# -----------------------------------------------------------------------------
# Camada 5: Helm (~50MB)
# -----------------------------------------------------------------------------
ARG HELM_VERSION=3.16.4
RUN wget -q "https://get.helm.sh/helm-v${HELM_VERSION}-linux-${TARGETARCH}.tar.gz" -O /tmp/helm.tar.gz && \
tar -xzf /tmp/helm.tar.gz -C /tmp && \
mv /tmp/linux-${TARGETARCH}/helm /usr/local/bin/ && \
rm -rf /tmp/helm.tar.gz /tmp/linux-${TARGETARCH}
# -----------------------------------------------------------------------------
# Camada 6: AWS CLI (~200MB)
# -----------------------------------------------------------------------------
RUN apk add --no-cache aws-cli
# -----------------------------------------------------------------------------
# Camada 7: Python + Ansible (~150MB)
# -----------------------------------------------------------------------------
RUN apk add --no-cache python3 py3-pip && \
pip3 install --no-cache-dir ansible --break-system-packages --quiet
# -----------------------------------------------------------------------------
# Camada 8: k9s (~50MB)
# -----------------------------------------------------------------------------
ARG K9S_VERSION=0.32.7
RUN wget -q "https://github.com/derailed/k9s/releases/download/v${K9S_VERSION}/k9s_Linux_${TARGETARCH}.tar.gz" -O /tmp/k9s.tar.gz && \
tar -xzf /tmp/k9s.tar.gz -C /usr/local/bin/ k9s && \
rm /tmp/k9s.tar.gz
# -----------------------------------------------------------------------------
# Entrypoint
# -----------------------------------------------------------------------------
COPY entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
WORKDIR /workspace
ENTRYPOINT ["/entrypoint.sh"]
CMD ["--help"]