blob: 3c6da978bfcb1002d66316dfd78f6c2984eacc54 (
about) (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
FROM index.docker.io/alpine:3.20
LABEL MAINTAINER="vosje@vosjedev.net"
# Install needed packages
RUN set -xe \
&& apk update \
&& apk upgrade \
&& apk add --no-cache --purge -uU \
# Install gitolite
gitolite git openssh \
# install git-daemon
git-daemon \
# add nginx and cgit stuff
nginx fcgiwrap spawn-fcgi \
# python 3 pkg for highlight, about page
py3-markdown py3-pygments \
# tarballs support
lzip xz zstd gzip bzip2 \
# Create nginx folder
&& mkdir -p /run/nginx \
# Clean up
&& rm -rf /var/cache/apk/* \
&& rm -rf /tmp/*
# git compile deps
RUN apk add build-base openssl-dev zlib-dev lua5.3-dev asciidoc musl-libintl
# actually install cgit (vosjedev.net fork)
RUN set -xe \
&& cd / && git clone https://git.vosjedev.net/cgit.git cgit \
&& cd /cgit \
&& git checkout vosjedev.net \
&& git submodule init && git submodule update \
&& make \
NO_REGEX=NeedsStartEnd \
CGIT_SCRIPT_PATH=/usr/share/webapps/cgit \
NO_ICONV=YesPlease \
NO_TCLTK=YesPlease \
NO_SVN_TESTS=YesPlease \
LUA_PKGCONFIG=lua5.3 \
prefix=/usr \
install \
&& cd / && rm -rf /cgit /tmp
# Volume to store all ssh host key
VOLUME [ "/etc/ssh" ]
# Volume to store Gitolite data, used for Gitolite setup
VOLUME [ "/var/lib/git" ]
EXPOSE 22 80 9418
WORKDIR /var/lib/git
COPY cgit.css /usr/share/webapps/cgit/cgit.css
COPY md2html /usr/lib/cgit/filters/html-converters/md2html
COPY syntax-highlighting.py /usr/lib/cgit/filters/syntax-highlighting.py
COPY auto-default-branch.sh /usr/lib/gitolite/triggers/auto-default-branch
COPY entrypoint.sh /
RUN chmod u+x /usr/lib/cgit/filters/html-converters/md2html
RUN chmod u+x /usr/lib/cgit/filters/syntax-highlighting.py
RUN chmod a+x /usr/lib/gitolite/triggers/auto-default-branch
RUN chmod u+x /entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"]
|