From 394b99270ab3c9c48eb15b1fc34c8a4a1405616f Mon Sep 17 00:00:00 2001 From: Malfurious Date: Tue, 2 Aug 2022 17:48:11 -0400 Subject: Add Dockerfile for gitolite/ssh service Signed-off-by: Malfurious --- docker/.gitignore | 1 + docker/Dockerfile.gitolite | 25 +++++++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 docker/.gitignore create mode 100644 docker/Dockerfile.gitolite diff --git a/docker/.gitignore b/docker/.gitignore new file mode 100644 index 0000000..2fa7496 --- /dev/null +++ b/docker/.gitignore @@ -0,0 +1 @@ +*.pub diff --git a/docker/Dockerfile.gitolite b/docker/Dockerfile.gitolite new file mode 100644 index 0000000..e872678 --- /dev/null +++ b/docker/Dockerfile.gitolite @@ -0,0 +1,25 @@ +# https://gitolite.com/gitolite/index.html +# https://github.com/sitaramc/gitolite +# https://wiki.archlinux.org/title/Gitolite + +FROM archlinux + +# Set this to the administrator's SSH public key file (username.pub) +ARG pubkey + +# The gitolite package implies git, openssh, and creates the host user +RUN pacman-key --init +RUN pacman -Syu --needed --noconfirm gitolite + +# Initialize the gitolite datastore +COPY $pubkey / +RUN runuser -u gitolite -- gitolite setup -pk /$pubkey +# todo symlink files +VOLUME /var/lib/gitolite + +# sshd host keys are stored in a volume so that rebuilding/updating the +# image doesn't break user trust +RUN ssh-keygen -A +VOLUME /etc/ssh + +CMD ["/usr/bin/sshd", "-D"] -- cgit v1.2.3