Skip to content

Commit

Permalink
Update to Seafile-CE 11.0.5
Browse files Browse the repository at this point in the history
  • Loading branch information
h44z committed Feb 8, 2024
1 parent 6a477d7 commit b00be7f
Show file tree
Hide file tree
Showing 5 changed files with 21 additions and 18 deletions.
2 changes: 1 addition & 1 deletion .env.dist
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ MYSQL_USER_PASSWORD=seafilesecret
MYSQL_PORT=3306

# General Seafile Settings
SEAFILE_VERSION=10.0.1
SEAFILE_VERSION=11.0.5
SEAFILE_NAME=Seafile
SEAFILE_ADDRESS=seafile.localhost
[email protected]
Expand Down
7 changes: 5 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

## About

- This repository contains the sources that are used to build the `h44z/seafile-ce` docker image. Currently tested with Seafile CE 10.0.1.
- This repository contains the sources that are used to build the `h44z/seafile-ce` docker image. Currently tested with Seafile CE 11.0.5.

- The main goal of this image is to provide a really simple and clean docker image for Seafile Community Edition.
The official docker image is quite complex and hard to extend or modify. This image instead provides a simple way to deploy a standardized Seafile instance with Docker.
Expand Down Expand Up @@ -42,7 +42,7 @@ make server
```


## Running Seafile 10.x.x with docker-compose
## Running Seafile 11.x.x with docker-compose
Make sure that you have installed Docker Compose with version 1.21.0 or higher. Setting up Seafile is really easy and can be (or should be) done via Docker Compose. All important data is stored under `/seafile` so you should be mounting a volume there (recommended), as shown in the example configurations, or at the respective subdirectories.

The first step is to create a `.env` file by copying the provided .env.dist file:
Expand Down Expand Up @@ -79,6 +79,9 @@ mkdir -p data/onlyoffice
cp sample-configs/local.json data/onlyoffice/local.conf
```

## Upgrading from Seafile 10.x.x
Simply use the newer 11.x.x Docker image. If you used LDAP, please follow the [official upgrade instructions](https://manual.seafile.com/upgrade/upgrade_notes_for_11.0.x/) and update the settings accordingly.

## Upgrading from Seafile 9.x.x
Simply use the newer 10.x.x Docker image and enable the notification server in your seafile.conf.
To enable the notification server, follow the [official documentation](https://manual.seafile.com/config/seafile-conf/#notification-server-configuration).
Expand Down
2 changes: 1 addition & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ services:
max-file: "3"

seafile:
image: h44z/seafile-ce:${SEAFILE_VERSION:-10.0.1}
image: h44z/seafile-ce:${SEAFILE_VERSION:-11.0.5}
container_name: seafile
restart: unless-stopped
ports:
Expand Down
22 changes: 11 additions & 11 deletions image/seafile/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,16 +1,19 @@
FROM debian:bullseye-slim
FROM debian:bookworm-slim
LABEL org.opencontainers.image.authors="[email protected]"

ENV TZ=Europe/Vienna

# For support set local time zone.
RUN DEBIAN_FRONTEND=noninteractive apt-get update && apt-get install -y \
procps default-libmysqlclient-dev libjpeg-dev zlib1g-dev python3 python3-setuptools python3-pip \
ldap-utils curl sqlite3 tzdata locales memcached libmemcached-dev libffi-dev && \
pip3 install --timeout=3600 \
django==3.2.* future==0.18.* mysqlclient==2.1.* \
pymysql pillow==9.3.* pylibmc captcha==0.4 markupsafe==2.0.1 jinja2 sqlalchemy==1.4.3 \
psd-tools django-pylibmc django_simple_captcha==0.5.* djangosaml2==1.5.* pysaml2==7.2.* pycryptodome==3.16.* cffi==1.15.1 lxml && \
procps python3 python3-dev python3-setuptools python3-pip libmariadb-dev-compat libmariadb-dev \
libjpeg-dev zlib1g-dev ldap-utils libldap2-dev libsasl2-dev \
curl sqlite3 tzdata locales memcached libmemcached-dev libffi-dev && \
rm -f /usr/bin/python && ln -s /usr/bin/python3 /usr/bin/python && \
pip3 install --break-system-packages --timeout=3600 \
click termcolor colorlog pymysql \
django==4.2.* future==0.18.* mysqlclient==2.1.* \
pillow==10.2.* pylibmc captcha==0.5.* markupsafe==2.0.1 jinja2 sqlalchemy==2.0.18 \
psd-tools django-pylibmc django_simple_captcha==0.6.* pyjwt==2.6.* djangosaml2==1.5.* pysaml2==7.2.* pycryptodome==3.16.* cffi==1.15.1 lxml python-ldap==3.4.3 && \
sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && locale-gen && \
ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone && \
apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
Expand All @@ -22,7 +25,7 @@ RUN curl -L https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VE
WORKDIR /opt/seafile

# build-time arguments, use them in docker build with --build-arg switch to build different version
ARG SEAFILE_VERSION=10.0.1
ARG SEAFILE_VERSION=11.0.5

ENV SEAFILE_VERSION=${SEAFILE_VERSION}

Expand All @@ -31,9 +34,6 @@ RUN mkdir -p /opt/seafile/ /seafile/ && \
| tar xzf - -C /opt/seafile/ && \
ln -s /opt/seafile/seafile-server-${SEAFILE_VERSION} /opt/seafile/seafile-server-latest

# For using TLS connection to LDAP/AD server with docker-ce.
RUN find /opt/seafile/ \( -name "liblber-*" -o -name "libldap-*" -o -name "libldap_r*" -o -name "libsasl2.so*" \) -delete

COPY scripts /scripts

EXPOSE 8000 8082 8080
Expand Down
6 changes: 3 additions & 3 deletions image/seafile/scripts/seafile-entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ handle_error() {
}

autorun() {
echo "autorun"
echo "Automatic startup of Seafile $VERSION (old version $OLD_VERSION)"
prepare_admin_creds

# Update if neccessary
Expand Down Expand Up @@ -340,8 +340,8 @@ full_update(){
echo "---------------------------------------"
echo ""
# Iterate through all the major upgrade scripts and apply them
for i in `ls ${INSTALLPATH}/upgrade/`; do
# Search for first major version upgrade, ls results are ordered =)
for i in `ls ${INSTALLPATH}/upgrade/ | grep upgrade | sort -V`; do
# Search for first major version upgrade, ls results are ordered (oldest versions first)
if [ `echo $i | grep "upgrade_${OLD_MAJOR_VERSION}"` ]; then
EXECUTE=1
fi
Expand Down

0 comments on commit b00be7f

Please sign in to comment.