devkitPro/Dockerfile

36 lines
1.2 KiB
Text
Raw Permalink Normal View History

2025-02-15 16:33:00 -07:00
FROM archlinux:latest
ARG TOOLS="wii-dev"
2025-02-15 16:33:00 -07:00
ARG UID="1000"
ARG GID="1000"
# setup pacman
USER root
RUN pacman-key --init
RUN pacman-key --recv BC26F752D25B92CE272E0F44F7FD5492264BB9D0 --keyserver keyserver.ubuntu.com
RUN pacman-key --lsign BC26F752D25B92CE272E0F44F7FD5492264BB9D0
RUN pacman --noconfirm -U https://pkg.devkitpro.org/devkitpro-keyring.pkg.tar.zst
RUN pacman-key --populate devkitpro
COPY etc/pacman.d/devkitpro.conf /etc/pacman.d
RUN echo Include = /etc/pacman.d/devkitpro.conf >> /etc/pacman.conf
RUN pacman -Syu --noconfirm
# install tools
2025-03-02 21:28:34 -07:00
RUN pacman -Sy --noconfirm base-devel openssh vim $TOOLS
2025-02-15 16:33:00 -07:00
# setup environment
RUN groupadd -g $GID devkitpro
2025-03-02 21:28:34 -07:00
RUN useradd -u $UID -g $GID -lNd / devkitpro
2025-03-02 19:38:25 -07:00
RUN ssh-keygen -A
RUN sed -i "s|#Port 22|Port 2222|g" /etc/ssh/sshd_config
2025-03-02 21:28:34 -07:00
RUN sed -i "s|AuthorizedKeysFile.*|AuthorizedKeysFile /etc/ssh/authorized_keys|g" /etc/ssh/sshd_config
2025-03-02 19:38:25 -07:00
RUN --mount=type=secret,id=key,target=/root/id.pub \
2025-03-02 21:28:34 -07:00
cp /root/id.pub /etc/ssh/authorized_keys
RUN chown devkitpro:devkitpro /etc/ssh/ssh_host* /etc/ssh/authorized_keys
COPY etc/environment /etc/environment
2025-02-15 16:33:00 -07:00
USER devkitpro
WORKDIR /volume
2025-03-02 19:38:25 -07:00
EXPOSE 2222/tcp
CMD ["/usr/sbin/sshd", "-D"]
2025-02-15 16:33:00 -07:00
# use docker exec to access container OR
# use docker compose to specify entrypoint