These installers offer a quick and easy way to set up a production ready Seafile Server using MariaDB, Memcached and NGINX as a reverse proxy in under 5 minutes.
* Community Edition ** Professional Edition
Install the Seafile Server in a standard and more secure manner then our current out of the box setup scripts offer. Instead of SQLite we're using MariaDB and NGINX instead of Gunicorn.
There too many ways to misconfigure a manual Seafile server installation. We've notices that many people don't realize that the default installation is very unsafe. In other cases people get stuck during the manual installation procedure or forget a step like changing FILE_SERVER_ROOT
or use IP addresses instead of resolvable DNS names.
The scripts are derived from our reference installation for Seafile Server Professional. They help us to standardize the installation procedure and identifying setup errors more easily.
Just select the corresponding installer for your OS. All scripts are meant to run with the bare minimum OS setup. We strongly suggest not installing Seafile server besides desktop environment or hosting panels like Plesk, ISPConfig, etc. Professional installations which don't follow our setup suggestions, don't qualify for official support. Keep this in mind.
Video: Debian Jessie minimal installation Video: Ubuntu Trusty minimal installation
- Debian Wheezy & Jessie
- Ubuntu Trusty
- Ubuntu Trusty (Pi / ARM)
- Uberspace (Centos 6.x only)
- Debian Wheezy & Jessie
- Ubuntu Trusty
- Centos 7
- SUSE Linux Enterprise Server 12
Never run these scripts on a production server. They are more or less a one trick pony and could seriously damage production systems. Run it only once and delete it afterwards. If something goes wrong, restart with a fresh machine.
As a precaution I have added a few simple checks to abort installation if any of these fails:
- Check if you're running this script as root. If not, abort.
- Check if the user "seafile" exists. If yes, abort.
- Check if the directory "/opt/seafile" exists. If yes, abort.
- HTTPS-Proxy
- Redirect all HTTP to HTTPS
- Seahub with FastCGI
- Seafile WebDAV (aka. SeafDAV) with FastCGI
- MariaDB
- Memcached
- Seafile auto start
- Postfix
- Firewall
- Fail2ban
- Autoupdate OS
Except for the Uberspace installer all installers need to run as root. Running them with sudo will not work! Login as root or switch to root with sudo su before installing with these installers. Make sure your OS package repository (e.g. /etc/apt/sources.list) is set correct before proceeding.
For Debian Wheezy and Jessie (32bit and 64bit):
apt-get install lsb-release -y
cd /root
wget --no-check-certificate https://raw.githubusercontent.com/SeafileDE/seafile-server-installer/master/seafile_debian
bash seafile_debian
For Ubuntu Trusty (64bit):
sudo su
cd /root
wget --no-check-certificate https://raw.githubusercontent.com/SeafileDE/seafile-server-installer/master/community-edition/seafile-ce_ubuntu-trusty-amd64
bash seafile-ce_ubuntu-trusty-amd64
BETA: For Ubuntu Trusty (Pi/ARM):
sudo su
cd /root
wget --no-check-certificate https://raw.githubusercontent.com/SeafileDE/seafile-server-installer/master/community-edition/seafile-ce_ubuntu-trusty-arm
bash seafile-ce_ubuntu-trusty-arm
For Uberspace run the following lines:
wget --no-check-certificate https://raw.githubusercontent.com/SeafileDE/seafile-server-installer/master/community-edition/seafile-ce_uberspace
bash seafile-ce_uberspace
You will have to download the Seafile Professional Server package prior to the installation and save it to /usr/src/seafile/. Make sure the variable SEAFILE_VERSION
is set to the downloaded version before proceeding with the installation.
Seafile Professional is free for up to 3 users. Order your free copy here:
For Debian Wheezy and Jessie (64bit only) run the following lines as root
apt-get install lsb-release -y
cd /root
wget --no-check-certificate https://raw.githubusercontent.com/SeafileDE/seafile-server-installer/master/seafile_debian
bash seafile_debian
For Centos 7 (64bit only) run the following lines as root
cd /root
wget --no-check-certificate https://raw.githubusercontent.com/SeafileDE/seafile-server-installer/master/professional-edition/seafile-pro_centos-7-amd64
bash seafile-pro_centos-7-amd64
BETA: For SUSE Enterprise Linux 12 (64bit only) run the following lines as root
cd /root
wget --no-check-certificate https://raw.githubusercontent.com/SeafileDE/seafile-server-installer/master/professional-edition/seafile-pro_sles-12-amd64
bash seafile-pro_sles-12-amd64
Where do I find the full installation log?
At /root/[installer_name]_installation.log
What's the unprivileged Seafile users name seafile
How can I change the domain name of the Seafile server?
Run the seafile-server-change-address
script on the shell
How can I login as the unprivileged Seafile user?
Run su - seafile -s /bin/bash
with root privileges on the shell
How do I update Seafile? You will have to handle Seafile updates/upgrades manually after the initial installation. Consult http://manual.seafile.com/deploy/upgrade.html on how to upgrade Seafile.
To login as the Seafile users run su - seafile -s /bin/bash
and then proceed with the update procedure as usual.
BTW: Ideas on how to automate upgrades are very welcome!
What do I have to do after the installer has finished?
- Delete installer script. You wont need it anymore and might even seriously damage your system if you run it again.
- Follow the suggested steps at the end of the installation to finalize your Seafile server installation.
If your installation did not finish successfully, check /root/[installer_name]_installation.log
for errors.
Alpha: Convert seafile.db (SQLite DB) to MySQL - Use with extreme caution only
This is only needed if your seafile-db was mistakenly created as SQLite database by one of the older installers. Only installations till end of May 2015 should be affected. To find out if you are affected, just run find / -type f -name seafile.db -print
. If it finds the file we suggest converting your installation. You can use this script, but be cautios. It is not very well tested and could seriously brake things. Make a backup before running seafile-db-fixer... If you want to fix the problem manually, consult http://manual.seafile.com/deploy/migrate_from_sqlite_to_mysql.html for general instructions.
cd /root
wget --no-check-certificate https://raw.githubusercontent.com/SeafileDE/seafile-server-installer/master/misc/seafile-db-fixer
bash seafile-db-fixer
Copyright 2015, Alexander Jackson [email protected]
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
Create an issue on Github or just reply in the corresponding forum thread.