Files
workspace-image/Dockerfile
T
iceBear67 ad1ea04549 feat: overhaul container initialization and entrypoint
- Replace apt-get with apt in Dockerfile
- Add tini as init system and set ENTRYPOINT/CMD
- Simplify init.fish by removing first-run logic and tmux session management
- Add landing.fish and SIGTERM signal handling
- Improve container lifecycle management
2025-09-25 17:20:58 +08:00

22 lines
728 B
Docker

FROM alpine/git
WORKDIR /src
RUN git clone https://github.com/iceBear67/bubble .
FROM debian:13
COPY --from=0 --chmod=0755 /src/bubble.sh /bin/bubble
RUN <<EOF
apt update
apt upgrade
chmod +x /bin/bubble
apt install curl jq neovim htop fish tmux sudo git iproute2 iputils-ping dnsutils openssh-sftp-server build-essential htop tini
useradd -m -s /usr/bin/fish user
echo "user ALL=(ALL:ALL) NOPASSWD:ALL" >> /etc/sudoers
sudo -u user mkdir -p /home/user/.config/fish/
ln -s /usr/lib/openssh/sftp-server /usr/sbin/bubble-sftp
EOF
COPY ./init.fish /init.fish
COPY ./landing.fish /landing.fish
COPY --chown=user ./user.fish /home/user/.config/fish/config.fish
ENTRYPOINT ["/usr/bin/tini", "--"]
CMD ["/usr/bin/fish", "/init.fish"]