mirror of
https://github.com/ggogel/seafile-containerized.git
synced 2024-11-16 09:01:38 +00:00
75 lines
2.2 KiB
Docker
75 lines
2.2 KiB
Docker
FROM alpine:3.18.6 AS get
|
|
|
|
RUN apk add --no-cache wget
|
|
|
|
ENV SEAFILE_VERSION=11.0.9
|
|
|
|
RUN cd /tmp && \
|
|
wget https://download.seadrive.org/seafile-server_${SEAFILE_VERSION}_x86-64.tar.gz?nocache=$(date +%s) -O seafile-server_${SEAFILE_VERSION}_x86-64.tar.gz && \
|
|
tar -zxvf seafile-server_${SEAFILE_VERSION}_x86-64.tar.gz && \
|
|
rm -f seafile-server_${SEAFILE_VERSION}_x86-64.tar.gz
|
|
|
|
FROM ubuntu:jammy@sha256:19478ce7fc2ffbce89df29fea5725a8d12e57de52eb9ea570890dc5852aac1ac AS pip
|
|
|
|
RUN apt-get update && \
|
|
DEBIAN_FRONTEND=noninteractive apt-get install -y \
|
|
python3 \
|
|
python3-pip \
|
|
libldap2-dev \
|
|
libsasl2-dev \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
RUN pip3 install --target /pip-deps --timeout=3600 --no-cache-dir \
|
|
sqlalchemy==2.0.31 \
|
|
click==8.1.7 \
|
|
termcolor==2.4.0 \
|
|
colorlog==6.8.2 \
|
|
pymysql==1.1.1 \
|
|
jinja2==3.1.4 \
|
|
pycryptodome==3.20.0 \
|
|
lxml==5.2.2 \
|
|
python-ldap==3.4.4
|
|
|
|
RUN find /pip-deps -name "__pycache__" -type d -exec rm -r {} + && \
|
|
rm -rf /pip-deps/pip /pip-deps/wheel /pip-deps/setuptools
|
|
|
|
FROM ubuntu:jammy@sha256:19478ce7fc2ffbce89df29fea5725a8d12e57de52eb9ea570890dc5852aac1ac
|
|
|
|
ENV SEAFILE_VERSION=11.0.9
|
|
|
|
RUN apt-get update && \
|
|
DEBIAN_FRONTEND=noninteractive apt-get install -y \
|
|
netcat-openbsd \
|
|
socat \
|
|
cron \
|
|
tzdata \
|
|
psmisc \
|
|
net-tools \
|
|
libmariadb-dev \
|
|
ldap-utils \
|
|
ca-certificates \
|
|
python3 \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
COPY --from=pip /pip-deps /usr/local/lib/python3.10/dist-packages
|
|
|
|
COPY --from=get /tmp/seafile-server-${SEAFILE_VERSION} /opt/seafile/seafile-server-${SEAFILE_VERSION}
|
|
|
|
COPY scripts /scripts
|
|
RUN chmod u+x /scripts/*
|
|
|
|
RUN mkdir -p /opt/seafile/logs &&\
|
|
touch /opt/seafile/logs/common.log &&\
|
|
ln -sf /opt/seafile/logs/common.log /opt/seafile/logs/seafile.log &&\
|
|
ln -sf /opt/seafile/logs/common.log /opt/seafile/logs/controller.log &&\
|
|
ln -sf /opt/seafile/logs/common.log /opt/seafile/logs/ccnet.log &&\
|
|
ln -sf /opt/seafile/logs/common.log /opt/seafile/logs/gc.log &&\
|
|
ln -sf /opt/seafile/logs/common.log /opt/seafile/logs/seafdav.log &&\
|
|
ln -sf /opt/seafile/logs/common.log /opt/seafile/logs/notification-server.log &&\
|
|
ln -sf /opt/seafile/logs/common.log /opt/seafile/logs/seafile-monitor.log &&\
|
|
mkdir -p /etc/ldap/ && echo "TLS_REQCERT allow" >> /etc/ldap/ldap.conf
|
|
|
|
EXPOSE 8001 8080 8082 8083
|
|
|
|
CMD ["/scripts/start.sh"]
|