47 lines
No EOL
1.4 KiB
Docker
47 lines
No EOL
1.4 KiB
Docker
FROM library/python:3.12-bullseye
|
|
|
|
ARG USER=vscode
|
|
ARG DEBIAN_FRONTEND=noninteractive
|
|
|
|
# Install system dependencies in a single layer
|
|
RUN apt update && apt install -y --no-install-recommends \
|
|
sudo jq vim curl\
|
|
&& apt autoremove -y \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Create the user and grant sudo privileges
|
|
RUN useradd -m -s /bin/bash ${USER} \
|
|
&& echo "${USER} ALL=(ALL) NOPASSWD: ALL" >/etc/sudoers.d/${USER} \
|
|
&& chmod 0440 /etc/sudoers.d/${USER}
|
|
|
|
# Install Poetry
|
|
RUN pip install --no-cache-dir poetry
|
|
|
|
|
|
# Install Node.js 22 (from NodeSource)
|
|
RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \
|
|
&& apt install -y nodejs \
|
|
&& node -v \
|
|
&& npm -v
|
|
|
|
|
|
# # Install aws
|
|
# RUN curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
|
|
# RUN unzip awscliv2.zip
|
|
# RUN ./aws/install
|
|
|
|
# # Install terraform
|
|
# RUN apt-get update && sudo apt-get install -y gnupg software-properties-common
|
|
# RUN wget -O- https://apt.releases.hashicorp.com/gpg | \
|
|
# gpg --dearmor | \
|
|
# sudo tee /usr/share/keyrings/hashicorp-archive-keyring.gpg > /dev/null
|
|
# RUN echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] \
|
|
# https://apt.releases.hashicorp.com $(lsb_release -cs) main" | \
|
|
# tee /etc/apt/sources.list.d/hashicorp.list
|
|
# RUN apt update
|
|
# RUN apt-get install terraform
|
|
# RUN terraform -install-autocomplete
|
|
|
|
|
|
# Set the working directory
|
|
WORKDIR /workspaces/monorepo |