Update Dockerfile to use debian:unstable-slim
This commit is contained in:
parent
11a828668c
commit
e8b15314d2
1 changed files with 36 additions and 10 deletions
|
|
@ -1,26 +1,52 @@
|
||||||
# ------------------------------------------------------------
|
# ------------------------------------------------------------
|
||||||
# Base Image
|
# Base Image
|
||||||
# ------------------------------------------------------------
|
# ------------------------------------------------------------
|
||||||
FROM mcr.microsoft.com/devcontainers/base:debian
|
FROM debian:unstable-slim
|
||||||
|
|
||||||
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
|
ENV LANG=C.UTF-8
|
||||||
|
ENV LC_ALL=C.UTF-8
|
||||||
|
|
||||||
# ------------------------------------------------------------
|
# ------------------------------------------------------------
|
||||||
# System Dependencies
|
# System Dependencies
|
||||||
# ------------------------------------------------------------
|
# ------------------------------------------------------------
|
||||||
RUN apt update && apt upgrade -y && \
|
RUN apt-get update && apt-get upgrade -y && \
|
||||||
apt-get install -y --no-install-recommends \
|
apt-get install -y --no-install-recommends \
|
||||||
|
curl \
|
||||||
|
ca-certificates \
|
||||||
git \
|
git \
|
||||||
git-lfs \
|
build-essential \
|
||||||
|
sudo \
|
||||||
fish \
|
fish \
|
||||||
|
unzip \
|
||||||
|
xz-utils \
|
||||||
|
libatomic1 \
|
||||||
|
libc6 \
|
||||||
|
wget \
|
||||||
nodejs \
|
nodejs \
|
||||||
npm \
|
npm && \
|
||||||
curl
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
# ------------------------------------------------------------
|
||||||
|
# Create Non-Root User
|
||||||
|
# ------------------------------------------------------------
|
||||||
|
ARG USERNAME=devuser
|
||||||
|
ARG UID=1000
|
||||||
|
ARG GID=1000
|
||||||
|
|
||||||
|
RUN groupadd --gid ${GID} ${USERNAME} && \
|
||||||
|
useradd --uid ${UID} --gid ${GID} -m -s /usr/bin/fish ${USERNAME} && \
|
||||||
|
echo "${USERNAME} ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
|
||||||
|
|
||||||
|
USER ${USERNAME}
|
||||||
|
WORKDIR /home/${USERNAME}
|
||||||
|
|
||||||
# ------------------------------------------------------------
|
# ------------------------------------------------------------
|
||||||
# Install Bun (Non-Root)
|
# Install Bun (Non-Root)
|
||||||
# ------------------------------------------------------------
|
# ------------------------------------------------------------
|
||||||
ENV BUN_INSTALL="$HOME/.bun"
|
ENV BUN_INSTALL=/home/${USERNAME}/.bun
|
||||||
ENV PATH="$BUN_INSTALL/bin:$PATH"
|
ENV PATH="${BUN_INSTALL}/bin:${PATH}"
|
||||||
|
|
||||||
RUN curl -fsSL https://bun.sh/install | bash
|
RUN curl -fsSL https://bun.sh/install | bash
|
||||||
|
|
||||||
# ------------------------------------------------------------
|
# ------------------------------------------------------------
|
||||||
|
|
@ -32,11 +58,11 @@ RUN curl -fsSL https://opencode.ai/install -o opencode-install && \
|
||||||
rm opencode-install
|
rm opencode-install
|
||||||
|
|
||||||
# Add OpenCode to PATH permanently
|
# Add OpenCode to PATH permanently
|
||||||
ENV PATH="$HOME/.opencode/bin:$PATH"
|
ENV PATH="/home/${USERNAME}/.opencode/bin:${PATH}"
|
||||||
|
|
||||||
# ------------------------------------------------------------
|
# ------------------------------------------------------------
|
||||||
# Ensure fish is Default Shell
|
# Ensure fish is Default Shell
|
||||||
# ------------------------------------------------------------
|
# ------------------------------------------------------------
|
||||||
ENV SHELL=/usr/bin/fish
|
ENV SHELL=/usr/bin/fish
|
||||||
|
|
||||||
CMD ["fish"]
|
CMD ["fish"]
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue