37 lines
1.2 KiB
Docker
37 lines
1.2 KiB
Docker
FROM archlinux:latest
|
|
ARG TOOLS="wii-dev"
|
|
ARG UID="1000"
|
|
ARG GID="1000"
|
|
|
|
# setup pacman
|
|
USER root
|
|
COPY etc/profile.d/devkitpro.sh /etc/profile.d
|
|
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
|
|
RUN pacman -Sy --noconfirm base-devel openssh $TOOLS
|
|
|
|
# setup environment
|
|
RUN groupadd -g $GID devkitpro
|
|
RUN useradd -u $UID -g $GID -mN devkitpro
|
|
RUN ssh-keygen -A
|
|
RUN sed -i "s|#Port 22|Port 2222|g" /etc/ssh/sshd_config
|
|
RUN chown devkitpro:devkitpro /etc/ssh/ssh_host*
|
|
RUN mkdir /home/devkitpro/.ssh
|
|
RUN --mount=type=secret,id=key,target=/root/id.pub \
|
|
cp /root/id.pub /home/devkitpro/.ssh/authorized_keys
|
|
RUN chown devkitpro -R /home/devkitpro
|
|
USER devkitpro
|
|
WORKDIR /volume
|
|
RUN echo cd /volume >> /home/devkitpro/.bashrc
|
|
EXPOSE 2222/tcp
|
|
CMD ["/usr/sbin/sshd", "-D"]
|
|
# use docker exec to access container OR
|
|
# use docker compose to specify entrypoint
|