Skip to content

Commit e44103a

Browse files
authored
[generate] Updated dockerfile template to use devbox image (#1432)
## Summary Publishing a docker image for devbox, makes it easier to use an image with devbox installed and configured. So we can use it in our generated dockerfiles for `generate dockerfile` and `generate devcontainer` commands. ## How was it tested? `devbox generate dockerfile` or `devbox generate dockerfile --root-user` `devbox generate devcontainer` or `devbox generate devcontainer --root-user`
1 parent 858d2d9 commit e44103a

File tree

1 file changed

+3
-30
lines changed

1 file changed

+3
-30
lines changed

internal/impl/generate/tmpl/devcontainerDockerfile.tmpl

Lines changed: 3 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,8 @@
1-
FROM debian:stable-slim
2-
3-
# Step 1: Installing dependencies
4-
RUN apt-get update
5-
RUN apt-get -y install bash binutils git{{if .IsDevcontainer}} gnupg2{{- end}} xz-utils wget sudo
6-
7-
{{- if not .RootUser }}
8-
9-
# Step 1.5: Setting up devbox user
10-
ENV DEVBOX_USER=devbox
11-
RUN adduser $DEVBOX_USER
12-
RUN usermod -aG sudo $DEVBOX_USER
13-
RUN echo "devbox ALL=(ALL:ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/$DEVBOX_USER
14-
USER $DEVBOX_USER
15-
{{- end}}
16-
17-
# Step 2: Installing Nix
18-
RUN wget --output-document=/dev/stdout https://nixos.org/nix/install | sh -s -- --{{if not .RootUser}}no-{{- end}}daemon
19-
RUN . ~/.nix-profile/etc/profile.d/nix.sh
20-
{{ if .RootUser }}
21-
ENV PATH="/root/.nix-profile/bin:$PATH"
22-
{{ else }}
23-
ENV PATH="/home/${DEVBOX_USER}/.nix-profile/bin:$PATH"
24-
{{- end}}
25-
26-
# Step 3: Installing devbox
27-
RUN wget --quiet --output-document=/dev/stdout https://get.jetpack.io/devbox | bash -s -- -f
28-
{{- if not .RootUser }}
29-
RUN chown -R "${DEVBOX_USER}:${DEVBOX_USER}" /usr/local/bin/devbox
1+
{{- if .RootUser }}FROM jetpackio/devbox-root-user:latest
2+
{{- else }}FROM jetpackio/devbox:latest
303
{{- end}}
314

32-
# Step 4: Installing your devbox project
5+
# Installing your devbox project
336
WORKDIR /code
347
COPY devbox.json devbox.json
358
COPY devbox.lock devbox.lock

0 commit comments

Comments
 (0)