Files
composes/code-server/Dockerfile
T

37 lines
1.2 KiB
Docker

FROM codercom/code-server:latest
USER root
# Extra system packages.
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential bubblewrap unzip zip \
&& rm -rf /var/lib/apt/lists/*
# Command-line utilities: network and DNS, search and review, lint,
# database clients, and backup and maintenance.
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
iproute2 lsof bind9-dnsutils netcat-openbsd socat mtr-tiny whois \
tree fd-find fzf git-delta bat \
shellcheck shfmt yamllint \
postgresql-client sqlite3 redis-tools \
ncdu tmux restic rclone age hyperfine entr 7zip \
&& rm -rf /var/lib/apt/lists/*
# Chromium and fonts for headless browser automation.
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
chromium fonts-liberation fonts-noto-color-emoji fonts-noto-cjk \
&& rm -rf /var/lib/apt/lists/*
# Workspace directory, owned by the container user.
RUN mkdir -p /workspace && chown 1000:1000 /workspace
# Startup wrapper: enters DEFAULT_WORKSPACE, joins the Docker socket's group,
# then runs the image's entrypoint.
COPY entrypoint.sh /usr/local/bin/entrypoint.sh
USER 1000
ENTRYPOINT ["/usr/local/bin/entrypoint.sh", "--bind-addr", "0.0.0.0:8080", "."]