1
- # Usar uma imagem base com suporte ao Docker
2
1
FROM mcr.microsoft.com/vscode/devcontainers/base:ubuntu-22.04
3
2
4
- # Evitar prompts interativos durante a instalação
5
3
ENV DEBIAN_FRONTEND=noninteractive
6
4
7
- # Instalar dependências básicas
8
5
RUN apt-get update && apt-get install -y \
9
6
apt-transport-https \
10
7
ca-certificates \
@@ -15,44 +12,38 @@ RUN apt-get update && apt-get install -y \
15
12
git \
16
13
unzip \
17
14
jq \
15
+ sudo \
18
16
&& rm -rf /var/lib/apt/lists/*
19
17
20
- # Instalar Docker CLI
18
+ # Docker CLI
21
19
RUN curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg \
22
20
&& echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" > /etc/apt/sources.list.d/docker.list \
23
21
&& apt-get update && apt-get install -y docker-ce-cli docker-buildx-plugin docker-compose-plugin \
24
22
&& rm -rf /var/lib/apt/lists/*
25
23
26
- # Instalar kubectl
24
+ # kubectl
27
25
RUN curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" \
28
26
&& chmod +x kubectl \
29
27
&& mv kubectl /usr/local/bin/
30
28
31
- # Instalar KinD
29
+ # KinD
32
30
RUN curl -Lo /usr/local/bin/kind https://kind.sigs.k8s.io/dl/v0.21.0/kind-linux-amd64 \
33
31
&& chmod +x /usr/local/bin/kind
34
32
35
- # Instalar Helm
33
+ # Helm
36
34
RUN curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
37
35
38
- # Instalar K9s (cliente Kubernetes TUI)
36
+ # K9s
39
37
RUN curl -Lo k9s.tar.gz https://github.com/derailed/k9s/releases/latest/download/k9s_Linux_amd64.tar.gz \
40
38
&& tar -xf k9s.tar.gz \
41
39
&& mv k9s /usr/local/bin/ \
42
40
&& rm k9s.tar.gz LICENSE README.md
43
41
44
- # Configurar permissões para o usuário vscode
45
- RUN groupadd docker || true \
46
- && usermod -aG docker vscode || true \
47
- && mkdir -p /home/vscode/.kube \
48
- && chown -R vscode:vscode /home/vscode/.kube
49
-
50
- # Criar diretório para configurações do KinD
51
- RUN mkdir -p /home/vscode/.kind \
52
- && chown -R vscode:vscode /home/vscode/.kind
53
-
54
- # Limpar cache
55
- RUN apt-get clean && \
56
- rm -rf /var/lib/apt/lists/*
42
+ # Permissões e sudo sem senha para vscode
43
+ RUN groupadd -f docker \
44
+ && usermod -aG docker vscode \
45
+ && mkdir -p /home/vscode/.kube /home/vscode/.kind \
46
+ && chown -R vscode:vscode /home/vscode/.kube /home/vscode/.kind \
47
+ && echo "vscode ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/99-vscode
57
48
58
49
USER vscode
0 commit comments