How to Setup Seafile on Ubuntu 16.04
Seafile is a free, open source and cross-platform file storage system similar to Dropbox. It is used for sharing and syncing files between users and groups. It can be easily integrated with LDAP and WebDAV. It supports file versioning, snapshots and two-factor authentication. You can deploy it with MySQL, MariaDB, PostgreSQL, Apache and Nginx web server. Files are stored on Seafile server and can be synchronized with personal computers and mobile devices through apps. You can also access and manage Seafile through a web browser.
Install Required Dependencies
Before starting, you will need to install some dependencies in order to install Seafile. You can install all the dependencies by running the following command:
apt-get install apache2 openjdk-8-jre poppler-utils libreoffice libreoffice-script-provider-python libpython2.7 python-pip xfonts-wqy python-imaging python-mysqldb python-setuptools python-memcache ttf-wqy-microhei ttf-wqy-zenhei -y
Next, you will also need to install boto using pip:
pip install boto
Configure Apache for Seafile
Next, you will need to configure Apache as a reverse proxy server for seafile-server on port 8000 and 8002. You can do this by creating seafile.conf file:
Add the following lines:
Alias /media /var/www/html/seafile/seahub/media RewriteEngine On <Location /media>
Require all granted
# seafile fileserver
ProxyPass /seafhttp http://127.0.0.1:8082
ProxyPassReverse /seafhttp http://127.0.0.1:8082
RewriteRule ^/seafhttp - [QSA,L] #
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
ProxyPass / http://127.0.0.1:8000/
ProxyPassReverse / http://127.0.0.1:8000/
Save and close the file, then enable seafile virtual host, rewrite module and proxy module with the following command:
Finally, restart apache service to apply all the changes:
systemctl restart apache2
Seafile server is now installed and listening on port 80. Open your web browser and type the URL
For details, please go to this tutorial.
Related Blog Posts
In this tutorial, we will learn how to setup an Apache Hadoop on a single node cluster in an Alibaba Cloud Elastic Compute Service (ECS) instance with Ubuntu 16.04.
Apache is the cornerstone of modern web servers and is a powerful software solution for a large percentage of today’s internet economy.
According to a July 2018 research published by w3techs, Apache has a market share of around 45.9%. That being said, Apache web server is targeted by most hackers. The software is secure out-of-the-box but you can still harden it with some additional modules.
Related Market Product
H2O is used for exploring and analyzing datasets held in cloud computing systems & in the Apache Hadoop Distributed File System and in the conventional operating-systems.
MySQL is the world’s most popular open source database. As an important part of LAMP and a combination of open source software (Linux + Apache + MySQL + Perl/PHP/Python), MySQL is widely used in a variety of applications.
Apache expiration policies can be set in mod_expires and mod_headers on apache.
MySQL is one of the most popular open-source databases in the world. As a key component of the open-source software bundle LAMP (Linux, Apache, MySQL, and Perl/PHP/Python), MySQL has been widely applied to different scenarios.
You can use content delivery network (CDN) to deliver content to users from the nodes that are nearest to them, accelerating the response to user requests and increasing the response rate. CDN also resolves the delivery latency problem that is usually caused by distribution, bandwidth, and server performance issues. CDN has been applied in multiple scenarios, including site acceleration, on-demand streaming, and live streaming.
This course aims to help users who want to understand Big Data technology and data processing through cloud products. Through learning, users can fully understand the concept of Big Data and what is Hadoop, which is a firm foundation for the later study of Big Data technology.