Simple Seafile Server image with automatic setup.
8.8K
Seafile docker image based on Debian
Seafile is an open source storage system which can be self hosting for more privacy
Tags, based on Semantic Versioning, follow the schema x.y.z-a where x.y.z is the version of Seafile and a is an increment to follow features and bug fix of this image
This image exposes only one volume
Directory Structure
├── ccnet
│ └── seafile.ini
│
├── conf
│ ├── ccnet.conf
│ ├── seafdav.conf
│ ├── seafile.conf
│ ├── seahub_settings.py
│ └── seahub_settings.pyc
│
├── logs
│ ├── ccnet.log
│ ├── controller.log
│ ├── seafile.log
│ ├── seahub.log
│ └── seahub_django_request.log
│
├── seafile-data
│
├── seahub
│ └── media
│
├── seahub-data
│
└── sqlite
└── seahub.db
By default Seafile is configured to use Sqlite unless MYSQL_SERVER is set
version: '2'
services:
seafile:
image: sabaitech/seafile
container_name: seafile
ports:
- "8000:8000"
- "8082:8082"
environment:
- SERVER_ADDRESS=my.domain.com
- REVERSE_PROXY_MODE=HTTPS
- FASTCGI=true
- MYSQL_SERVER=mariadb
- MYSQL_USER=seafile
- MYSQL_USER_PASSWORD=test
- MYSQL_ROOT_PASSWORD=passw0rd!
- [email protected]
- SEAFILE_ADMIN_PASSWORD=passw00rd
- LDAP_URL=ldap://openldap
- LDAP_BASE=ou=people,dc=example,dc=org
- LDAP_LOGIN_ATTR=mail
- LDAP_USER_DN=cn=admin,dc=example,dc=org
- LDAP_PASSWORD=ldap_passw0rd
volumes:
- ./seafile:/seafile
depends_on:
- mariadb
mariadb:
image: mariadb:10.1
container_name: mariadb
ports:
- "3306:3306"
environment:
- MYSQL_ROOT_PASSWORD=passw0rd!
- MYSQL_USER=seafile
- MYSQL_PASSWORD=test
volumes:
- ./mysql/db:/var/lib/mysql
and just run docker-compose up -d
If you already have a previous installation of Seafile server (including non docker installation) and want to use this image you just have to:
conf, logs, seafile-data directories in the associated volumedocker-compose up -dYou can start, stop, restart seafile and seahub with a command like :
docker-compose exec seafile server command
where:
seafile is the name of the service defined in docker-compose.yml file
server is seafile or seahub
command is start, stop, restart
To upgrade the current version of Seafile server, you just have to run the following command:
docker-compose exec seafile upgrade 6.3.1
where:
seafile is the name of the service defined in docker-compose.yml file
6.3.1 is the new version
Once you have upgraded the server, you can change the version of the image in the docker-compose.yml file to keep the change permanently.
To remove unused data blocks, you can run the garbage collector:
docker-compose exec seafile gc
It will stop Seafile server, run the garbage collector, and then restart Seafile
Seafile comes with a tool to check the integrity, to repair the corrupted or to export libraries. To run this tools, you can execute:
docker-compose exec seafile fsck
It a simple shortcut to seaf-fsck.sh. The manual describes all the options of this tool
Content type
Image
Digest
Size
191.3 MB
Last updated
over 5 years ago
docker pull sabaitech/seafile