Initialize ChuBlog backend with SSH Git publishing
This commit is contained in:
commit
a631d75cee
31 files changed
+4850
No files matched your search
@@ -0,0 +1,38 @@
|
||||
FROM debian:trixie-slim AS base
|
||||
ARG DEBIAN_MIRROR=deb.debian.org
|
||||
RUN sed -i "s|deb.debian.org|${DEBIAN_MIRROR}|g" /etc/apt/sources.list.d/debian.sources
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends git ca-certificates libgmp10 curl util-linux && rm -rf /var/lib/apt/lists/*
|
||||
COPY bin/chublog-api /usr/local/bin/chublog-api
|
||||
COPY gitconfig /etc/chublog/gitconfig
|
||||
RUN groupadd -g 10002 ingress && useradd -u 10001 -g ingress -M -s /usr/sbin/nologin blog
|
||||
|
||||
FROM base AS api
|
||||
USER 10001:10002
|
||||
ENV API_BIND=0.0.0.0:3001 DATA_DIR=/data CHUBLOG_SSH_CONFIG=/auth/publishers.json INGRESS_REPO=/srv/ingress/content.git RUST_LOG=info
|
||||
ENTRYPOINT ["chublog-api"]
|
||||
|
||||
FROM base AS ssh
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends openssh-server && rm -rf /var/lib/apt/lists/* && useradd -u 10002 -g ingress -M -d /srv/ingress -s /bin/sh git && passwd -d git
|
||||
COPY sshd_config /etc/ssh/sshd_config
|
||||
COPY hooks /hooks
|
||||
COPY ssh-entrypoint.sh /usr/local/bin/ssh-entrypoint
|
||||
COPY authorized-keys.sh /usr/local/bin/chublog-authorized-keys
|
||||
RUN chmod 755 /hooks/pre-receive /usr/local/bin/ssh-entrypoint /usr/local/bin/chublog-authorized-keys
|
||||
ENTRYPOINT ["/usr/local/bin/ssh-entrypoint"]
|
||||
|
||||
FROM base AS init
|
||||
COPY init-volumes.sh /usr/local/bin/init-volumes
|
||||
RUN chmod 755 /usr/local/bin/init-volumes
|
||||
ENTRYPOINT ["/usr/local/bin/init-volumes"]
|
||||
|
||||
FROM debian:trixie-slim AS database
|
||||
ARG DEBIAN_MIRROR=deb.debian.org
|
||||
RUN sed -i "s|deb.debian.org|${DEBIAN_MIRROR}|g" /etc/apt/sources.list.d/debian.sources
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends libgmp10 ca-certificates && rm -rf /var/lib/apt/lists/* && useradd -u 10003 -M -s /usr/sbin/nologin chusql
|
||||
COPY bin/chusql-server bin/csql-bootstrap bin/libchusql_core_storage.so /usr/local/bin/
|
||||
COPY chusql.toml /etc/chusql/settings.toml
|
||||
COPY db-entrypoint.sh /usr/local/bin/db-entrypoint
|
||||
RUN chmod 755 /usr/local/bin/db-entrypoint
|
||||
ENV LD_LIBRARY_PATH=/usr/local/bin
|
||||
USER 10003:10003
|
||||
ENTRYPOINT ["/usr/local/bin/db-entrypoint"]
|
||||
Reference in new issue
Block a user