mirror of
https://github.com/haiwen/seafile-admin-docs.git
synced 2025-12-31 09:12:48 +00:00
4259 lines
91 KiB
HTML
4259 lines
91 KiB
HTML
|
|
<!doctype html>
|
|
<html lang="en" class="no-js">
|
|
<head>
|
|
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
|
|
|
|
<meta name="author" content="seafile">
|
|
|
|
|
|
<link rel="canonical" href="https://haiwen.github.io/seafile-admin-docs/docker/deploy_seafile_with_docker/">
|
|
|
|
|
|
<link rel="prev" href="../../deploy_pro/seafile_professional_sdition_software_license_agreement/">
|
|
|
|
|
|
<link rel="next" href="../pro-edition/deploy_seafile_pro_with_docker/">
|
|
|
|
|
|
<link rel="icon" href="../../media/favicon.ico">
|
|
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.5.39">
|
|
|
|
|
|
|
|
<title>Seafile Community Installation - Seafile Admin Manual</title>
|
|
|
|
|
|
|
|
<link rel="stylesheet" href="../../assets/stylesheets/main.8c3ca2c6.min.css">
|
|
|
|
|
|
<link rel="stylesheet" href="../../assets/stylesheets/palette.06af60db.min.css">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
|
|
<style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
|
|
|
|
|
|
|
|
<link rel="stylesheet" href="../../stylesheets/extra.css">
|
|
|
|
<script>__md_scope=new URL("../..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<body dir="ltr" data-md-color-scheme="default" data-md-color-primary="white" data-md-color-accent="indigo">
|
|
|
|
|
|
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
|
|
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
|
|
<label class="md-overlay" for="__drawer"></label>
|
|
<div data-md-component="skip">
|
|
|
|
|
|
<a href="#deploy-seafile-with-docker" class="md-skip">
|
|
Skip to content
|
|
</a>
|
|
|
|
</div>
|
|
<div data-md-component="announce">
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<header class="md-header md-header--shadow" data-md-component="header">
|
|
<nav class="md-header__inner md-grid" aria-label="Header">
|
|
<a href="../.." title="Seafile Admin Manual" class="md-header__button md-logo" aria-label="Seafile Admin Manual" data-md-component="logo">
|
|
|
|
<img src="../../media/seafile-transparent-1024.png" alt="logo">
|
|
|
|
</a>
|
|
<label class="md-header__button md-icon" for="__drawer">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg>
|
|
</label>
|
|
<div class="md-header__title" data-md-component="header-title">
|
|
<div class="md-header__ellipsis">
|
|
<div class="md-header__topic">
|
|
<span class="md-ellipsis">
|
|
Seafile Admin Manual
|
|
</span>
|
|
</div>
|
|
<div class="md-header__topic" data-md-component="header-topic">
|
|
<span class="md-ellipsis">
|
|
|
|
Seafile Community Installation
|
|
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<label class="md-header__button md-icon" for="__search">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
|
|
</label>
|
|
<div class="md-search" data-md-component="search" role="dialog">
|
|
<label class="md-search__overlay" for="__search"></label>
|
|
<div class="md-search__inner" role="search">
|
|
<form class="md-search__form" name="search">
|
|
<input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
|
|
<label class="md-search__icon md-icon" for="__search">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
|
|
</label>
|
|
<nav class="md-search__options" aria-label="Search">
|
|
|
|
<button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>
|
|
</button>
|
|
</nav>
|
|
|
|
</form>
|
|
<div class="md-search__output">
|
|
<div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix>
|
|
<div class="md-search-result" data-md-component="search-result">
|
|
<div class="md-search-result__meta">
|
|
Initializing search
|
|
</div>
|
|
<ol class="md-search-result__list" role="presentation"></ol>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="md-header__source">
|
|
<a href="https://github.com/haiwen/seafile-admin-docs/" title="Go to repository" class="md-source" data-md-component="source">
|
|
<div class="md-source__icon md-icon">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81"/></svg>
|
|
</div>
|
|
<div class="md-source__repository">
|
|
haiwen/seafile-admin-docs
|
|
</div>
|
|
</a>
|
|
</div>
|
|
|
|
</nav>
|
|
|
|
</header>
|
|
|
|
<div class="md-container" data-md-component="container">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<main class="md-main" data-md-component="main">
|
|
<div class="md-main__inner md-grid">
|
|
|
|
|
|
|
|
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
|
|
<div class="md-sidebar__scrollwrap">
|
|
<div class="md-sidebar__inner">
|
|
|
|
|
|
|
|
|
|
<nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
|
|
<label class="md-nav__title" for="__drawer">
|
|
<a href="../.." title="Seafile Admin Manual" class="md-nav__button md-logo" aria-label="Seafile Admin Manual" data-md-component="logo">
|
|
|
|
<img src="../../media/seafile-transparent-1024.png" alt="logo">
|
|
|
|
</a>
|
|
Seafile Admin Manual
|
|
</label>
|
|
|
|
<div class="md-nav__source">
|
|
<a href="https://github.com/haiwen/seafile-admin-docs/" title="Go to repository" class="md-source" data-md-component="source">
|
|
<div class="md-source__icon md-icon">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81"/></svg>
|
|
</div>
|
|
<div class="md-source__repository">
|
|
haiwen/seafile-admin-docs
|
|
</div>
|
|
</a>
|
|
</div>
|
|
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_1" id="__nav_1_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Overview
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_1_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_1">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Overview
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../overview/components/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Seafile Components
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../overview/file_permission_management/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
File permission management
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../roadmap/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Roadmap
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../contribution/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Contribution
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../changelog/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Changelog
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Seafile Community Setup on Linux
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_2">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Seafile Community Setup on Linux
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Outline
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/using_mysql/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Installation with MySQL
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/https_with_nginx/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
HTTPS with Nginx
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/https_with_apache/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
HTTPS with Apache
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Seafile Professional Setup on Linux
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_3">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Seafile Professional Setup on Linux
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Outline
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/download_and_setup_seafile_professional_server/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Installation
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/migrate_from_seafile_community_server/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Migration from Seafile Community
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_4" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_3_4" id="__nav_3_4_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Storage Backends
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_4_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_3_4">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Storage Backends
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/setup_with_amazon_s3/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Amazon S3 Backend
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/setup_with_ceph/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Ceph Backend
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/setup_with_swift/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
OpenStack Swift Backend
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/setup_with_oss/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Alibaba OSS
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/multiple_storage_backends/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Multiple Storage Backends
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/migrate/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Data migration
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_5" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_3_5" id="__nav_3_5_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Cluster Deployment
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_5_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_3_5">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Cluster Deployment
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/deploy_in_a_cluster/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Deploy in a cluster
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/enable_search_and_background_tasks_in_a_cluster/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Search and background tasks in a cluster
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/memcached_mariadb_cluster/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Memcache and MariaDB Cluster
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/setup_seafile_cluster_with_nfs/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Setup Seafile cluster with NFS
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/seafile_professional_sdition_software_license_agreement/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
License
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--active md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" checked>
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Seafile Setup with Docker
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="true">
|
|
<label class="md-nav__title" for="__nav_4">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Seafile Setup with Docker
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--active">
|
|
|
|
<input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
|
|
|
|
|
|
|
|
|
|
|
|
<label class="md-nav__link md-nav__link--active" for="__toc">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Seafile Community Installation
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<a href="./" class="md-nav__link md-nav__link--active">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Seafile Community Installation
|
|
</span>
|
|
|
|
|
|
</a>
|
|
|
|
|
|
|
|
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<label class="md-nav__title" for="__toc">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Table of contents
|
|
</label>
|
|
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#getting-started" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Getting started
|
|
</span>
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="Getting started">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#install-docker" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Install docker
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#download-and-modify-docker-composeyml" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Download and modify docker-compose.yml
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#start-seafile-server" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Start Seafile server
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#seafile-directory-structure" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Seafile directory structure
|
|
</span>
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="Seafile directory structure">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#optseafile-data" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
/opt/seafile-data
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#find-logs" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Find logs
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#more-configuration-options" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
More configuration options
|
|
</span>
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="More configuration options">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#custom-admin-username-and-password" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Custom admin username and password
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#lets-encrypt-ssl-certificate" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Let's Encrypt SSL certificate
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#use-an-existing-mysql-server" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Use an existing mysql-server
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#modify-seafile-server-configurations" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Modify Seafile server configurations
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#add-a-new-admin" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Add a new admin
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#run-seafile-as-non-root-user-inside-docker" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Run Seafile as non root user inside docker
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#backup-and-recovery" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Backup and recovery
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#garbage-collection" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Garbage collection
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#deploy-seafile-docker-with-custom-port" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Deploy Seafile docker with custom port
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#faq" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
FAQ
|
|
</span>
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="FAQ">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#you-can-run-docker-commands-like-docker-exec-to-find-errors" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
You can run docker commands like docker exec to find errors
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#letsencrypt-ssl-certificate-is-about-to-expire" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
LetsEncrypt SSL certificate is about to expire
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#change-the-environment-variable-seafile_server_letsencryptfalse-value-to-true" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Change the environment variable SEAFILE_SERVER_LETSENCRYPT=false value to true
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../pro-edition/deploy_seafile_pro_with_docker/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Seafile Professional Installation
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../cluster/deploy_seafile_cluster_with_docker/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Seafile Docker Cluster Deployment
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/deploy_with_k8s/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Setup with Kubernetes (K8s)
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../pro-edition/migrate_ce_to_pro_with_docker/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Migration from Seafile Community
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../non_docker_to_docker/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Migrate from non-docker deployment
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../seafile_docker_autostart/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Seafile Docker autostart
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Advanced Setup Options
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_5">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Advanced Setup Options
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_1" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_5_1" id="__nav_5_1_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
LDAP/AD Integration
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_1_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_5_1">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
LDAP/AD Integration
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/using_ldap/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
LDAP Integration
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/using_ldap_pro/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
LDAP Configuration for Seafile Pro
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/ldap_group_sync/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Importing Groups from LDAP (Pro)
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/ldap_role_sync/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Importing Roles from LDAP (Pro)
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/ldap_in_11.0/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
LDAP in version 11.0
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/ldap_in_11.0/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
LDAP in version 11.0 (Pro)
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_2" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_5_2" id="__nav_5_2_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Single Sign On
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_2_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_5_2">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Single Sign On
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/single_sign_on/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Outline
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/oauth/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
OAuth Authentication
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/remote_user/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Remote User Authentication
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/shibboleth_authentication/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Shibboleth Authentication
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/auto_login_seadrive/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Auto Login to SeaDrive on Windows
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/saml2_in_10.0/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
SAML 2.0 in version 10.0+ (Pro)
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/adfs/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
SAML 2.0 (old) (Pro)
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/cas/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
CAS Authentication (Pro)
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/auth_switch/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Switch authentication
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_3" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_5_3" id="__nav_5_3_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Online Office
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_3_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_5_3">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Online Office
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/libreoffice_online/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
LibreOffice Online Integration
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/only_office/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
OnlyOffice Integration
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/office_web_app/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Office Online Server Integration (Pro)
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../extra_setup/setup_seadoc/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
SeaDoc Integration
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/notification-server/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Notification Server
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../extension/webdav/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
WebDAV extension
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../extension/fuse/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
FUSE extension
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_8" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_5_8" id="__nav_5_8_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Virus Scan (Pro)
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_8_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_5_8">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Virus Scan (Pro)
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/virus_scan/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Outline
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/deploy_clamav_with_seafile/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Deploy ClamAV with Seafile
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/virus_scan_with_kav4fs/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Virus Scan With Kav4fs
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_9" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_5_9" id="__nav_5_9_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Advanced User Management (Pro)
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_9_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_5_9">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Advanced User Management (Pro)
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/multi_institutions/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Multi-Institutions Support
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/roles_permissions/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Roles and Permissions
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/admin_roles_permissions/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Administrator Roles and Permissions
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/multi_tenancy/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Multi-Tenancy Support
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/details_about_file_search/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Advanced File Search configuration (Pro)
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/migrate_from_sqlite_to_mysql/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Migrate From SQLite to MySQL
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_12" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_5_12" id="__nav_5_12_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Others Deployment Notes
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_12_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_5_12">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Others Deployment Notes
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/start_seafile_at_system_bootup/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Start Seafile at System Bootup
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/using_logrotate/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Logrotate
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/ocm/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Open Cloud Mesh
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/deploy_seafile_behind_nat/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Deploy Seafile behind NAT
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy/deploy_seahub_at_non-root_domain/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Deploy Seahub at Non-root domain or on custom port
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../security/fail2ban/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Config fail2ban
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/real_time_backup/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Real-time Backup Server
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Configuration and Customization
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_6">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Configuration and Customization
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../config/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Outline
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../config/ccnet-conf/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
ccnet.conf
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../config/seafile-conf/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
seafile.conf
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../config/seahub_settings_py/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
seahub_settings.py
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../config/seafevents-conf/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
seafevents.conf
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../config/seahub_customization/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Seahub customization
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../config/sending_email/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Email Sending
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Administration
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_7">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Administration
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../maintain/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Outline
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../maintain/account/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Account management
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../maintain/two_factor_authentication/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Two-factor Authentication
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../security/security_features/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Security features
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../security/auditing/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Access logs and auditing
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../maintain/export_report/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Export report
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../maintain/logs/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Logs
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../maintain/backup_recovery/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Backup and Recovery
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../maintain/seafile_fsck/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Seafile FSCK
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../maintain/seafile_gc/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Seafile GC
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../maintain/clean_database/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Clean database
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../deploy_pro/seaf_import/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Import Directory To Seafile (Pro)
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_8" id="__nav_8_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Upgrade Seafile Server
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_8_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_8">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Upgrade Seafile Server
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../upgrade/upgrade/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Outline
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../upgrade/upgrade_docker/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Upgrade Seafile Docker
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../upgrade/upgrade_a_cluster/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Upgrade Seafile Cluster
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../upgrade/upgrade_a_cluster_docker/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Upgrade Seafile Cluster (Docker)
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../upgrade/upgrade_notes_for_7.0.x/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Upgrade notes for 7.0.x
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../upgrade/upgrade_notes_for_7.1.x/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Upgrade notes for 7.1.x
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../upgrade/upgrade_notes_for_8.0.x/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Upgrade notes for 8.0.x
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../upgrade/upgrade_notes_for_9.0.x/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Upgrade notes for 9.0.x
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../upgrade/upgrade_notes_for_10.0.x/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Upgrade notes for 10.0.x
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../upgrade/upgrade_notes_for_11.0.x/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Upgrade notes for 11.0.x
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../upgrade/upgrade_notes_for_12.0.x/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Upgrade notes for 12.0.x (In progress)
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_9" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_9" id="__nav_9_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Developing
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_9_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_9">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Developing
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../develop/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Outline
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_9_2" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_9_2" id="__nav_9_2_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
How to Build Seafile
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_9_2_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_9_2">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
How to Build Seafile
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../build_seafile/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Outline
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../build_seafile/linux/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Linux
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../build_seafile/osx/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
macOS
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../build_seafile/windows/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Windows
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../build_seafile/server/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Server development
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../build_seafile/rpi/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Server binary package
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../develop/translation/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Translation
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../develop/web_api_v2.1/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Web API V2.1
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="https://github.com/rene-s/Seafile-PHP-SDK" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
PHP API
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../develop/data_model/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Data Model
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_10" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_10" id="__nav_10_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
ChangeLog
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_10_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_10">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
ChangeLog
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../changelog/server-changelog/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Seafile Community Edition
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../changelog/changelog-for-seafile-professional-server/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Seafile Professional Edition
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../changelog/client-changelog/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Seafile Client
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../changelog/drive-client-changelog/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Drive Client
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
<div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
|
|
<div class="md-sidebar__scrollwrap">
|
|
<div class="md-sidebar__inner">
|
|
|
|
|
|
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<label class="md-nav__title" for="__toc">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Table of contents
|
|
</label>
|
|
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#getting-started" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Getting started
|
|
</span>
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="Getting started">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#install-docker" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Install docker
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#download-and-modify-docker-composeyml" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Download and modify docker-compose.yml
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#start-seafile-server" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Start Seafile server
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#seafile-directory-structure" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Seafile directory structure
|
|
</span>
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="Seafile directory structure">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#optseafile-data" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
/opt/seafile-data
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#find-logs" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Find logs
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#more-configuration-options" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
More configuration options
|
|
</span>
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="More configuration options">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#custom-admin-username-and-password" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Custom admin username and password
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#lets-encrypt-ssl-certificate" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Let's Encrypt SSL certificate
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#use-an-existing-mysql-server" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Use an existing mysql-server
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#modify-seafile-server-configurations" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Modify Seafile server configurations
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#add-a-new-admin" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Add a new admin
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#run-seafile-as-non-root-user-inside-docker" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Run Seafile as non root user inside docker
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#backup-and-recovery" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Backup and recovery
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#garbage-collection" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Garbage collection
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#deploy-seafile-docker-with-custom-port" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Deploy Seafile docker with custom port
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#faq" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
FAQ
|
|
</span>
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="FAQ">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#you-can-run-docker-commands-like-docker-exec-to-find-errors" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
You can run docker commands like docker exec to find errors
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#letsencrypt-ssl-certificate-is-about-to-expire" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
LetsEncrypt SSL certificate is about to expire
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#change-the-environment-variable-seafile_server_letsencryptfalse-value-to-true" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
Change the environment variable SEAFILE_SERVER_LETSENCRYPT=false value to true
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
<div class="md-content" data-md-component="content">
|
|
<article class="md-content__inner md-typeset">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<h1 id="deploy-seafile-with-docker">Deploy Seafile with Docker<a class="headerlink" href="#deploy-seafile-with-docker" title="Permanent link">¶</a></h1>
|
|
<h2 id="getting-started">Getting started<a class="headerlink" href="#getting-started" title="Permanent link">¶</a></h2>
|
|
<p>The following assumptions and conventions are used in the rest of this document:</p>
|
|
<ul>
|
|
<li><code>/opt/seafile-data</code> is the directory of Seafile. If you decide to put Seafile in a different directory — which you can — adjust all paths accordingly.</li>
|
|
<li>Seafile uses two <a href="https://docs.docker.com/storage/volumes/">Docker volumes</a> for persisting data generated in its database and Seafile Docker container. The volumes' <a href="https://docs.docker.com/compose/compose-file/compose-file-v3/#volumes">host paths</a> are <code>/opt/seafile-mysql</code> and <code>/opt/seafile-data</code>, respectively. It is not recommended to change these paths. If you do, account for it when following these instructions.</li>
|
|
<li>All configuration and log files for Seafile and the webserver Nginx are stored in the volume of the Seafile container.</li>
|
|
</ul>
|
|
<h3 id="install-docker">Install docker<a class="headerlink" href="#install-docker" title="Permanent link">¶</a></h3>
|
|
<p>Use the <a href="https://docs.docker.com/engine/install/">official installation guide for your OS to install Docker</a>.</p>
|
|
<h3 id="download-and-modify-docker-composeyml">Download and modify <code>docker-compose.yml</code><a class="headerlink" href="#download-and-modify-docker-composeyml" title="Permanent link">¶</a></h3>
|
|
<p>Download the <code>docker-compose.yml</code> sample file into Seafile's directory and modify the Compose file to fit your environment and settings.</p>
|
|
<p><strong>NOTE:</strong> Different versions of Seafile have different compose files.</p>
|
|
<div class="codehilite"><pre><span></span><code>mkdir<span class="w"> </span>/opt/seafile
|
|
<span class="nb">cd</span><span class="w"> </span>/opt/seafile
|
|
|
|
<span class="c1"># Seafile CE 10.0</span>
|
|
wget<span class="w"> </span>-O<span class="w"> </span><span class="s2">"docker-compose.yml"</span><span class="w"> </span><span class="s2">"https://manual.seafile.com/docker/docker-compose/ce/10.0/docker-compose.yml"</span>
|
|
|
|
<span class="c1"># Seafile CE 11.0</span>
|
|
wget<span class="w"> </span>-O<span class="w"> </span><span class="s2">"docker-compose.yml"</span><span class="w"> </span><span class="s2">"https://manual.seafile.com/docker/docker-compose/ce/11.0/docker-compose.yml"</span>
|
|
|
|
nano<span class="w"> </span>docker-compose.yml
|
|
</code></pre></div>
|
|
|
|
<p>The following fields merit particular attention:</p>
|
|
<ul>
|
|
<li>The password of MySQL root (<code>MYSQL_ROOT_PASSWORD</code> and <code>DB_ROOT_PASSWD</code>)</li>
|
|
<li>The volume directory of MySQL data (volumes)</li>
|
|
<li>The volume directory of Seafile data (volumes).</li>
|
|
</ul>
|
|
<h3 id="start-seafile-server">Start Seafile server<a class="headerlink" href="#start-seafile-server" title="Permanent link">¶</a></h3>
|
|
<p>Start Seafile server with the following command</p>
|
|
<div class="codehilite"><pre><span></span><code><span class="c1"># if `docker-compose.yml` file is in current directory:</span>
|
|
docker-compose<span class="w"> </span>up<span class="w"> </span>-d
|
|
|
|
<span class="c1"># if `docker-compose.yml` file is elsewhere:</span>
|
|
docker-compose<span class="w"> </span>-f<span class="w"> </span>/path/to/docker-compose.yml<span class="w"> </span>up<span class="w"> </span>-d
|
|
</code></pre></div>
|
|
|
|
<p>Wait for a few minutes for the first time initialization, then visit <code>http://seafile.example.com</code> to open Seafile Web UI.</p>
|
|
<h2 id="seafile-directory-structure">Seafile directory structure<a class="headerlink" href="#seafile-directory-structure" title="Permanent link">¶</a></h2>
|
|
<h3 id="optseafile-data"><code>/opt/seafile-data</code><a class="headerlink" href="#optseafile-data" title="Permanent link">¶</a></h3>
|
|
<p>Placeholder spot for shared volumes. You may elect to store certain persistent information outside of a container, in our case we keep various log files and upload directory outside. This allows you to rebuild containers easily without losing important information.</p>
|
|
<ul>
|
|
<li>/opt/seafile-data/seafile: This is the directory for seafile server configuration and data.</li>
|
|
<li>/opt/seafile-data/seafile/logs: This is the directory that would contain the log files of seafile server processes. For example, you can find seaf-server logs in <code>/opt/seafile-data/seafile/logs/seafile.log</code>.</li>
|
|
<li>/opt/seafile-data/logs: This is the directory for operating system and Nginx logs.</li>
|
|
<li>/opt/seafile-data/logs/var-log: This is the directory that would be mounted as <code>/var/log</code> inside the container. For example, you can find the nginx logs in <code>/opt/seafile-data/logs/var-log/nginx/</code>.</li>
|
|
<li>/opt/seafile-data/ssl: This is directory for certificate, which does not exist by default.</li>
|
|
</ul>
|
|
<h3 id="find-logs">Find logs<a class="headerlink" href="#find-logs" title="Permanent link">¶</a></h3>
|
|
<p>To monitor container logs (from outside of the container), please use the following commands:</p>
|
|
<div class="codehilite"><pre><span></span><code><span class="c1"># if the `docker-compose.yml` file is in current directory:</span>
|
|
docker<span class="w"> </span>compose<span class="w"> </span>logs<span class="w"> </span>--follow
|
|
<span class="c1"># if the `docker-compose.yml` file is elsewhere:</span>
|
|
docker<span class="w"> </span>compose<span class="w"> </span>-f<span class="w"> </span>/path/to/docker-compose.yml<span class="w"> </span>logs<span class="w"> </span>--follow
|
|
|
|
<span class="c1"># you can also specify container name:</span>
|
|
docker<span class="w"> </span>compose<span class="w"> </span>logs<span class="w"> </span>seafile<span class="w"> </span>--follow
|
|
<span class="c1"># or, if the `docker-compose.yml` file is elsewhere:</span>
|
|
docker<span class="w"> </span>compose<span class="w"> </span>-f<span class="w"> </span>/path/to/docker-compose.yml<span class="w"> </span>logs<span class="w"> </span>seafile<span class="w"> </span>--follow
|
|
</code></pre></div>
|
|
|
|
<p>The Seafile logs are under <code>/shared/logs/seafile</code> in the docker, or <code>/opt/seafile-data/logs/seafile</code> in the server that run the docker.</p>
|
|
<p>The system logs are under <code>/shared/logs/var-log</code>, or <code>/opt/seafile-data/logs/var-log</code> in the server that run the docker.</p>
|
|
<p>To monitor all Seafile logs simultaneously (from outside of the container), run</p>
|
|
<div class="codehilite"><pre><span></span><code>sudo<span class="w"> </span>tail<span class="w"> </span>-f<span class="w"> </span><span class="k">$(</span>find<span class="w"> </span>/opt/seafile-data/<span class="w"> </span>-type<span class="w"> </span>f<span class="w"> </span>-name<span class="w"> </span>*.log<span class="w"> </span><span class="m">2</span>>/dev/null<span class="k">)</span>
|
|
</code></pre></div>
|
|
|
|
<h2 id="more-configuration-options">More configuration options<a class="headerlink" href="#more-configuration-options" title="Permanent link">¶</a></h2>
|
|
<h3 id="custom-admin-username-and-password">Custom admin username and password<a class="headerlink" href="#custom-admin-username-and-password" title="Permanent link">¶</a></h3>
|
|
<p>The default admin account is <code>me@example.com</code> and the password is <code>asecret</code>. You can use a different password by setting the container's environment variables in the <code>docker-compose.yml</code>:
|
|
e.g.</p>
|
|
<div class="codehilite"><pre><span></span><code><span class="nl">seafile</span><span class="p">:</span>
|
|
<span class="w"> </span><span class="p">...</span>
|
|
|
|
<span class="w"> </span><span class="nl">environment</span><span class="p">:</span>
|
|
<span class="w"> </span><span class="p">...</span>
|
|
<span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="n">SEAFILE_ADMIN_EMAIL</span><span class="o">=</span><span class="n">me</span><span class="nv">@example</span><span class="p">.</span><span class="n">com</span>
|
|
<span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="n">SEAFILE_ADMIN_PASSWORD</span><span class="o">=</span><span class="n">a_very_secret_password</span>
|
|
<span class="w"> </span><span class="p">...</span>
|
|
</code></pre></div>
|
|
|
|
<h3 id="lets-encrypt-ssl-certificate">Let's Encrypt SSL certificate<a class="headerlink" href="#lets-encrypt-ssl-certificate" title="Permanent link">¶</a></h3>
|
|
<p>If you set <code>SEAFILE_SERVER_LETSENCRYPT</code> to <code>true</code>, the container would request a letsencrypt-signed SSL certificate for you automatically.</p>
|
|
<p>e.g.</p>
|
|
<div class="codehilite"><pre><span></span><code>seafile:
|
|
...
|
|
ports:
|
|
<span class="k">-</span> "80:80"
|
|
<span class="k">-</span> "443:443"
|
|
...
|
|
environment:
|
|
...
|
|
<span class="k">-</span> SEAFILE_SERVER_LETSENCRYPT=true
|
|
<span class="k">-</span> SEAFILE_SERVER_HOSTNAME=seafile.example.com
|
|
...
|
|
</code></pre></div>
|
|
|
|
<p>Since version 10.0.x, if you want to use a reverse proxy and apply for a certificate outside docker, you can use <code>FORCE_HTTPS_IN_CONF</code> to force write <code>https://<your_host></code> in the configuration file.</p>
|
|
<p>e.g.</p>
|
|
<div class="codehilite"><pre><span></span><code>seafile:
|
|
...
|
|
environment:
|
|
...
|
|
<span class="k">-</span> SEAFILE_SERVER_LETSENCRYPT=false
|
|
<span class="k">-</span> SEAFILE_SERVER_HOSTNAME=seafile.example.com
|
|
<span class="k">-</span> FORCE_HTTPS_IN_CONF=true
|
|
...
|
|
</code></pre></div>
|
|
|
|
<p>If you want to use your own SSL certificate, you can mount the certificate into the docker container by setting the container's volumes variables in the <code>docker-compose.yml</code>.</p>
|
|
<p>⚠️ Assuming your site name is <code>seafile.example.com</code>, then your certificate must have the name <code>seafile.example.com.crt</code>, and the private key must have the name <code>seafile.example.com.key</code> in container.</p>
|
|
<p>e.g.</p>
|
|
<div class="codehilite"><pre><span></span><code>seafile:
|
|
...
|
|
ports:
|
|
<span class="k">-</span> "80:80"
|
|
<span class="k">-</span> "443:443"
|
|
...
|
|
volumes:
|
|
...
|
|
<span class="k">-</span> /etc/letsencrypt/live/seafile.example.com/fullchain.pem:/shared/ssl/seafile.example.com.crt
|
|
<span class="k">-</span> /etc/letsencrypt/live/seafile.example.com/privkey.pem:/shared/ssl/seafile.example.com.key
|
|
environment:
|
|
...
|
|
<span class="k">-</span> SEAFILE_SERVER_LETSENCRYPT=false
|
|
<span class="k">-</span> SEAFILE_SERVER_HOSTNAME=seafile.example.com
|
|
<span class="k">-</span> FORCE_HTTPS_IN_CONF=true
|
|
...
|
|
...
|
|
</code></pre></div>
|
|
|
|
<h3 id="use-an-existing-mysql-server">Use an existing mysql-server<a class="headerlink" href="#use-an-existing-mysql-server" title="Permanent link">¶</a></h3>
|
|
<p>If you want to use an existing mysql-server, you can modify the <code>docker-compose.yml</code> as follows</p>
|
|
<div class="codehilite"><pre><span></span><code>services:
|
|
#db:
|
|
#image: mariadb:10.11
|
|
#...
|
|
|
|
seafile:
|
|
...
|
|
environment:
|
|
...
|
|
<span class="k">-</span> DB_HOST=192.168.0.2
|
|
<span class="k">-</span> DB_PORT=3306
|
|
<span class="k">-</span> DB_ROOT_PASSWD=mysql_root_password
|
|
...
|
|
depends_on:
|
|
#- db
|
|
<span class="k">-</span> memcached
|
|
</code></pre></div>
|
|
|
|
<ul>
|
|
<li>The entire db chapter needs to be removed</li>
|
|
<li>The host of MySQL (<code>DB_HOST</code>)</li>
|
|
<li>The port of MySQL (<code>DB_PORT</code>)</li>
|
|
<li>The password of MySQL root (<code>DB_ROOT_PASSWD</code>)</li>
|
|
<li>db in depends_on chapter needs to be removed</li>
|
|
<li><code>DB_ROOT_PASSWD</code> is needed during installation. Later, after Seafile is installed, the user <code>seafile</code> will be used to connect to the mysql-server (in <code>conf/seafile.conf</code>). You can remove the <code>DB_ROOT_PASSWD</code>.</li>
|
|
</ul>
|
|
<h3 id="modify-seafile-server-configurations">Modify Seafile server configurations<a class="headerlink" href="#modify-seafile-server-configurations" title="Permanent link">¶</a></h3>
|
|
<p>The config files are under <code>/opt/seafile-data/seafile/conf</code>. You can modify the configurations according to <a href="https://manual.seafile.com/">Seafile manual</a></p>
|
|
<p>After modification, you need to restart the container:</p>
|
|
<div class="codehilite"><pre><span></span><code>docker<span class="w"> </span>compose<span class="w"> </span>restart
|
|
</code></pre></div>
|
|
|
|
<h3 id="add-a-new-admin">Add a new admin<a class="headerlink" href="#add-a-new-admin" title="Permanent link">¶</a></h3>
|
|
<p>Ensure the container is running, then enter this command:</p>
|
|
<div class="codehilite"><pre><span></span><code>docker<span class="w"> </span><span class="nb">exec</span><span class="w"> </span>-it<span class="w"> </span>seafile<span class="w"> </span>/opt/seafile/seafile-server-latest/reset-admin.sh
|
|
</code></pre></div>
|
|
|
|
<p>Enter the username and password according to the prompts. You now have a new admin account.</p>
|
|
<h3 id="run-seafile-as-non-root-user-inside-docker">Run Seafile as non root user inside docker<a class="headerlink" href="#run-seafile-as-non-root-user-inside-docker" title="Permanent link">¶</a></h3>
|
|
<p>Since version 10.0, you can use run seafile as non root user in docker. (<strong>NOTE:</strong> Programs such as <code>my_init</code>, Nginx are still run as <code>root</code> inside docker.)</p>
|
|
<p>First add the <code>NON_ROOT=true</code> to the <code>docker-compose.yml</code>.</p>
|
|
<div class="codehilite"><pre><span></span><code>seafile:
|
|
...
|
|
environment:
|
|
...
|
|
<span class="k">-</span> NON_ROOT=true
|
|
...
|
|
</code></pre></div>
|
|
|
|
<p>Then modify <code>/opt/seafile-data/seafile/</code> permissions.</p>
|
|
<div class="codehilite"><pre><span></span><code>chmod<span class="w"> </span>-R<span class="w"> </span>a+rwx<span class="w"> </span>/opt/seafile-data/seafile/
|
|
</code></pre></div>
|
|
|
|
<p>Note: Before version 11.0.9, you have to create a seafile user on the host, and modify the owner to seafile in <code>/opt/seafile-data/seafile/</code>. (<strong>NOTE:</strong> Do not change the <code>uid</code> and <code>gid</code>.)</p>
|
|
<div class="codehilite"><pre><span></span><code>groupadd<span class="w"> </span>--gid<span class="w"> </span><span class="m">8000</span><span class="w"> </span>seafile
|
|
|
|
useradd<span class="w"> </span>--home-dir<span class="w"> </span>/home/seafile<span class="w"> </span>--create-home<span class="w"> </span>--uid<span class="w"> </span><span class="m">8000</span><span class="w"> </span>--gid<span class="w"> </span><span class="m">8000</span><span class="w"> </span>--shell<span class="w"> </span>/bin/sh<span class="w"> </span>--skel<span class="w"> </span>/dev/null<span class="w"> </span>seafile
|
|
|
|
chown<span class="w"> </span>-R<span class="w"> </span>seafile:seafile<span class="w"> </span>/opt/seafile-data/seafile/
|
|
</code></pre></div>
|
|
|
|
<p>Then destroy the containers and run them again:</p>
|
|
<div class="codehilite"><pre><span></span><code>docker<span class="w"> </span>compose<span class="w"> </span>down
|
|
docker<span class="w"> </span>compose<span class="w"> </span>up<span class="w"> </span>-d
|
|
</code></pre></div>
|
|
|
|
<p>Now you can run Seafile as <code>seafile</code> user. (<strong>NOTE:</strong> Later, when doing maintenance, other scripts in docker are also required to be run as <code>seafile</code> user, e.g. <code>su seafile -c ./seaf-gc.sh</code>)</p>
|
|
<h2 id="backup-and-recovery">Backup and recovery<a class="headerlink" href="#backup-and-recovery" title="Permanent link">¶</a></h2>
|
|
<p>Follow the instructions in <a href="../../maintain/backup_recovery/">Backup and restore for Seafile Docker</a></p>
|
|
<h2 id="garbage-collection">Garbage collection<a class="headerlink" href="#garbage-collection" title="Permanent link">¶</a></h2>
|
|
<p>When files are deleted, the blocks comprising those files are not immediately removed as there may be other files that reference those blocks (due to the magic of deduplication). To remove them, Seafile requires a <a href="../../maintain/seafile_gc/">'garbage collection'</a> process to be run, which detects which blocks no longer used and purges them. (<strong>NOTE:</strong> for technical reasons, the GC process does not guarantee that <em>every single</em> orphan block will be deleted.)</p>
|
|
<p>The required scripts can be found in the <code>/scripts</code> folder of the docker container. To perform garbage collection, simply run <code>docker exec seafile /scripts/gc.sh</code>. For the community edition, this process will stop the seafile server, but it is a relatively quick process and the seafile server will start automatically once the process has finished. The Professional supports an online garbage collection.</p>
|
|
<h2 id="deploy-seafile-docker-with-custom-port">Deploy Seafile docker with custom port<a class="headerlink" href="#deploy-seafile-docker-with-custom-port" title="Permanent link">¶</a></h2>
|
|
<p>Assume your custom port is 8001, when it is a new installation, you only need to modify the <code>docker-compose.yml</code> and start the Seafile docker.</p>
|
|
<div class="codehilite"><pre><span></span><code> seafile:
|
|
...
|
|
ports:
|
|
<span class="k">-</span> "8001:80"
|
|
environment:
|
|
...
|
|
<span class="k">-</span> SEAFILE_SERVER_HOSTNAME=seafile.example.com:8001
|
|
...
|
|
...
|
|
</code></pre></div>
|
|
|
|
<p>If you have installed the Seafile docker, besides modifying the <code>docker-compose.yml</code>, you also need to modify the already generated configuration file <code>conf/seahub_settings.py</code>, then restart Seafile:</p>
|
|
<div class="codehilite"><pre><span></span><code><span class="n">SERVICE_URL</span> <span class="o">=</span> <span class="s2">"http://seafile.example.com:8001"</span>
|
|
<span class="n">FILE_SERVER_ROOT</span> <span class="o">=</span> <span class="s2">"http://seafile.example.com:8001/seafhttp"</span>
|
|
</code></pre></div>
|
|
|
|
<h2 id="faq">FAQ<a class="headerlink" href="#faq" title="Permanent link">¶</a></h2>
|
|
<h3 id="you-can-run-docker-commands-like-docker-exec-to-find-errors">You can run docker commands like <code>docker exec</code> to find errors<a class="headerlink" href="#you-can-run-docker-commands-like-docker-exec-to-find-errors" title="Permanent link">¶</a></h3>
|
|
<div class="codehilite"><pre><span></span><code>docker<span class="w"> </span><span class="nb">exec</span><span class="w"> </span>-it<span class="w"> </span>seafile<span class="w"> </span>/bin/bash
|
|
</code></pre></div>
|
|
|
|
<h3 id="letsencrypt-ssl-certificate-is-about-to-expire">LetsEncrypt SSL certificate is about to expire<a class="headerlink" href="#letsencrypt-ssl-certificate-is-about-to-expire" title="Permanent link">¶</a></h3>
|
|
<p>If the certificate is not renewed automatically, you can execute the following command to manually renew the certificate.</p>
|
|
<div class="codehilite"><pre><span></span><code><span class="c1"># /scripts/ssl.sh /shared/ssl/ <your-seafile-domain></span>
|
|
/scripts/ssl.sh<span class="w"> </span>/shared/ssl/<span class="w"> </span>example.seafile.com
|
|
</code></pre></div>
|
|
|
|
<h3 id="change-the-environment-variable-seafile_server_letsencryptfalse-value-to-true">Change the environment variable <code>SEAFILE_SERVER_LETSENCRYPT=false</code> value to <code>true</code><a class="headerlink" href="#change-the-environment-variable-seafile_server_letsencryptfalse-value-to-true" title="Permanent link">¶</a></h3>
|
|
<ol>
|
|
<li>If you want to change to https after using http, first back up the <code>seafile.nginx.conf</code>:</li>
|
|
</ol>
|
|
<div class="codehilite"><pre><span></span><code>mv<span class="w"> </span>/opt/seafile-data/nginx/conf/seafile.nginx.conf<span class="w"> </span>/opt/seafile-data/nginx/conf/seafile.nginx.conf.bak
|
|
<span class="c1"># or</span>
|
|
mv<span class="w"> </span>/opt/seafile-data/nginx/conf/seafile.nginx.conf<span class="o">{</span>,.bak<span class="o">}</span>
|
|
</code></pre></div>
|
|
|
|
<ol>
|
|
<li>
|
|
<p>Destroy the containers with <code>docker compose down</code>.</p>
|
|
</li>
|
|
<li>
|
|
<p>Edit <code>docker-compose.yml</code>: change <code>SEAFILE_SERVER_LETSENCRYPT=false</code> value to <code>true</code>.</p>
|
|
</li>
|
|
<li>
|
|
<p>Run <code>docker compose up -d</code> again. The new Seafile container will automatically request for an SSL certificate to be generated and installed.</p>
|
|
</li>
|
|
</ol>
|
|
<p><strong>Notes:</strong></p>
|
|
<ul>
|
|
<li>
|
|
<p>You need to manually change http to https in other configuration files.</p>
|
|
</li>
|
|
<li>
|
|
<p><code>SERVICE_URL</code> and <code>FILE_SERVER_ROOT</code> environment variables in the system admin page also need to be modified.</p>
|
|
</li>
|
|
<li>
|
|
<p>If you have modified the old <code>seafile.nginx.conf</code>, now you can modify the new <code>seafile.nginx.conf</code> as you want. Then execute the following command:</p>
|
|
</li>
|
|
</ul>
|
|
<div class="codehilite"><pre><span></span><code><span class="c1"># test the Nginx configuration and, if OK, reload nginx for configuration to take effect:</span>
|
|
docker<span class="w"> </span><span class="nb">exec</span><span class="w"> </span>seafile<span class="w"> </span>nginx<span class="w"> </span>-t<span class="w"> </span><span class="o">&&</span><span class="w"> </span>docker<span class="w"> </span><span class="nb">exec</span><span class="w"> </span>seafile<span class="w"> </span>nginx<span class="w"> </span>-s<span class="w"> </span>reload
|
|
</code></pre></div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</article>
|
|
</div>
|
|
|
|
|
|
<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
|
|
</div>
|
|
|
|
</main>
|
|
|
|
<footer class="md-footer">
|
|
|
|
<div class="md-footer-meta md-typeset">
|
|
<div class="md-footer-meta__inner md-grid">
|
|
<div class="md-copyright">
|
|
|
|
<div class="md-copyright__highlight">
|
|
Copyright © 2023 Seafile Ltd.
|
|
</div>
|
|
|
|
|
|
Made with
|
|
<a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
|
|
Material for MkDocs
|
|
</a>
|
|
|
|
</div>
|
|
|
|
<div class="md-social">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<a href="https://github.com/haiwen/seafile-admin-docs/" target="_blank" rel="noopener" title="github.com" class="md-social__link">
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9M244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8M97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9s4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2"/></svg>
|
|
</a>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</footer>
|
|
|
|
</div>
|
|
<div class="md-dialog" data-md-component="dialog">
|
|
<div class="md-dialog__inner md-typeset"></div>
|
|
</div>
|
|
|
|
|
|
<script id="__config" type="application/json">{"base": "../..", "features": [], "search": "../../assets/javascripts/workers/search.6ce7567c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}}</script>
|
|
|
|
|
|
<script src="../../assets/javascripts/bundle.525ec568.min.js"></script>
|
|
|
|
|
|
</body>
|
|
</html> |