-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathDockerfile
More file actions
43 lines (40 loc) · 1.17 KB
/
Dockerfile
File metadata and controls
43 lines (40 loc) · 1.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
FROM testcab/yay
LABEL maintainer="test.cab <code-server@test.cab>"
# Install code-server
RUN yay -Syyu --noconfirm code-server
# Add and configure code-server user
USER root
ARG user=coder
RUN useradd -m $user \
&& echo "$user ALL=(ALL:ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/$user > /dev/null \
&& curl -SsL https://github.com/boxboat/fixuid/releases/download/v0.5/fixuid-0.5-linux-amd64.tar.gz | tar -C /usr/local/bin -xzf - \
&& chown root:root /usr/local/bin/fixuid \
&& chmod 4755 /usr/local/bin/fixuid \
&& mkdir -p /etc/fixuid \
&& printf "user: $user\ngroup: $user\n" > /etc/fixuid/config.yml
USER $user
WORKDIR /home/$user
ENTRYPOINT ["fixuid", "-q", "code-server", "--bind-addr", "0.0.0.0:8080"]
# Install tools and programming languages
RUN yay -Syyu --noconfirm \
# Cloud Tools
aliyun-cli \
aws-cli azure-cli google-cloud-sdk \
# Editors
nano vim \
# SCM
git tig \
# Programming Languages
dotnet-sdk aspnet-targeting-pack \
go \
groovy \
jdk-openjdk openjdk-src \
nodejs npm yarn \
powershell-bin \
python python-pip \
# Tools
ansible \
bash-completion shellcheck \
docker docker-compose \
rmate \
terraform terragrunt