|
2eca4eb…
|
ragelink
|
1 |
|
|
2eca4eb…
|
ragelink
|
2 |
<!doctype html> |
|
2eca4eb…
|
ragelink
|
3 |
<html lang="en" class="no-js"> |
|
2eca4eb…
|
ragelink
|
4 |
<head> |
|
2eca4eb…
|
ragelink
|
5 |
|
|
2eca4eb…
|
ragelink
|
6 |
<meta charset="utf-8"> |
|
2eca4eb…
|
ragelink
|
7 |
<meta name="viewport" content="width=device-width,initial-scale=1"> |
|
2eca4eb…
|
ragelink
|
8 |
|
|
2eca4eb…
|
ragelink
|
9 |
<meta name="description" content="Self-hosted Fossil forge -- omnibus installer for production Fossil SCM hosting"> |
|
2eca4eb…
|
ragelink
|
10 |
|
|
2eca4eb…
|
ragelink
|
11 |
|
|
2eca4eb…
|
ragelink
|
12 |
<meta name="author" content="CONFLICT LLC"> |
|
2eca4eb…
|
ragelink
|
13 |
|
|
2eca4eb…
|
ragelink
|
14 |
|
|
2eca4eb…
|
ragelink
|
15 |
<link rel="canonical" href="https://fossilrepo.dev/getting-started/configuration/"> |
|
2eca4eb…
|
ragelink
|
16 |
|
|
2eca4eb…
|
ragelink
|
17 |
|
|
2eca4eb…
|
ragelink
|
18 |
<link rel="prev" href="../installation/"> |
|
2eca4eb…
|
ragelink
|
19 |
|
|
2eca4eb…
|
ragelink
|
20 |
|
|
2eca4eb…
|
ragelink
|
21 |
<link rel="next" href="../first-repo/"> |
|
2eca4eb…
|
ragelink
|
22 |
|
|
2eca4eb…
|
ragelink
|
23 |
|
|
2eca4eb…
|
ragelink
|
24 |
|
|
2eca4eb…
|
ragelink
|
25 |
|
|
2eca4eb…
|
ragelink
|
26 |
|
|
2eca4eb…
|
ragelink
|
27 |
<link rel="icon" href="../../assets/images/favicon.png"> |
|
2eca4eb…
|
ragelink
|
28 |
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.7.6"> |
|
2eca4eb…
|
ragelink
|
29 |
|
|
2eca4eb…
|
ragelink
|
30 |
|
|
2eca4eb…
|
ragelink
|
31 |
|
|
2eca4eb…
|
ragelink
|
32 |
<title>Configuration - Fossilrepo</title> |
|
2eca4eb…
|
ragelink
|
33 |
|
|
2eca4eb…
|
ragelink
|
34 |
|
|
2eca4eb…
|
ragelink
|
35 |
|
|
2eca4eb…
|
ragelink
|
36 |
<link rel="stylesheet" href="../../assets/stylesheets/main.484c7ddc.min.css"> |
|
2eca4eb…
|
ragelink
|
37 |
|
|
2eca4eb…
|
ragelink
|
38 |
|
|
2eca4eb…
|
ragelink
|
39 |
<link rel="stylesheet" href="../../assets/stylesheets/palette.ab4e12ef.min.css"> |
|
2eca4eb…
|
ragelink
|
40 |
|
|
2eca4eb…
|
ragelink
|
41 |
|
|
2eca4eb…
|
ragelink
|
42 |
|
|
2eca4eb…
|
ragelink
|
43 |
|
|
2eca4eb…
|
ragelink
|
44 |
|
|
2eca4eb…
|
ragelink
|
45 |
|
|
2eca4eb…
|
ragelink
|
46 |
|
|
2eca4eb…
|
ragelink
|
47 |
|
|
2eca4eb…
|
ragelink
|
48 |
|
|
2eca4eb…
|
ragelink
|
49 |
|
|
2eca4eb…
|
ragelink
|
50 |
|
|
2eca4eb…
|
ragelink
|
51 |
|
|
2eca4eb…
|
ragelink
|
52 |
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> |
|
2eca4eb…
|
ragelink
|
53 |
<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"> |
|
2eca4eb…
|
ragelink
|
54 |
<style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style> |
|
2eca4eb…
|
ragelink
|
55 |
|
|
2eca4eb…
|
ragelink
|
56 |
|
|
2eca4eb…
|
ragelink
|
57 |
|
|
2eca4eb…
|
ragelink
|
58 |
<link rel="stylesheet" href="../../assets/css/custom.css"> |
|
2eca4eb…
|
ragelink
|
59 |
|
|
2eca4eb…
|
ragelink
|
60 |
<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> |
|
2eca4eb…
|
ragelink
|
61 |
|
|
2eca4eb…
|
ragelink
|
62 |
|
|
2eca4eb…
|
ragelink
|
63 |
|
|
2eca4eb…
|
ragelink
|
64 |
|
|
2eca4eb…
|
ragelink
|
65 |
|
|
2eca4eb…
|
ragelink
|
66 |
</head> |
|
2eca4eb…
|
ragelink
|
67 |
|
|
2eca4eb…
|
ragelink
|
68 |
|
|
2eca4eb…
|
ragelink
|
69 |
|
|
2eca4eb…
|
ragelink
|
70 |
|
|
2eca4eb…
|
ragelink
|
71 |
|
|
2eca4eb…
|
ragelink
|
72 |
|
|
2eca4eb…
|
ragelink
|
73 |
|
|
2eca4eb…
|
ragelink
|
74 |
|
|
2eca4eb…
|
ragelink
|
75 |
|
|
2eca4eb…
|
ragelink
|
76 |
<body dir="ltr" data-md-color-scheme="slate" data-md-color-primary="custom" data-md-color-accent="custom"> |
|
2eca4eb…
|
ragelink
|
77 |
|
|
2eca4eb…
|
ragelink
|
78 |
|
|
2eca4eb…
|
ragelink
|
79 |
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off"> |
|
2eca4eb…
|
ragelink
|
80 |
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off"> |
|
2eca4eb…
|
ragelink
|
81 |
<label class="md-overlay" for="__drawer"></label> |
|
2eca4eb…
|
ragelink
|
82 |
<div data-md-component="skip"> |
|
2eca4eb…
|
ragelink
|
83 |
|
|
2eca4eb…
|
ragelink
|
84 |
|
|
2eca4eb…
|
ragelink
|
85 |
<a href="#configuration" class="md-skip"> |
|
2eca4eb…
|
ragelink
|
86 |
Skip to content |
|
2eca4eb…
|
ragelink
|
87 |
</a> |
|
2eca4eb…
|
ragelink
|
88 |
|
|
2eca4eb…
|
ragelink
|
89 |
</div> |
|
2eca4eb…
|
ragelink
|
90 |
<div data-md-component="announce"> |
|
2eca4eb…
|
ragelink
|
91 |
|
|
2eca4eb…
|
ragelink
|
92 |
</div> |
|
2eca4eb…
|
ragelink
|
93 |
|
|
2eca4eb…
|
ragelink
|
94 |
|
|
2eca4eb…
|
ragelink
|
95 |
|
|
2eca4eb…
|
ragelink
|
96 |
|
|
2eca4eb…
|
ragelink
|
97 |
<header class="md-header" data-md-component="header"> |
|
2eca4eb…
|
ragelink
|
98 |
<nav class="md-header__inner md-grid" aria-label="Header"> |
|
2eca4eb…
|
ragelink
|
99 |
<a href="../.." title="Fossilrepo" class="md-header__button md-logo" aria-label="Fossilrepo" data-md-component="logo"> |
|
2eca4eb…
|
ragelink
|
100 |
<div style="display: flex; align-items: center; gap: 0.6rem;"> |
|
2eca4eb…
|
ragelink
|
101 |
<img src="../../assets/images/conflict-logo.svg" alt="CONFLICT" style="height: 1.4rem; width: auto;"> |
|
2eca4eb…
|
ragelink
|
102 |
<img src="../../assets/images/fossilrepo-logo.svg" alt="Fossilrepo" style="height: 1.2rem; width: auto;"> |
|
2eca4eb…
|
ragelink
|
103 |
</div> |
|
2eca4eb…
|
ragelink
|
104 |
</a> |
|
2eca4eb…
|
ragelink
|
105 |
<label class="md-header__button md-icon" for="__drawer"> |
|
2eca4eb…
|
ragelink
|
106 |
|
|
2eca4eb…
|
ragelink
|
107 |
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg> |
|
2eca4eb…
|
ragelink
|
108 |
</label> |
|
2eca4eb…
|
ragelink
|
109 |
<div class="md-header__title" data-md-component="header-title"> |
|
2eca4eb…
|
ragelink
|
110 |
<div class="md-header__ellipsis"> |
|
2eca4eb…
|
ragelink
|
111 |
<div class="md-header__topic"> |
|
2eca4eb…
|
ragelink
|
112 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
113 |
Fossilrepo |
|
2eca4eb…
|
ragelink
|
114 |
</span> |
|
2eca4eb…
|
ragelink
|
115 |
</div> |
|
2eca4eb…
|
ragelink
|
116 |
<div class="md-header__topic" data-md-component="header-topic"> |
|
2eca4eb…
|
ragelink
|
117 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
118 |
|
|
2eca4eb…
|
ragelink
|
119 |
Configuration |
|
2eca4eb…
|
ragelink
|
120 |
|
|
2eca4eb…
|
ragelink
|
121 |
</span> |
|
2eca4eb…
|
ragelink
|
122 |
</div> |
|
2eca4eb…
|
ragelink
|
123 |
</div> |
|
2eca4eb…
|
ragelink
|
124 |
</div> |
|
2eca4eb…
|
ragelink
|
125 |
|
|
2eca4eb…
|
ragelink
|
126 |
|
|
2eca4eb…
|
ragelink
|
127 |
<form class="md-header__option" data-md-component="palette"> |
|
2eca4eb…
|
ragelink
|
128 |
|
|
2eca4eb…
|
ragelink
|
129 |
|
|
2eca4eb…
|
ragelink
|
130 |
|
|
2eca4eb…
|
ragelink
|
131 |
|
|
2eca4eb…
|
ragelink
|
132 |
<input class="md-option" data-md-color-media="(prefers-color-scheme: dark)" data-md-color-scheme="slate" data-md-color-primary="custom" data-md-color-accent="custom" aria-label="Switch to light mode" type="radio" name="__palette" id="__palette_0"> |
|
2eca4eb…
|
ragelink
|
133 |
|
|
2eca4eb…
|
ragelink
|
134 |
<label class="md-header__button md-icon" title="Switch to light mode" for="__palette_1" hidden> |
|
2eca4eb…
|
ragelink
|
135 |
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 18c-.89 0-1.74-.2-2.5-.55C11.56 16.5 13 14.42 13 12s-1.44-4.5-3.5-5.45C10.26 6.2 11.11 6 12 6a6 6 0 0 1 6 6 6 6 0 0 1-6 6m8-9.31V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12z"/></svg> |
|
2eca4eb…
|
ragelink
|
136 |
</label> |
|
2eca4eb…
|
ragelink
|
137 |
|
|
2eca4eb…
|
ragelink
|
138 |
|
|
2eca4eb…
|
ragelink
|
139 |
|
|
2eca4eb…
|
ragelink
|
140 |
|
|
2eca4eb…
|
ragelink
|
141 |
|
|
2eca4eb…
|
ragelink
|
142 |
<input class="md-option" data-md-color-media="(prefers-color-scheme: light)" data-md-color-scheme="default" data-md-color-primary="custom" data-md-color-accent="custom" aria-label="Switch to dark mode" type="radio" name="__palette" id="__palette_1"> |
|
2eca4eb…
|
ragelink
|
143 |
|
|
2eca4eb…
|
ragelink
|
144 |
<label class="md-header__button md-icon" title="Switch to dark mode" for="__palette_0" hidden> |
|
2eca4eb…
|
ragelink
|
145 |
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a4 4 0 0 0-4 4 4 4 0 0 0 4 4 4 4 0 0 0 4-4 4 4 0 0 0-4-4m0 10a6 6 0 0 1-6-6 6 6 0 0 1 6-6 6 6 0 0 1 6 6 6 6 0 0 1-6 6m8-9.31V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12z"/></svg> |
|
2eca4eb…
|
ragelink
|
146 |
</label> |
|
2eca4eb…
|
ragelink
|
147 |
|
|
2eca4eb…
|
ragelink
|
148 |
|
|
2eca4eb…
|
ragelink
|
149 |
</form> |
|
2eca4eb…
|
ragelink
|
150 |
|
|
2eca4eb…
|
ragelink
|
151 |
|
|
2eca4eb…
|
ragelink
|
152 |
|
|
2eca4eb…
|
ragelink
|
153 |
<script>var palette=__md_get("__palette");if(palette&&palette.color){if("(prefers-color-scheme)"===palette.color.media){var media=matchMedia("(prefers-color-scheme: light)"),input=document.querySelector(media.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']");palette.color.media=input.getAttribute("data-md-color-media"),palette.color.scheme=input.getAttribute("data-md-color-scheme"),palette.color.primary=input.getAttribute("data-md-color-primary"),palette.color.accent=input.getAttribute("data-md-color-accent")}for(var[key,value]of Object.entries(palette.color))document.body.setAttribute("data-md-color-"+key,value)}</script> |
|
2eca4eb…
|
ragelink
|
154 |
|
|
2eca4eb…
|
ragelink
|
155 |
|
|
2eca4eb…
|
ragelink
|
156 |
|
|
2eca4eb…
|
ragelink
|
157 |
|
|
2eca4eb…
|
ragelink
|
158 |
|
|
2eca4eb…
|
ragelink
|
159 |
<label class="md-header__button md-icon" for="__search"> |
|
2eca4eb…
|
ragelink
|
160 |
|
|
2eca4eb…
|
ragelink
|
161 |
<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> |
|
2eca4eb…
|
ragelink
|
162 |
</label> |
|
2eca4eb…
|
ragelink
|
163 |
<div class="md-search" data-md-component="search" role="dialog"> |
|
2eca4eb…
|
ragelink
|
164 |
<label class="md-search__overlay" for="__search"></label> |
|
2eca4eb…
|
ragelink
|
165 |
<div class="md-search__inner" role="search"> |
|
2eca4eb…
|
ragelink
|
166 |
<form class="md-search__form" name="search"> |
|
2eca4eb…
|
ragelink
|
167 |
<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> |
|
2eca4eb…
|
ragelink
|
168 |
<label class="md-search__icon md-icon" for="__search"> |
|
2eca4eb…
|
ragelink
|
169 |
|
|
2eca4eb…
|
ragelink
|
170 |
<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> |
|
2eca4eb…
|
ragelink
|
171 |
|
|
2eca4eb…
|
ragelink
|
172 |
<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> |
|
2eca4eb…
|
ragelink
|
173 |
</label> |
|
2eca4eb…
|
ragelink
|
174 |
<nav class="md-search__options" aria-label="Search"> |
|
2eca4eb…
|
ragelink
|
175 |
|
|
2eca4eb…
|
ragelink
|
176 |
<button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1"> |
|
2eca4eb…
|
ragelink
|
177 |
|
|
2eca4eb…
|
ragelink
|
178 |
<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> |
|
2eca4eb…
|
ragelink
|
179 |
</button> |
|
2eca4eb…
|
ragelink
|
180 |
</nav> |
|
2eca4eb…
|
ragelink
|
181 |
|
|
2eca4eb…
|
ragelink
|
182 |
<div class="md-search__suggest" data-md-component="search-suggest"></div> |
|
2eca4eb…
|
ragelink
|
183 |
|
|
2eca4eb…
|
ragelink
|
184 |
</form> |
|
2eca4eb…
|
ragelink
|
185 |
<div class="md-search__output"> |
|
2eca4eb…
|
ragelink
|
186 |
<div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix> |
|
2eca4eb…
|
ragelink
|
187 |
<div class="md-search-result" data-md-component="search-result"> |
|
2eca4eb…
|
ragelink
|
188 |
<div class="md-search-result__meta"> |
|
2eca4eb…
|
ragelink
|
189 |
Initializing search |
|
2eca4eb…
|
ragelink
|
190 |
</div> |
|
2eca4eb…
|
ragelink
|
191 |
<ol class="md-search-result__list" role="presentation"></ol> |
|
2eca4eb…
|
ragelink
|
192 |
</div> |
|
2eca4eb…
|
ragelink
|
193 |
</div> |
|
2eca4eb…
|
ragelink
|
194 |
</div> |
|
2eca4eb…
|
ragelink
|
195 |
</div> |
|
2eca4eb…
|
ragelink
|
196 |
</div> |
|
2eca4eb…
|
ragelink
|
197 |
|
|
2eca4eb…
|
ragelink
|
198 |
|
|
2eca4eb…
|
ragelink
|
199 |
|
|
2eca4eb…
|
ragelink
|
200 |
<div class="md-header__source"> |
|
2eca4eb…
|
ragelink
|
201 |
<a href="https://github.com/ConflictHQ/fossilrepo" title="Go to repository" class="md-source" data-md-component="source"> |
|
2eca4eb…
|
ragelink
|
202 |
<div class="md-source__icon md-icon"> |
|
2eca4eb…
|
ragelink
|
203 |
|
|
2eca4eb…
|
ragelink
|
204 |
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 7.1.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 2025 Fonticons, Inc.--><path d="M173.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.9M252.8 8C114.1 8 8 113.3 8 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.1C436.2 457.8 504 362.9 504 252 504 113.3 391.5 8 252.8 8M105.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> |
|
2eca4eb…
|
ragelink
|
205 |
</div> |
|
2eca4eb…
|
ragelink
|
206 |
<div class="md-source__repository"> |
|
2eca4eb…
|
ragelink
|
207 |
ConflictHQ/fossilrepo |
|
2eca4eb…
|
ragelink
|
208 |
</div> |
|
2eca4eb…
|
ragelink
|
209 |
</a> |
|
2eca4eb…
|
ragelink
|
210 |
</div> |
|
2eca4eb…
|
ragelink
|
211 |
|
|
2eca4eb…
|
ragelink
|
212 |
</nav> |
|
2eca4eb…
|
ragelink
|
213 |
|
|
2eca4eb…
|
ragelink
|
214 |
</header> |
|
2eca4eb…
|
ragelink
|
215 |
|
|
2eca4eb…
|
ragelink
|
216 |
<div class="md-container" data-md-component="container"> |
|
2eca4eb…
|
ragelink
|
217 |
|
|
2eca4eb…
|
ragelink
|
218 |
|
|
2eca4eb…
|
ragelink
|
219 |
|
|
2eca4eb…
|
ragelink
|
220 |
|
|
2eca4eb…
|
ragelink
|
221 |
|
|
2eca4eb…
|
ragelink
|
222 |
<nav class="md-tabs" aria-label="Tabs" data-md-component="tabs"> |
|
2eca4eb…
|
ragelink
|
223 |
<div class="md-grid"> |
|
2eca4eb…
|
ragelink
|
224 |
<ul class="md-tabs__list"> |
|
2eca4eb…
|
ragelink
|
225 |
|
|
2eca4eb…
|
ragelink
|
226 |
|
|
2eca4eb…
|
ragelink
|
227 |
|
|
2eca4eb…
|
ragelink
|
228 |
|
|
2eca4eb…
|
ragelink
|
229 |
|
|
2eca4eb…
|
ragelink
|
230 |
|
|
2eca4eb…
|
ragelink
|
231 |
<li class="md-tabs__item"> |
|
2eca4eb…
|
ragelink
|
232 |
<a href="../.." class="md-tabs__link"> |
|
2eca4eb…
|
ragelink
|
233 |
|
|
2eca4eb…
|
ragelink
|
234 |
|
|
2eca4eb…
|
ragelink
|
235 |
|
|
2eca4eb…
|
ragelink
|
236 |
|
|
2eca4eb…
|
ragelink
|
237 |
|
|
2eca4eb…
|
ragelink
|
238 |
Home |
|
2eca4eb…
|
ragelink
|
239 |
|
|
2eca4eb…
|
ragelink
|
240 |
</a> |
|
2eca4eb…
|
ragelink
|
241 |
</li> |
|
2eca4eb…
|
ragelink
|
242 |
|
|
2eca4eb…
|
ragelink
|
243 |
|
|
2eca4eb…
|
ragelink
|
244 |
|
|
2eca4eb…
|
ragelink
|
245 |
|
|
2eca4eb…
|
ragelink
|
246 |
|
|
2eca4eb…
|
ragelink
|
247 |
|
|
2eca4eb…
|
ragelink
|
248 |
|
|
2eca4eb…
|
ragelink
|
249 |
|
|
2eca4eb…
|
ragelink
|
250 |
|
|
2eca4eb…
|
ragelink
|
251 |
|
|
2eca4eb…
|
ragelink
|
252 |
|
|
2eca4eb…
|
ragelink
|
253 |
|
|
2eca4eb…
|
ragelink
|
254 |
<li class="md-tabs__item md-tabs__item--active"> |
|
2eca4eb…
|
ragelink
|
255 |
<a href="../prerequisites/" class="md-tabs__link"> |
|
2eca4eb…
|
ragelink
|
256 |
|
|
2eca4eb…
|
ragelink
|
257 |
|
|
2eca4eb…
|
ragelink
|
258 |
|
|
2eca4eb…
|
ragelink
|
259 |
Getting Started |
|
2eca4eb…
|
ragelink
|
260 |
|
|
2eca4eb…
|
ragelink
|
261 |
</a> |
|
2eca4eb…
|
ragelink
|
262 |
</li> |
|
2eca4eb…
|
ragelink
|
263 |
|
|
2eca4eb…
|
ragelink
|
264 |
|
|
2eca4eb…
|
ragelink
|
265 |
|
|
2eca4eb…
|
ragelink
|
266 |
|
|
2eca4eb…
|
ragelink
|
267 |
|
|
2eca4eb…
|
ragelink
|
268 |
|
|
2eca4eb…
|
ragelink
|
269 |
|
|
2eca4eb…
|
ragelink
|
270 |
|
|
2eca4eb…
|
ragelink
|
271 |
|
|
2eca4eb…
|
ragelink
|
272 |
|
|
2eca4eb…
|
ragelink
|
273 |
|
|
2eca4eb…
|
ragelink
|
274 |
<li class="md-tabs__item"> |
|
2eca4eb…
|
ragelink
|
275 |
<a href="../../architecture/overview/" class="md-tabs__link"> |
|
2eca4eb…
|
ragelink
|
276 |
|
|
2eca4eb…
|
ragelink
|
277 |
|
|
2eca4eb…
|
ragelink
|
278 |
|
|
2eca4eb…
|
ragelink
|
279 |
Architecture |
|
2eca4eb…
|
ragelink
|
280 |
|
|
2eca4eb…
|
ragelink
|
281 |
</a> |
|
2eca4eb…
|
ragelink
|
282 |
</li> |
|
2eca4eb…
|
ragelink
|
283 |
|
|
2eca4eb…
|
ragelink
|
284 |
|
|
2eca4eb…
|
ragelink
|
285 |
|
|
2eca4eb…
|
ragelink
|
286 |
|
|
2eca4eb…
|
ragelink
|
287 |
</ul> |
|
2eca4eb…
|
ragelink
|
288 |
</div> |
|
2eca4eb…
|
ragelink
|
289 |
</nav> |
|
2eca4eb…
|
ragelink
|
290 |
|
|
2eca4eb…
|
ragelink
|
291 |
|
|
2eca4eb…
|
ragelink
|
292 |
|
|
2eca4eb…
|
ragelink
|
293 |
<main class="md-main" data-md-component="main"> |
|
2eca4eb…
|
ragelink
|
294 |
<div class="md-main__inner md-grid"> |
|
2eca4eb…
|
ragelink
|
295 |
|
|
2eca4eb…
|
ragelink
|
296 |
|
|
2eca4eb…
|
ragelink
|
297 |
|
|
2eca4eb…
|
ragelink
|
298 |
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" > |
|
2eca4eb…
|
ragelink
|
299 |
<div class="md-sidebar__scrollwrap"> |
|
2eca4eb…
|
ragelink
|
300 |
<div class="md-sidebar__inner"> |
|
2eca4eb…
|
ragelink
|
301 |
|
|
2eca4eb…
|
ragelink
|
302 |
|
|
2eca4eb…
|
ragelink
|
303 |
|
|
2eca4eb…
|
ragelink
|
304 |
|
|
2eca4eb…
|
ragelink
|
305 |
|
|
2eca4eb…
|
ragelink
|
306 |
|
|
2eca4eb…
|
ragelink
|
307 |
<nav class="md-nav md-nav--primary md-nav--lifted" aria-label="Navigation" data-md-level="0"> |
|
2eca4eb…
|
ragelink
|
308 |
<label class="md-nav__title" for="__drawer"> |
|
2eca4eb…
|
ragelink
|
309 |
<a href="../.." title="Fossilrepo" class="md-nav__button md-logo" aria-label="Fossilrepo" data-md-component="logo"> |
|
2eca4eb…
|
ragelink
|
310 |
<div style="display: flex; align-items: center; gap: 0.6rem;"> |
|
2eca4eb…
|
ragelink
|
311 |
<img src="../../assets/images/conflict-logo.svg" alt="CONFLICT" style="height: 1.4rem; width: auto;"> |
|
2eca4eb…
|
ragelink
|
312 |
<img src="../../assets/images/fossilrepo-logo.svg" alt="Fossilrepo" style="height: 1.2rem; width: auto;"> |
|
2eca4eb…
|
ragelink
|
313 |
</div> |
|
2eca4eb…
|
ragelink
|
314 |
</a> |
|
2eca4eb…
|
ragelink
|
315 |
Fossilrepo |
|
2eca4eb…
|
ragelink
|
316 |
</label> |
|
2eca4eb…
|
ragelink
|
317 |
|
|
2eca4eb…
|
ragelink
|
318 |
<div class="md-nav__source"> |
|
2eca4eb…
|
ragelink
|
319 |
<a href="https://github.com/ConflictHQ/fossilrepo" title="Go to repository" class="md-source" data-md-component="source"> |
|
2eca4eb…
|
ragelink
|
320 |
<div class="md-source__icon md-icon"> |
|
2eca4eb…
|
ragelink
|
321 |
|
|
2eca4eb…
|
ragelink
|
322 |
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 7.1.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 2025 Fonticons, Inc.--><path d="M173.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.9M252.8 8C114.1 8 8 113.3 8 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.1C436.2 457.8 504 362.9 504 252 504 113.3 391.5 8 252.8 8M105.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> |
|
2eca4eb…
|
ragelink
|
323 |
</div> |
|
2eca4eb…
|
ragelink
|
324 |
<div class="md-source__repository"> |
|
2eca4eb…
|
ragelink
|
325 |
ConflictHQ/fossilrepo |
|
2eca4eb…
|
ragelink
|
326 |
</div> |
|
2eca4eb…
|
ragelink
|
327 |
</a> |
|
2eca4eb…
|
ragelink
|
328 |
</div> |
|
2eca4eb…
|
ragelink
|
329 |
|
|
2eca4eb…
|
ragelink
|
330 |
<ul class="md-nav__list" data-md-scrollfix> |
|
2eca4eb…
|
ragelink
|
331 |
|
|
2eca4eb…
|
ragelink
|
332 |
|
|
2eca4eb…
|
ragelink
|
333 |
|
|
2eca4eb…
|
ragelink
|
334 |
|
|
2eca4eb…
|
ragelink
|
335 |
|
|
2eca4eb…
|
ragelink
|
336 |
|
|
2eca4eb…
|
ragelink
|
337 |
|
|
2eca4eb…
|
ragelink
|
338 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
339 |
<a href="../.." class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
340 |
|
|
2eca4eb…
|
ragelink
|
341 |
|
|
2eca4eb…
|
ragelink
|
342 |
|
|
2eca4eb…
|
ragelink
|
343 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
344 |
|
|
2eca4eb…
|
ragelink
|
345 |
|
|
2eca4eb…
|
ragelink
|
346 |
Home |
|
2eca4eb…
|
ragelink
|
347 |
|
|
2eca4eb…
|
ragelink
|
348 |
|
|
2eca4eb…
|
ragelink
|
349 |
|
|
2eca4eb…
|
ragelink
|
350 |
</span> |
|
2eca4eb…
|
ragelink
|
351 |
|
|
2eca4eb…
|
ragelink
|
352 |
|
|
2eca4eb…
|
ragelink
|
353 |
|
|
2eca4eb…
|
ragelink
|
354 |
</a> |
|
2eca4eb…
|
ragelink
|
355 |
</li> |
|
2eca4eb…
|
ragelink
|
356 |
|
|
2eca4eb…
|
ragelink
|
357 |
|
|
2eca4eb…
|
ragelink
|
358 |
|
|
2eca4eb…
|
ragelink
|
359 |
|
|
2eca4eb…
|
ragelink
|
360 |
|
|
2eca4eb…
|
ragelink
|
361 |
|
|
2eca4eb…
|
ragelink
|
362 |
|
|
2eca4eb…
|
ragelink
|
363 |
|
|
2eca4eb…
|
ragelink
|
364 |
|
|
2eca4eb…
|
ragelink
|
365 |
|
|
2eca4eb…
|
ragelink
|
366 |
|
|
2eca4eb…
|
ragelink
|
367 |
|
|
2eca4eb…
|
ragelink
|
368 |
|
|
2eca4eb…
|
ragelink
|
369 |
|
|
2eca4eb…
|
ragelink
|
370 |
|
|
2eca4eb…
|
ragelink
|
371 |
|
|
2eca4eb…
|
ragelink
|
372 |
|
|
2eca4eb…
|
ragelink
|
373 |
|
|
2eca4eb…
|
ragelink
|
374 |
|
|
2eca4eb…
|
ragelink
|
375 |
|
|
2eca4eb…
|
ragelink
|
376 |
|
|
2eca4eb…
|
ragelink
|
377 |
|
|
2eca4eb…
|
ragelink
|
378 |
|
|
2eca4eb…
|
ragelink
|
379 |
|
|
2eca4eb…
|
ragelink
|
380 |
<li class="md-nav__item md-nav__item--active md-nav__item--section md-nav__item--nested"> |
|
2eca4eb…
|
ragelink
|
381 |
|
|
2eca4eb…
|
ragelink
|
382 |
|
|
2eca4eb…
|
ragelink
|
383 |
|
|
2eca4eb…
|
ragelink
|
384 |
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" checked> |
|
2eca4eb…
|
ragelink
|
385 |
|
|
2eca4eb…
|
ragelink
|
386 |
|
|
2eca4eb…
|
ragelink
|
387 |
<label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex=""> |
|
2eca4eb…
|
ragelink
|
388 |
|
|
2eca4eb…
|
ragelink
|
389 |
|
|
2eca4eb…
|
ragelink
|
390 |
|
|
2eca4eb…
|
ragelink
|
391 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
392 |
|
|
2eca4eb…
|
ragelink
|
393 |
|
|
2eca4eb…
|
ragelink
|
394 |
Getting Started |
|
2eca4eb…
|
ragelink
|
395 |
|
|
2eca4eb…
|
ragelink
|
396 |
|
|
2eca4eb…
|
ragelink
|
397 |
|
|
2eca4eb…
|
ragelink
|
398 |
</span> |
|
2eca4eb…
|
ragelink
|
399 |
|
|
2eca4eb…
|
ragelink
|
400 |
|
|
2eca4eb…
|
ragelink
|
401 |
|
|
2eca4eb…
|
ragelink
|
402 |
<span class="md-nav__icon md-icon"></span> |
|
2eca4eb…
|
ragelink
|
403 |
</label> |
|
2eca4eb…
|
ragelink
|
404 |
|
|
2eca4eb…
|
ragelink
|
405 |
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true"> |
|
2eca4eb…
|
ragelink
|
406 |
<label class="md-nav__title" for="__nav_2"> |
|
2eca4eb…
|
ragelink
|
407 |
<span class="md-nav__icon md-icon"></span> |
|
2eca4eb…
|
ragelink
|
408 |
|
|
2eca4eb…
|
ragelink
|
409 |
|
|
2eca4eb…
|
ragelink
|
410 |
Getting Started |
|
2eca4eb…
|
ragelink
|
411 |
|
|
2eca4eb…
|
ragelink
|
412 |
|
|
2eca4eb…
|
ragelink
|
413 |
</label> |
|
2eca4eb…
|
ragelink
|
414 |
<ul class="md-nav__list" data-md-scrollfix> |
|
2eca4eb…
|
ragelink
|
415 |
|
|
2eca4eb…
|
ragelink
|
416 |
|
|
2eca4eb…
|
ragelink
|
417 |
|
|
2eca4eb…
|
ragelink
|
418 |
|
|
2eca4eb…
|
ragelink
|
419 |
|
|
2eca4eb…
|
ragelink
|
420 |
|
|
2eca4eb…
|
ragelink
|
421 |
|
|
2eca4eb…
|
ragelink
|
422 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
423 |
<a href="../prerequisites/" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
424 |
|
|
2eca4eb…
|
ragelink
|
425 |
|
|
2eca4eb…
|
ragelink
|
426 |
|
|
2eca4eb…
|
ragelink
|
427 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
428 |
|
|
2eca4eb…
|
ragelink
|
429 |
|
|
2eca4eb…
|
ragelink
|
430 |
Prerequisites |
|
2eca4eb…
|
ragelink
|
431 |
|
|
2eca4eb…
|
ragelink
|
432 |
|
|
2eca4eb…
|
ragelink
|
433 |
|
|
2eca4eb…
|
ragelink
|
434 |
</span> |
|
2eca4eb…
|
ragelink
|
435 |
|
|
2eca4eb…
|
ragelink
|
436 |
|
|
2eca4eb…
|
ragelink
|
437 |
|
|
2eca4eb…
|
ragelink
|
438 |
</a> |
|
2eca4eb…
|
ragelink
|
439 |
</li> |
|
2eca4eb…
|
ragelink
|
440 |
|
|
2eca4eb…
|
ragelink
|
441 |
|
|
2eca4eb…
|
ragelink
|
442 |
|
|
2eca4eb…
|
ragelink
|
443 |
|
|
2eca4eb…
|
ragelink
|
444 |
|
|
2eca4eb…
|
ragelink
|
445 |
|
|
2eca4eb…
|
ragelink
|
446 |
|
|
2eca4eb…
|
ragelink
|
447 |
|
|
2eca4eb…
|
ragelink
|
448 |
|
|
2eca4eb…
|
ragelink
|
449 |
|
|
2eca4eb…
|
ragelink
|
450 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
451 |
<a href="../installation/" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
452 |
|
|
2eca4eb…
|
ragelink
|
453 |
|
|
2eca4eb…
|
ragelink
|
454 |
|
|
2eca4eb…
|
ragelink
|
455 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
456 |
|
|
2eca4eb…
|
ragelink
|
457 |
|
|
2eca4eb…
|
ragelink
|
458 |
Installation |
|
2eca4eb…
|
ragelink
|
459 |
|
|
2eca4eb…
|
ragelink
|
460 |
|
|
2eca4eb…
|
ragelink
|
461 |
|
|
2eca4eb…
|
ragelink
|
462 |
</span> |
|
2eca4eb…
|
ragelink
|
463 |
|
|
2eca4eb…
|
ragelink
|
464 |
|
|
2eca4eb…
|
ragelink
|
465 |
|
|
2eca4eb…
|
ragelink
|
466 |
</a> |
|
2eca4eb…
|
ragelink
|
467 |
</li> |
|
2eca4eb…
|
ragelink
|
468 |
|
|
2eca4eb…
|
ragelink
|
469 |
|
|
2eca4eb…
|
ragelink
|
470 |
|
|
2eca4eb…
|
ragelink
|
471 |
|
|
2eca4eb…
|
ragelink
|
472 |
|
|
2eca4eb…
|
ragelink
|
473 |
|
|
2eca4eb…
|
ragelink
|
474 |
|
|
2eca4eb…
|
ragelink
|
475 |
|
|
2eca4eb…
|
ragelink
|
476 |
|
|
2eca4eb…
|
ragelink
|
477 |
|
|
2eca4eb…
|
ragelink
|
478 |
|
|
2eca4eb…
|
ragelink
|
479 |
|
|
2eca4eb…
|
ragelink
|
480 |
<li class="md-nav__item md-nav__item--active"> |
|
2eca4eb…
|
ragelink
|
481 |
|
|
2eca4eb…
|
ragelink
|
482 |
<input class="md-nav__toggle md-toggle" type="checkbox" id="__toc"> |
|
2eca4eb…
|
ragelink
|
483 |
|
|
2eca4eb…
|
ragelink
|
484 |
|
|
2eca4eb…
|
ragelink
|
485 |
|
|
2eca4eb…
|
ragelink
|
486 |
|
|
2eca4eb…
|
ragelink
|
487 |
|
|
2eca4eb…
|
ragelink
|
488 |
<label class="md-nav__link md-nav__link--active" for="__toc"> |
|
2eca4eb…
|
ragelink
|
489 |
|
|
2eca4eb…
|
ragelink
|
490 |
|
|
2eca4eb…
|
ragelink
|
491 |
|
|
2eca4eb…
|
ragelink
|
492 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
493 |
|
|
2eca4eb…
|
ragelink
|
494 |
|
|
2eca4eb…
|
ragelink
|
495 |
Configuration |
|
2eca4eb…
|
ragelink
|
496 |
|
|
2eca4eb…
|
ragelink
|
497 |
|
|
2eca4eb…
|
ragelink
|
498 |
|
|
2eca4eb…
|
ragelink
|
499 |
</span> |
|
2eca4eb…
|
ragelink
|
500 |
|
|
2eca4eb…
|
ragelink
|
501 |
|
|
2eca4eb…
|
ragelink
|
502 |
|
|
2eca4eb…
|
ragelink
|
503 |
<span class="md-nav__icon md-icon"></span> |
|
2eca4eb…
|
ragelink
|
504 |
</label> |
|
2eca4eb…
|
ragelink
|
505 |
|
|
2eca4eb…
|
ragelink
|
506 |
<a href="./" class="md-nav__link md-nav__link--active"> |
|
2eca4eb…
|
ragelink
|
507 |
|
|
2eca4eb…
|
ragelink
|
508 |
|
|
2eca4eb…
|
ragelink
|
509 |
|
|
2eca4eb…
|
ragelink
|
510 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
511 |
|
|
2eca4eb…
|
ragelink
|
512 |
|
|
2eca4eb…
|
ragelink
|
513 |
Configuration |
|
2eca4eb…
|
ragelink
|
514 |
|
|
2eca4eb…
|
ragelink
|
515 |
|
|
2eca4eb…
|
ragelink
|
516 |
|
|
2eca4eb…
|
ragelink
|
517 |
</span> |
|
2eca4eb…
|
ragelink
|
518 |
|
|
2eca4eb…
|
ragelink
|
519 |
|
|
2eca4eb…
|
ragelink
|
520 |
|
|
2eca4eb…
|
ragelink
|
521 |
</a> |
|
2eca4eb…
|
ragelink
|
522 |
|
|
2eca4eb…
|
ragelink
|
523 |
|
|
2eca4eb…
|
ragelink
|
524 |
|
|
2eca4eb…
|
ragelink
|
525 |
<nav class="md-nav md-nav--secondary" aria-label="Table of contents"> |
|
2eca4eb…
|
ragelink
|
526 |
|
|
2eca4eb…
|
ragelink
|
527 |
|
|
2eca4eb…
|
ragelink
|
528 |
|
|
2eca4eb…
|
ragelink
|
529 |
|
|
2eca4eb…
|
ragelink
|
530 |
|
|
2eca4eb…
|
ragelink
|
531 |
|
|
2eca4eb…
|
ragelink
|
532 |
<label class="md-nav__title" for="__toc"> |
|
2eca4eb…
|
ragelink
|
533 |
<span class="md-nav__icon md-icon"></span> |
|
2eca4eb…
|
ragelink
|
534 |
Table of contents |
|
2eca4eb…
|
ragelink
|
535 |
</label> |
|
2eca4eb…
|
ragelink
|
536 |
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix> |
|
2eca4eb…
|
ragelink
|
537 |
|
|
2eca4eb…
|
ragelink
|
538 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
539 |
<a href="#environment-variables" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
540 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
541 |
|
|
2eca4eb…
|
ragelink
|
542 |
Environment Variables |
|
2eca4eb…
|
ragelink
|
543 |
|
|
2eca4eb…
|
ragelink
|
544 |
</span> |
|
2eca4eb…
|
ragelink
|
545 |
</a> |
|
2eca4eb…
|
ragelink
|
546 |
|
|
2eca4eb…
|
ragelink
|
547 |
<nav class="md-nav" aria-label="Environment Variables"> |
|
2eca4eb…
|
ragelink
|
548 |
<ul class="md-nav__list"> |
|
2eca4eb…
|
ragelink
|
549 |
|
|
2eca4eb…
|
ragelink
|
550 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
551 |
<a href="#django-settings" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
552 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
553 |
|
|
2eca4eb…
|
ragelink
|
554 |
Django Settings |
|
2eca4eb…
|
ragelink
|
555 |
|
|
2eca4eb…
|
ragelink
|
556 |
</span> |
|
2eca4eb…
|
ragelink
|
557 |
</a> |
|
2eca4eb…
|
ragelink
|
558 |
|
|
2eca4eb…
|
ragelink
|
559 |
</li> |
|
2eca4eb…
|
ragelink
|
560 |
|
|
2eca4eb…
|
ragelink
|
561 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
562 |
<a href="#database" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
563 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
564 |
|
|
2eca4eb…
|
ragelink
|
565 |
Database |
|
2eca4eb…
|
ragelink
|
566 |
|
|
2eca4eb…
|
ragelink
|
567 |
</span> |
|
2eca4eb…
|
ragelink
|
568 |
</a> |
|
2eca4eb…
|
ragelink
|
569 |
|
|
2eca4eb…
|
ragelink
|
570 |
</li> |
|
2eca4eb…
|
ragelink
|
571 |
|
|
2eca4eb…
|
ragelink
|
572 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
573 |
<a href="#redis-celery" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
574 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
575 |
|
|
2eca4eb…
|
ragelink
|
576 |
Redis & Celery |
|
2eca4eb…
|
ragelink
|
577 |
|
|
2eca4eb…
|
ragelink
|
578 |
</span> |
|
2eca4eb…
|
ragelink
|
579 |
</a> |
|
2eca4eb…
|
ragelink
|
580 |
|
|
2eca4eb…
|
ragelink
|
581 |
</li> |
|
2eca4eb…
|
ragelink
|
582 |
|
|
2eca4eb…
|
ragelink
|
583 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
584 |
<a href="#fossil" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
585 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
586 |
|
|
2eca4eb…
|
ragelink
|
587 |
Fossil |
|
2eca4eb…
|
ragelink
|
588 |
|
|
2eca4eb…
|
ragelink
|
589 |
</span> |
|
2eca4eb…
|
ragelink
|
590 |
</a> |
|
2eca4eb…
|
ragelink
|
591 |
|
|
2eca4eb…
|
ragelink
|
592 |
</li> |
|
2eca4eb…
|
ragelink
|
593 |
|
|
2eca4eb…
|
ragelink
|
594 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
595 |
<a href="#caddy-production" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
596 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
597 |
|
|
2eca4eb…
|
ragelink
|
598 |
Caddy (Production) |
|
2eca4eb…
|
ragelink
|
599 |
|
|
2eca4eb…
|
ragelink
|
600 |
</span> |
|
2eca4eb…
|
ragelink
|
601 |
</a> |
|
2eca4eb…
|
ragelink
|
602 |
|
|
2eca4eb…
|
ragelink
|
603 |
</li> |
|
2eca4eb…
|
ragelink
|
604 |
|
|
2eca4eb…
|
ragelink
|
605 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
606 |
<a href="#litestream-backups" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
607 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
608 |
|
|
2eca4eb…
|
ragelink
|
609 |
Litestream (Backups) |
|
2eca4eb…
|
ragelink
|
610 |
|
|
2eca4eb…
|
ragelink
|
611 |
</span> |
|
2eca4eb…
|
ragelink
|
612 |
</a> |
|
2eca4eb…
|
ragelink
|
613 |
|
|
2eca4eb…
|
ragelink
|
614 |
</li> |
|
2eca4eb…
|
ragelink
|
615 |
|
|
2eca4eb…
|
ragelink
|
616 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
617 |
<a href="#sync-bridge" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
618 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
619 |
|
|
2eca4eb…
|
ragelink
|
620 |
Sync Bridge |
|
2eca4eb…
|
ragelink
|
621 |
|
|
2eca4eb…
|
ragelink
|
622 |
</span> |
|
2eca4eb…
|
ragelink
|
623 |
</a> |
|
2eca4eb…
|
ragelink
|
624 |
|
|
2eca4eb…
|
ragelink
|
625 |
</li> |
|
2eca4eb…
|
ragelink
|
626 |
|
|
2eca4eb…
|
ragelink
|
627 |
</ul> |
|
2eca4eb…
|
ragelink
|
628 |
</nav> |
|
2eca4eb…
|
ragelink
|
629 |
|
|
2eca4eb…
|
ragelink
|
630 |
</li> |
|
2eca4eb…
|
ragelink
|
631 |
|
|
2eca4eb…
|
ragelink
|
632 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
633 |
<a href="#caddy-configuration" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
634 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
635 |
|
|
2eca4eb…
|
ragelink
|
636 |
Caddy Configuration |
|
2eca4eb…
|
ragelink
|
637 |
|
|
2eca4eb…
|
ragelink
|
638 |
</span> |
|
2eca4eb…
|
ragelink
|
639 |
</a> |
|
2eca4eb…
|
ragelink
|
640 |
|
|
2eca4eb…
|
ragelink
|
641 |
</li> |
|
2eca4eb…
|
ragelink
|
642 |
|
|
2eca4eb…
|
ragelink
|
643 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
644 |
<a href="#litestream-configuration" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
645 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
646 |
|
|
2eca4eb…
|
ragelink
|
647 |
Litestream Configuration |
|
2eca4eb…
|
ragelink
|
648 |
|
|
2eca4eb…
|
ragelink
|
649 |
</span> |
|
2eca4eb…
|
ragelink
|
650 |
</a> |
|
2eca4eb…
|
ragelink
|
651 |
|
|
2eca4eb…
|
ragelink
|
652 |
</li> |
|
2eca4eb…
|
ragelink
|
653 |
|
|
2eca4eb…
|
ragelink
|
654 |
</ul> |
|
2eca4eb…
|
ragelink
|
655 |
|
|
2eca4eb…
|
ragelink
|
656 |
</nav> |
|
2eca4eb…
|
ragelink
|
657 |
|
|
2eca4eb…
|
ragelink
|
658 |
</li> |
|
2eca4eb…
|
ragelink
|
659 |
|
|
2eca4eb…
|
ragelink
|
660 |
|
|
2eca4eb…
|
ragelink
|
661 |
|
|
2eca4eb…
|
ragelink
|
662 |
|
|
2eca4eb…
|
ragelink
|
663 |
|
|
2eca4eb…
|
ragelink
|
664 |
|
|
2eca4eb…
|
ragelink
|
665 |
|
|
2eca4eb…
|
ragelink
|
666 |
|
|
2eca4eb…
|
ragelink
|
667 |
|
|
2eca4eb…
|
ragelink
|
668 |
|
|
2eca4eb…
|
ragelink
|
669 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
670 |
<a href="../first-repo/" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
671 |
|
|
2eca4eb…
|
ragelink
|
672 |
|
|
2eca4eb…
|
ragelink
|
673 |
|
|
2eca4eb…
|
ragelink
|
674 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
675 |
|
|
2eca4eb…
|
ragelink
|
676 |
|
|
2eca4eb…
|
ragelink
|
677 |
First Repository |
|
2eca4eb…
|
ragelink
|
678 |
|
|
2eca4eb…
|
ragelink
|
679 |
|
|
2eca4eb…
|
ragelink
|
680 |
|
|
2eca4eb…
|
ragelink
|
681 |
</span> |
|
2eca4eb…
|
ragelink
|
682 |
|
|
2eca4eb…
|
ragelink
|
683 |
|
|
2eca4eb…
|
ragelink
|
684 |
|
|
2eca4eb…
|
ragelink
|
685 |
</a> |
|
2eca4eb…
|
ragelink
|
686 |
</li> |
|
2eca4eb…
|
ragelink
|
687 |
|
|
2eca4eb…
|
ragelink
|
688 |
|
|
2eca4eb…
|
ragelink
|
689 |
|
|
2eca4eb…
|
ragelink
|
690 |
|
|
2eca4eb…
|
ragelink
|
691 |
</ul> |
|
2eca4eb…
|
ragelink
|
692 |
</nav> |
|
2eca4eb…
|
ragelink
|
693 |
|
|
2eca4eb…
|
ragelink
|
694 |
</li> |
|
2eca4eb…
|
ragelink
|
695 |
|
|
2eca4eb…
|
ragelink
|
696 |
|
|
2eca4eb…
|
ragelink
|
697 |
|
|
2eca4eb…
|
ragelink
|
698 |
|
|
2eca4eb…
|
ragelink
|
699 |
|
|
2eca4eb…
|
ragelink
|
700 |
|
|
2eca4eb…
|
ragelink
|
701 |
|
|
2eca4eb…
|
ragelink
|
702 |
|
|
2eca4eb…
|
ragelink
|
703 |
|
|
2eca4eb…
|
ragelink
|
704 |
|
|
2eca4eb…
|
ragelink
|
705 |
|
|
2eca4eb…
|
ragelink
|
706 |
|
|
2eca4eb…
|
ragelink
|
707 |
|
|
2eca4eb…
|
ragelink
|
708 |
|
|
2eca4eb…
|
ragelink
|
709 |
|
|
2eca4eb…
|
ragelink
|
710 |
|
|
2eca4eb…
|
ragelink
|
711 |
|
|
2eca4eb…
|
ragelink
|
712 |
|
|
2eca4eb…
|
ragelink
|
713 |
|
|
2eca4eb…
|
ragelink
|
714 |
<li class="md-nav__item md-nav__item--nested"> |
|
2eca4eb…
|
ragelink
|
715 |
|
|
2eca4eb…
|
ragelink
|
716 |
|
|
2eca4eb…
|
ragelink
|
717 |
|
|
2eca4eb…
|
ragelink
|
718 |
|
|
2eca4eb…
|
ragelink
|
719 |
|
|
2eca4eb…
|
ragelink
|
720 |
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3" > |
|
2eca4eb…
|
ragelink
|
721 |
|
|
2eca4eb…
|
ragelink
|
722 |
|
|
2eca4eb…
|
ragelink
|
723 |
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0"> |
|
2eca4eb…
|
ragelink
|
724 |
|
|
2eca4eb…
|
ragelink
|
725 |
|
|
2eca4eb…
|
ragelink
|
726 |
|
|
2eca4eb…
|
ragelink
|
727 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
728 |
|
|
2eca4eb…
|
ragelink
|
729 |
|
|
2eca4eb…
|
ragelink
|
730 |
Architecture |
|
2eca4eb…
|
ragelink
|
731 |
|
|
2eca4eb…
|
ragelink
|
732 |
|
|
2eca4eb…
|
ragelink
|
733 |
|
|
2eca4eb…
|
ragelink
|
734 |
</span> |
|
2eca4eb…
|
ragelink
|
735 |
|
|
2eca4eb…
|
ragelink
|
736 |
|
|
2eca4eb…
|
ragelink
|
737 |
|
|
2eca4eb…
|
ragelink
|
738 |
<span class="md-nav__icon md-icon"></span> |
|
2eca4eb…
|
ragelink
|
739 |
</label> |
|
2eca4eb…
|
ragelink
|
740 |
|
|
2eca4eb…
|
ragelink
|
741 |
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false"> |
|
2eca4eb…
|
ragelink
|
742 |
<label class="md-nav__title" for="__nav_3"> |
|
2eca4eb…
|
ragelink
|
743 |
<span class="md-nav__icon md-icon"></span> |
|
2eca4eb…
|
ragelink
|
744 |
|
|
2eca4eb…
|
ragelink
|
745 |
|
|
2eca4eb…
|
ragelink
|
746 |
Architecture |
|
2eca4eb…
|
ragelink
|
747 |
|
|
2eca4eb…
|
ragelink
|
748 |
|
|
2eca4eb…
|
ragelink
|
749 |
</label> |
|
2eca4eb…
|
ragelink
|
750 |
<ul class="md-nav__list" data-md-scrollfix> |
|
2eca4eb…
|
ragelink
|
751 |
|
|
2eca4eb…
|
ragelink
|
752 |
|
|
2eca4eb…
|
ragelink
|
753 |
|
|
2eca4eb…
|
ragelink
|
754 |
|
|
2eca4eb…
|
ragelink
|
755 |
|
|
2eca4eb…
|
ragelink
|
756 |
|
|
2eca4eb…
|
ragelink
|
757 |
|
|
2eca4eb…
|
ragelink
|
758 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
759 |
<a href="../../architecture/overview/" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
760 |
|
|
2eca4eb…
|
ragelink
|
761 |
|
|
2eca4eb…
|
ragelink
|
762 |
|
|
2eca4eb…
|
ragelink
|
763 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
764 |
|
|
2eca4eb…
|
ragelink
|
765 |
|
|
2eca4eb…
|
ragelink
|
766 |
Overview |
|
2eca4eb…
|
ragelink
|
767 |
|
|
2eca4eb…
|
ragelink
|
768 |
|
|
2eca4eb…
|
ragelink
|
769 |
|
|
2eca4eb…
|
ragelink
|
770 |
</span> |
|
2eca4eb…
|
ragelink
|
771 |
|
|
2eca4eb…
|
ragelink
|
772 |
|
|
2eca4eb…
|
ragelink
|
773 |
|
|
2eca4eb…
|
ragelink
|
774 |
</a> |
|
2eca4eb…
|
ragelink
|
775 |
</li> |
|
2eca4eb…
|
ragelink
|
776 |
|
|
2eca4eb…
|
ragelink
|
777 |
|
|
2eca4eb…
|
ragelink
|
778 |
|
|
2eca4eb…
|
ragelink
|
779 |
|
|
2eca4eb…
|
ragelink
|
780 |
|
|
2eca4eb…
|
ragelink
|
781 |
|
|
2eca4eb…
|
ragelink
|
782 |
|
|
2eca4eb…
|
ragelink
|
783 |
|
|
2eca4eb…
|
ragelink
|
784 |
|
|
2eca4eb…
|
ragelink
|
785 |
|
|
2eca4eb…
|
ragelink
|
786 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
787 |
<a href="../../architecture/sync-bridge/" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
788 |
|
|
2eca4eb…
|
ragelink
|
789 |
|
|
2eca4eb…
|
ragelink
|
790 |
|
|
2eca4eb…
|
ragelink
|
791 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
792 |
|
|
2eca4eb…
|
ragelink
|
793 |
|
|
2eca4eb…
|
ragelink
|
794 |
Sync Bridge |
|
2eca4eb…
|
ragelink
|
795 |
|
|
2eca4eb…
|
ragelink
|
796 |
|
|
2eca4eb…
|
ragelink
|
797 |
|
|
2eca4eb…
|
ragelink
|
798 |
</span> |
|
2eca4eb…
|
ragelink
|
799 |
|
|
2eca4eb…
|
ragelink
|
800 |
|
|
2eca4eb…
|
ragelink
|
801 |
|
|
2eca4eb…
|
ragelink
|
802 |
</a> |
|
2eca4eb…
|
ragelink
|
803 |
</li> |
|
2eca4eb…
|
ragelink
|
804 |
|
|
2eca4eb…
|
ragelink
|
805 |
|
|
2eca4eb…
|
ragelink
|
806 |
|
|
2eca4eb…
|
ragelink
|
807 |
|
|
2eca4eb…
|
ragelink
|
808 |
</ul> |
|
2eca4eb…
|
ragelink
|
809 |
</nav> |
|
2eca4eb…
|
ragelink
|
810 |
|
|
2eca4eb…
|
ragelink
|
811 |
</li> |
|
2eca4eb…
|
ragelink
|
812 |
|
|
2eca4eb…
|
ragelink
|
813 |
|
|
2eca4eb…
|
ragelink
|
814 |
|
|
2eca4eb…
|
ragelink
|
815 |
</ul> |
|
2eca4eb…
|
ragelink
|
816 |
</nav> |
|
2eca4eb…
|
ragelink
|
817 |
</div> |
|
2eca4eb…
|
ragelink
|
818 |
</div> |
|
2eca4eb…
|
ragelink
|
819 |
</div> |
|
2eca4eb…
|
ragelink
|
820 |
|
|
2eca4eb…
|
ragelink
|
821 |
|
|
2eca4eb…
|
ragelink
|
822 |
|
|
2eca4eb…
|
ragelink
|
823 |
<div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" > |
|
2eca4eb…
|
ragelink
|
824 |
<div class="md-sidebar__scrollwrap"> |
|
2eca4eb…
|
ragelink
|
825 |
<div class="md-sidebar__inner"> |
|
2eca4eb…
|
ragelink
|
826 |
|
|
2eca4eb…
|
ragelink
|
827 |
|
|
2eca4eb…
|
ragelink
|
828 |
<nav class="md-nav md-nav--secondary" aria-label="Table of contents"> |
|
2eca4eb…
|
ragelink
|
829 |
|
|
2eca4eb…
|
ragelink
|
830 |
|
|
2eca4eb…
|
ragelink
|
831 |
|
|
2eca4eb…
|
ragelink
|
832 |
|
|
2eca4eb…
|
ragelink
|
833 |
|
|
2eca4eb…
|
ragelink
|
834 |
|
|
2eca4eb…
|
ragelink
|
835 |
<label class="md-nav__title" for="__toc"> |
|
2eca4eb…
|
ragelink
|
836 |
<span class="md-nav__icon md-icon"></span> |
|
2eca4eb…
|
ragelink
|
837 |
Table of contents |
|
2eca4eb…
|
ragelink
|
838 |
</label> |
|
2eca4eb…
|
ragelink
|
839 |
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix> |
|
2eca4eb…
|
ragelink
|
840 |
|
|
2eca4eb…
|
ragelink
|
841 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
842 |
<a href="#environment-variables" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
843 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
844 |
|
|
2eca4eb…
|
ragelink
|
845 |
Environment Variables |
|
2eca4eb…
|
ragelink
|
846 |
|
|
2eca4eb…
|
ragelink
|
847 |
</span> |
|
2eca4eb…
|
ragelink
|
848 |
</a> |
|
2eca4eb…
|
ragelink
|
849 |
|
|
2eca4eb…
|
ragelink
|
850 |
<nav class="md-nav" aria-label="Environment Variables"> |
|
2eca4eb…
|
ragelink
|
851 |
<ul class="md-nav__list"> |
|
2eca4eb…
|
ragelink
|
852 |
|
|
2eca4eb…
|
ragelink
|
853 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
854 |
<a href="#django-settings" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
855 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
856 |
|
|
2eca4eb…
|
ragelink
|
857 |
Django Settings |
|
2eca4eb…
|
ragelink
|
858 |
|
|
2eca4eb…
|
ragelink
|
859 |
</span> |
|
2eca4eb…
|
ragelink
|
860 |
</a> |
|
2eca4eb…
|
ragelink
|
861 |
|
|
2eca4eb…
|
ragelink
|
862 |
</li> |
|
2eca4eb…
|
ragelink
|
863 |
|
|
2eca4eb…
|
ragelink
|
864 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
865 |
<a href="#database" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
866 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
867 |
|
|
2eca4eb…
|
ragelink
|
868 |
Database |
|
2eca4eb…
|
ragelink
|
869 |
|
|
2eca4eb…
|
ragelink
|
870 |
</span> |
|
2eca4eb…
|
ragelink
|
871 |
</a> |
|
2eca4eb…
|
ragelink
|
872 |
|
|
2eca4eb…
|
ragelink
|
873 |
</li> |
|
2eca4eb…
|
ragelink
|
874 |
|
|
2eca4eb…
|
ragelink
|
875 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
876 |
<a href="#redis-celery" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
877 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
878 |
|
|
2eca4eb…
|
ragelink
|
879 |
Redis & Celery |
|
2eca4eb…
|
ragelink
|
880 |
|
|
2eca4eb…
|
ragelink
|
881 |
</span> |
|
2eca4eb…
|
ragelink
|
882 |
</a> |
|
2eca4eb…
|
ragelink
|
883 |
|
|
2eca4eb…
|
ragelink
|
884 |
</li> |
|
2eca4eb…
|
ragelink
|
885 |
|
|
2eca4eb…
|
ragelink
|
886 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
887 |
<a href="#fossil" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
888 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
889 |
|
|
2eca4eb…
|
ragelink
|
890 |
Fossil |
|
2eca4eb…
|
ragelink
|
891 |
|
|
2eca4eb…
|
ragelink
|
892 |
</span> |
|
2eca4eb…
|
ragelink
|
893 |
</a> |
|
2eca4eb…
|
ragelink
|
894 |
|
|
2eca4eb…
|
ragelink
|
895 |
</li> |
|
2eca4eb…
|
ragelink
|
896 |
|
|
2eca4eb…
|
ragelink
|
897 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
898 |
<a href="#caddy-production" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
899 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
900 |
|
|
2eca4eb…
|
ragelink
|
901 |
Caddy (Production) |
|
2eca4eb…
|
ragelink
|
902 |
|
|
2eca4eb…
|
ragelink
|
903 |
</span> |
|
2eca4eb…
|
ragelink
|
904 |
</a> |
|
2eca4eb…
|
ragelink
|
905 |
|
|
2eca4eb…
|
ragelink
|
906 |
</li> |
|
2eca4eb…
|
ragelink
|
907 |
|
|
2eca4eb…
|
ragelink
|
908 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
909 |
<a href="#litestream-backups" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
910 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
911 |
|
|
2eca4eb…
|
ragelink
|
912 |
Litestream (Backups) |
|
2eca4eb…
|
ragelink
|
913 |
|
|
2eca4eb…
|
ragelink
|
914 |
</span> |
|
2eca4eb…
|
ragelink
|
915 |
</a> |
|
2eca4eb…
|
ragelink
|
916 |
|
|
2eca4eb…
|
ragelink
|
917 |
</li> |
|
2eca4eb…
|
ragelink
|
918 |
|
|
2eca4eb…
|
ragelink
|
919 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
920 |
<a href="#sync-bridge" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
921 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
922 |
|
|
2eca4eb…
|
ragelink
|
923 |
Sync Bridge |
|
2eca4eb…
|
ragelink
|
924 |
|
|
2eca4eb…
|
ragelink
|
925 |
</span> |
|
2eca4eb…
|
ragelink
|
926 |
</a> |
|
2eca4eb…
|
ragelink
|
927 |
|
|
2eca4eb…
|
ragelink
|
928 |
</li> |
|
2eca4eb…
|
ragelink
|
929 |
|
|
2eca4eb…
|
ragelink
|
930 |
</ul> |
|
2eca4eb…
|
ragelink
|
931 |
</nav> |
|
2eca4eb…
|
ragelink
|
932 |
|
|
2eca4eb…
|
ragelink
|
933 |
</li> |
|
2eca4eb…
|
ragelink
|
934 |
|
|
2eca4eb…
|
ragelink
|
935 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
936 |
<a href="#caddy-configuration" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
937 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
938 |
|
|
2eca4eb…
|
ragelink
|
939 |
Caddy Configuration |
|
2eca4eb…
|
ragelink
|
940 |
|
|
2eca4eb…
|
ragelink
|
941 |
</span> |
|
2eca4eb…
|
ragelink
|
942 |
</a> |
|
2eca4eb…
|
ragelink
|
943 |
|
|
2eca4eb…
|
ragelink
|
944 |
</li> |
|
2eca4eb…
|
ragelink
|
945 |
|
|
2eca4eb…
|
ragelink
|
946 |
<li class="md-nav__item"> |
|
2eca4eb…
|
ragelink
|
947 |
<a href="#litestream-configuration" class="md-nav__link"> |
|
2eca4eb…
|
ragelink
|
948 |
<span class="md-ellipsis"> |
|
2eca4eb…
|
ragelink
|
949 |
|
|
2eca4eb…
|
ragelink
|
950 |
Litestream Configuration |
|
2eca4eb…
|
ragelink
|
951 |
|
|
2eca4eb…
|
ragelink
|
952 |
</span> |
|
2eca4eb…
|
ragelink
|
953 |
</a> |
|
2eca4eb…
|
ragelink
|
954 |
|
|
2eca4eb…
|
ragelink
|
955 |
</li> |
|
2eca4eb…
|
ragelink
|
956 |
|
|
2eca4eb…
|
ragelink
|
957 |
</ul> |
|
2eca4eb…
|
ragelink
|
958 |
|
|
2eca4eb…
|
ragelink
|
959 |
</nav> |
|
2eca4eb…
|
ragelink
|
960 |
</div> |
|
2eca4eb…
|
ragelink
|
961 |
</div> |
|
2eca4eb…
|
ragelink
|
962 |
</div> |
|
2eca4eb…
|
ragelink
|
963 |
|
|
2eca4eb…
|
ragelink
|
964 |
|
|
2eca4eb…
|
ragelink
|
965 |
|
|
2eca4eb…
|
ragelink
|
966 |
<div class="md-content" data-md-component="content"> |
|
2eca4eb…
|
ragelink
|
967 |
|
|
2eca4eb…
|
ragelink
|
968 |
<article class="md-content__inner md-typeset"> |
|
2eca4eb…
|
ragelink
|
969 |
|
|
2eca4eb…
|
ragelink
|
970 |
|
|
2eca4eb…
|
ragelink
|
971 |
|
|
2eca4eb…
|
ragelink
|
972 |
|
|
2eca4eb…
|
ragelink
|
973 |
|
|
2eca4eb…
|
ragelink
|
974 |
|
|
2eca4eb…
|
ragelink
|
975 |
|
|
2eca4eb…
|
ragelink
|
976 |
|
|
2eca4eb…
|
ragelink
|
977 |
<h1 id="configuration">Configuration<a class="headerlink" href="#configuration" title="Permanent link">¶</a></h1> |
|
2eca4eb…
|
ragelink
|
978 |
<h2 id="environment-variables">Environment Variables<a class="headerlink" href="#environment-variables" title="Permanent link">¶</a></h2> |
|
2eca4eb…
|
ragelink
|
979 |
<p>All configuration is done through environment variables, loaded from <code>.env</code> in development.</p> |
|
2eca4eb…
|
ragelink
|
980 |
<h3 id="django-settings">Django Settings<a class="headerlink" href="#django-settings" title="Permanent link">¶</a></h3> |
|
2eca4eb…
|
ragelink
|
981 |
<table> |
|
2eca4eb…
|
ragelink
|
982 |
<thead> |
|
2eca4eb…
|
ragelink
|
983 |
<tr> |
|
2eca4eb…
|
ragelink
|
984 |
<th>Variable</th> |
|
2eca4eb…
|
ragelink
|
985 |
<th>Default</th> |
|
2eca4eb…
|
ragelink
|
986 |
<th>Description</th> |
|
2eca4eb…
|
ragelink
|
987 |
</tr> |
|
2eca4eb…
|
ragelink
|
988 |
</thead> |
|
2eca4eb…
|
ragelink
|
989 |
<tbody> |
|
2eca4eb…
|
ragelink
|
990 |
<tr> |
|
2eca4eb…
|
ragelink
|
991 |
<td><code>SECRET_KEY</code></td> |
|
2eca4eb…
|
ragelink
|
992 |
<td>--</td> |
|
2eca4eb…
|
ragelink
|
993 |
<td>Django secret key (required)</td> |
|
2eca4eb…
|
ragelink
|
994 |
</tr> |
|
2eca4eb…
|
ragelink
|
995 |
<tr> |
|
2eca4eb…
|
ragelink
|
996 |
<td><code>DEBUG</code></td> |
|
2eca4eb…
|
ragelink
|
997 |
<td><code>False</code></td> |
|
2eca4eb…
|
ragelink
|
998 |
<td>Enable debug mode</td> |
|
2eca4eb…
|
ragelink
|
999 |
</tr> |
|
2eca4eb…
|
ragelink
|
1000 |
<tr> |
|
2eca4eb…
|
ragelink
|
1001 |
<td><code>ALLOWED_HOSTS</code></td> |
|
2eca4eb…
|
ragelink
|
1002 |
<td><code>localhost</code></td> |
|
2eca4eb…
|
ragelink
|
1003 |
<td>Comma-separated list of allowed hosts</td> |
|
2eca4eb…
|
ragelink
|
1004 |
</tr> |
|
2eca4eb…
|
ragelink
|
1005 |
<tr> |
|
2eca4eb…
|
ragelink
|
1006 |
<td><code>TIME_ZONE</code></td> |
|
2eca4eb…
|
ragelink
|
1007 |
<td><code>UTC</code></td> |
|
2eca4eb…
|
ragelink
|
1008 |
<td>Server timezone</td> |
|
2eca4eb…
|
ragelink
|
1009 |
</tr> |
|
2eca4eb…
|
ragelink
|
1010 |
</tbody> |
|
2eca4eb…
|
ragelink
|
1011 |
</table> |
|
2eca4eb…
|
ragelink
|
1012 |
<h3 id="database">Database<a class="headerlink" href="#database" title="Permanent link">¶</a></h3> |
|
2eca4eb…
|
ragelink
|
1013 |
<table> |
|
2eca4eb…
|
ragelink
|
1014 |
<thead> |
|
2eca4eb…
|
ragelink
|
1015 |
<tr> |
|
2eca4eb…
|
ragelink
|
1016 |
<th>Variable</th> |
|
2eca4eb…
|
ragelink
|
1017 |
<th>Default</th> |
|
2eca4eb…
|
ragelink
|
1018 |
<th>Description</th> |
|
2eca4eb…
|
ragelink
|
1019 |
</tr> |
|
2eca4eb…
|
ragelink
|
1020 |
</thead> |
|
2eca4eb…
|
ragelink
|
1021 |
<tbody> |
|
2eca4eb…
|
ragelink
|
1022 |
<tr> |
|
2eca4eb…
|
ragelink
|
1023 |
<td><code>POSTGRES_DB</code></td> |
|
2eca4eb…
|
ragelink
|
1024 |
<td><code>fossilrepo</code></td> |
|
2eca4eb…
|
ragelink
|
1025 |
<td>Database name</td> |
|
2eca4eb…
|
ragelink
|
1026 |
</tr> |
|
2eca4eb…
|
ragelink
|
1027 |
<tr> |
|
2eca4eb…
|
ragelink
|
1028 |
<td><code>POSTGRES_USER</code></td> |
|
2eca4eb…
|
ragelink
|
1029 |
<td><code>fossilrepo</code></td> |
|
2eca4eb…
|
ragelink
|
1030 |
<td>Database user</td> |
|
2eca4eb…
|
ragelink
|
1031 |
</tr> |
|
2eca4eb…
|
ragelink
|
1032 |
<tr> |
|
2eca4eb…
|
ragelink
|
1033 |
<td><code>POSTGRES_PASSWORD</code></td> |
|
2eca4eb…
|
ragelink
|
1034 |
<td>--</td> |
|
2eca4eb…
|
ragelink
|
1035 |
<td>Database password (required)</td> |
|
2eca4eb…
|
ragelink
|
1036 |
</tr> |
|
2eca4eb…
|
ragelink
|
1037 |
<tr> |
|
2eca4eb…
|
ragelink
|
1038 |
<td><code>POSTGRES_HOST</code></td> |
|
2eca4eb…
|
ragelink
|
1039 |
<td><code>postgres</code></td> |
|
2eca4eb…
|
ragelink
|
1040 |
<td>Database host</td> |
|
2eca4eb…
|
ragelink
|
1041 |
</tr> |
|
2eca4eb…
|
ragelink
|
1042 |
<tr> |
|
2eca4eb…
|
ragelink
|
1043 |
<td><code>POSTGRES_PORT</code></td> |
|
2eca4eb…
|
ragelink
|
1044 |
<td><code>5432</code></td> |
|
2eca4eb…
|
ragelink
|
1045 |
<td>Database port</td> |
|
2eca4eb…
|
ragelink
|
1046 |
</tr> |
|
2eca4eb…
|
ragelink
|
1047 |
</tbody> |
|
2eca4eb…
|
ragelink
|
1048 |
</table> |
|
2eca4eb…
|
ragelink
|
1049 |
<h3 id="redis-celery">Redis & Celery<a class="headerlink" href="#redis-celery" title="Permanent link">¶</a></h3> |
|
2eca4eb…
|
ragelink
|
1050 |
<table> |
|
2eca4eb…
|
ragelink
|
1051 |
<thead> |
|
2eca4eb…
|
ragelink
|
1052 |
<tr> |
|
2eca4eb…
|
ragelink
|
1053 |
<th>Variable</th> |
|
2eca4eb…
|
ragelink
|
1054 |
<th>Default</th> |
|
2eca4eb…
|
ragelink
|
1055 |
<th>Description</th> |
|
2eca4eb…
|
ragelink
|
1056 |
</tr> |
|
2eca4eb…
|
ragelink
|
1057 |
</thead> |
|
2eca4eb…
|
ragelink
|
1058 |
<tbody> |
|
2eca4eb…
|
ragelink
|
1059 |
<tr> |
|
2eca4eb…
|
ragelink
|
1060 |
<td><code>REDIS_URL</code></td> |
|
2eca4eb…
|
ragelink
|
1061 |
<td><code>redis://redis:6379/0</code></td> |
|
2eca4eb…
|
ragelink
|
1062 |
<td>Redis connection URL</td> |
|
2eca4eb…
|
ragelink
|
1063 |
</tr> |
|
2eca4eb…
|
ragelink
|
1064 |
<tr> |
|
2eca4eb…
|
ragelink
|
1065 |
<td><code>CELERY_BROKER_URL</code></td> |
|
2eca4eb…
|
ragelink
|
1066 |
<td><code>$REDIS_URL</code></td> |
|
2eca4eb…
|
ragelink
|
1067 |
<td>Celery broker (defaults to Redis URL)</td> |
|
2eca4eb…
|
ragelink
|
1068 |
</tr> |
|
2eca4eb…
|
ragelink
|
1069 |
</tbody> |
|
2eca4eb…
|
ragelink
|
1070 |
</table> |
|
2eca4eb…
|
ragelink
|
1071 |
<h3 id="fossil">Fossil<a class="headerlink" href="#fossil" title="Permanent link">¶</a></h3> |
|
2eca4eb…
|
ragelink
|
1072 |
<table> |
|
2eca4eb…
|
ragelink
|
1073 |
<thead> |
|
2eca4eb…
|
ragelink
|
1074 |
<tr> |
|
2eca4eb…
|
ragelink
|
1075 |
<th>Variable</th> |
|
2eca4eb…
|
ragelink
|
1076 |
<th>Default</th> |
|
2eca4eb…
|
ragelink
|
1077 |
<th>Description</th> |
|
2eca4eb…
|
ragelink
|
1078 |
</tr> |
|
2eca4eb…
|
ragelink
|
1079 |
</thead> |
|
2eca4eb…
|
ragelink
|
1080 |
<tbody> |
|
2eca4eb…
|
ragelink
|
1081 |
<tr> |
|
2eca4eb…
|
ragelink
|
1082 |
<td><code>FOSSIL_REPO_DIR</code></td> |
|
2eca4eb…
|
ragelink
|
1083 |
<td><code>/data/repos</code></td> |
|
2eca4eb…
|
ragelink
|
1084 |
<td>Directory where <code>.fossil</code> files are stored</td> |
|
2eca4eb…
|
ragelink
|
1085 |
</tr> |
|
2eca4eb…
|
ragelink
|
1086 |
<tr> |
|
2eca4eb…
|
ragelink
|
1087 |
<td><code>FOSSIL_BASE_URL</code></td> |
|
2eca4eb…
|
ragelink
|
1088 |
<td>--</td> |
|
2eca4eb…
|
ragelink
|
1089 |
<td>Base URL for Fossil web UI (e.g., <code>https://code.example.com</code>)</td> |
|
2eca4eb…
|
ragelink
|
1090 |
</tr> |
|
2eca4eb…
|
ragelink
|
1091 |
<tr> |
|
2eca4eb…
|
ragelink
|
1092 |
<td><code>FOSSIL_BINARY</code></td> |
|
2eca4eb…
|
ragelink
|
1093 |
<td><code>fossil</code></td> |
|
2eca4eb…
|
ragelink
|
1094 |
<td>Path to the Fossil binary</td> |
|
2eca4eb…
|
ragelink
|
1095 |
</tr> |
|
2eca4eb…
|
ragelink
|
1096 |
</tbody> |
|
2eca4eb…
|
ragelink
|
1097 |
</table> |
|
2eca4eb…
|
ragelink
|
1098 |
<h3 id="caddy-production">Caddy (Production)<a class="headerlink" href="#caddy-production" title="Permanent link">¶</a></h3> |
|
2eca4eb…
|
ragelink
|
1099 |
<table> |
|
2eca4eb…
|
ragelink
|
1100 |
<thead> |
|
2eca4eb…
|
ragelink
|
1101 |
<tr> |
|
2eca4eb…
|
ragelink
|
1102 |
<th>Variable</th> |
|
2eca4eb…
|
ragelink
|
1103 |
<th>Default</th> |
|
2eca4eb…
|
ragelink
|
1104 |
<th>Description</th> |
|
2eca4eb…
|
ragelink
|
1105 |
</tr> |
|
2eca4eb…
|
ragelink
|
1106 |
</thead> |
|
2eca4eb…
|
ragelink
|
1107 |
<tbody> |
|
2eca4eb…
|
ragelink
|
1108 |
<tr> |
|
2eca4eb…
|
ragelink
|
1109 |
<td><code>CADDY_DOMAIN</code></td> |
|
2eca4eb…
|
ragelink
|
1110 |
<td>--</td> |
|
2eca4eb…
|
ragelink
|
1111 |
<td>Your domain (e.g., <code>example.com</code>)</td> |
|
2eca4eb…
|
ragelink
|
1112 |
</tr> |
|
2eca4eb…
|
ragelink
|
1113 |
<tr> |
|
2eca4eb…
|
ragelink
|
1114 |
<td><code>CADDY_EMAIL</code></td> |
|
2eca4eb…
|
ragelink
|
1115 |
<td>--</td> |
|
2eca4eb…
|
ragelink
|
1116 |
<td>Email for Let's Encrypt certificates</td> |
|
2eca4eb…
|
ragelink
|
1117 |
</tr> |
|
2eca4eb…
|
ragelink
|
1118 |
</tbody> |
|
2eca4eb…
|
ragelink
|
1119 |
</table> |
|
2eca4eb…
|
ragelink
|
1120 |
<h3 id="litestream-backups">Litestream (Backups)<a class="headerlink" href="#litestream-backups" title="Permanent link">¶</a></h3> |
|
2eca4eb…
|
ragelink
|
1121 |
<table> |
|
2eca4eb…
|
ragelink
|
1122 |
<thead> |
|
2eca4eb…
|
ragelink
|
1123 |
<tr> |
|
2eca4eb…
|
ragelink
|
1124 |
<th>Variable</th> |
|
2eca4eb…
|
ragelink
|
1125 |
<th>Default</th> |
|
2eca4eb…
|
ragelink
|
1126 |
<th>Description</th> |
|
2eca4eb…
|
ragelink
|
1127 |
</tr> |
|
2eca4eb…
|
ragelink
|
1128 |
</thead> |
|
2eca4eb…
|
ragelink
|
1129 |
<tbody> |
|
2eca4eb…
|
ragelink
|
1130 |
<tr> |
|
2eca4eb…
|
ragelink
|
1131 |
<td><code>LITESTREAM_ACCESS_KEY_ID</code></td> |
|
2eca4eb…
|
ragelink
|
1132 |
<td>--</td> |
|
2eca4eb…
|
ragelink
|
1133 |
<td>S3 access key</td> |
|
2eca4eb…
|
ragelink
|
1134 |
</tr> |
|
2eca4eb…
|
ragelink
|
1135 |
<tr> |
|
2eca4eb…
|
ragelink
|
1136 |
<td><code>LITESTREAM_SECRET_ACCESS_KEY</code></td> |
|
2eca4eb…
|
ragelink
|
1137 |
<td>--</td> |
|
2eca4eb…
|
ragelink
|
1138 |
<td>S3 secret key</td> |
|
2eca4eb…
|
ragelink
|
1139 |
</tr> |
|
2eca4eb…
|
ragelink
|
1140 |
<tr> |
|
2eca4eb…
|
ragelink
|
1141 |
<td><code>LITESTREAM_BUCKET</code></td> |
|
2eca4eb…
|
ragelink
|
1142 |
<td>--</td> |
|
2eca4eb…
|
ragelink
|
1143 |
<td>S3 bucket name</td> |
|
2eca4eb…
|
ragelink
|
1144 |
</tr> |
|
2eca4eb…
|
ragelink
|
1145 |
<tr> |
|
2eca4eb…
|
ragelink
|
1146 |
<td><code>LITESTREAM_ENDPOINT</code></td> |
|
2eca4eb…
|
ragelink
|
1147 |
<td>--</td> |
|
2eca4eb…
|
ragelink
|
1148 |
<td>S3 endpoint (for MinIO/B2)</td> |
|
2eca4eb…
|
ragelink
|
1149 |
</tr> |
|
2eca4eb…
|
ragelink
|
1150 |
<tr> |
|
2eca4eb…
|
ragelink
|
1151 |
<td><code>LITESTREAM_REGION</code></td> |
|
2eca4eb…
|
ragelink
|
1152 |
<td><code>us-east-1</code></td> |
|
2eca4eb…
|
ragelink
|
1153 |
<td>S3 region</td> |
|
2eca4eb…
|
ragelink
|
1154 |
</tr> |
|
2eca4eb…
|
ragelink
|
1155 |
</tbody> |
|
2eca4eb…
|
ragelink
|
1156 |
</table> |
|
2eca4eb…
|
ragelink
|
1157 |
<h3 id="sync-bridge">Sync Bridge<a class="headerlink" href="#sync-bridge" title="Permanent link">¶</a></h3> |
|
2eca4eb…
|
ragelink
|
1158 |
<table> |
|
2eca4eb…
|
ragelink
|
1159 |
<thead> |
|
2eca4eb…
|
ragelink
|
1160 |
<tr> |
|
2eca4eb…
|
ragelink
|
1161 |
<th>Variable</th> |
|
2eca4eb…
|
ragelink
|
1162 |
<th>Default</th> |
|
2eca4eb…
|
ragelink
|
1163 |
<th>Description</th> |
|
2eca4eb…
|
ragelink
|
1164 |
</tr> |
|
2eca4eb…
|
ragelink
|
1165 |
</thead> |
|
2eca4eb…
|
ragelink
|
1166 |
<tbody> |
|
2eca4eb…
|
ragelink
|
1167 |
<tr> |
|
2eca4eb…
|
ragelink
|
1168 |
<td><code>GITHUB_TOKEN</code></td> |
|
2eca4eb…
|
ragelink
|
1169 |
<td>--</td> |
|
2eca4eb…
|
ragelink
|
1170 |
<td>GitHub personal access token (for mirroring)</td> |
|
2eca4eb…
|
ragelink
|
1171 |
</tr> |
|
2eca4eb…
|
ragelink
|
1172 |
<tr> |
|
2eca4eb…
|
ragelink
|
1173 |
<td><code>GITLAB_TOKEN</code></td> |
|
2eca4eb…
|
ragelink
|
1174 |
<td>--</td> |
|
2eca4eb…
|
ragelink
|
1175 |
<td>GitLab personal access token (for mirroring)</td> |
|
2eca4eb…
|
ragelink
|
1176 |
</tr> |
|
2eca4eb…
|
ragelink
|
1177 |
</tbody> |
|
2eca4eb…
|
ragelink
|
1178 |
</table> |
|
2eca4eb…
|
ragelink
|
1179 |
<h2 id="caddy-configuration">Caddy Configuration<a class="headerlink" href="#caddy-configuration" title="Permanent link">¶</a></h2> |
|
2eca4eb…
|
ragelink
|
1180 |
<p>The Caddyfile controls SSL termination and subdomain routing. Each Fossil repo gets its own subdomain:</p> |
|
2eca4eb…
|
ragelink
|
1181 |
<div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a>{$CADDY_DOMAIN} { |
|
2eca4eb…
|
ragelink
|
1182 |
<a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a> reverse_proxy django:8000 |
|
2eca4eb…
|
ragelink
|
1183 |
<a id="__codelineno-0-3" name="__codelineno-0-3" href="#__codelineno-0-3"></a>} |
|
2eca4eb…
|
ragelink
|
1184 |
<a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a> |
|
2eca4eb…
|
ragelink
|
1185 |
<a id="__codelineno-0-5" name="__codelineno-0-5" href="#__codelineno-0-5"></a>*.{$CADDY_DOMAIN} { |
|
2eca4eb…
|
ragelink
|
1186 |
<a id="__codelineno-0-6" name="__codelineno-0-6" href="#__codelineno-0-6"></a> reverse_proxy fossil:8080 |
|
2eca4eb…
|
ragelink
|
1187 |
<a id="__codelineno-0-7" name="__codelineno-0-7" href="#__codelineno-0-7"></a>} |
|
2eca4eb…
|
ragelink
|
1188 |
</code></pre></div> |
|
2eca4eb…
|
ragelink
|
1189 |
<p>Caddy automatically provisions Let's Encrypt certificates for all subdomains.</p> |
|
2eca4eb…
|
ragelink
|
1190 |
<h2 id="litestream-configuration">Litestream Configuration<a class="headerlink" href="#litestream-configuration" title="Permanent link">¶</a></h2> |
|
2eca4eb…
|
ragelink
|
1191 |
<p>Litestream continuously replicates every <code>.fossil</code> SQLite file to S3:</p> |
|
2eca4eb…
|
ragelink
|
1192 |
<div class="highlight"><pre><span></span><code><a id="__codelineno-1-1" name="__codelineno-1-1" href="#__codelineno-1-1"></a><span class="nt">dbs</span><span class="p">:</span> |
|
2eca4eb…
|
ragelink
|
1193 |
<a id="__codelineno-1-2" name="__codelineno-1-2" href="#__codelineno-1-2"></a><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">path</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">/data/repos/*.fossil</span> |
|
2eca4eb…
|
ragelink
|
1194 |
<a id="__codelineno-1-3" name="__codelineno-1-3" href="#__codelineno-1-3"></a><span class="w"> </span><span class="nt">replicas</span><span class="p">:</span> |
|
2eca4eb…
|
ragelink
|
1195 |
<a id="__codelineno-1-4" name="__codelineno-1-4" href="#__codelineno-1-4"></a><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">type</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">s3</span> |
|
2eca4eb…
|
ragelink
|
1196 |
<a id="__codelineno-1-5" name="__codelineno-1-5" href="#__codelineno-1-5"></a><span class="w"> </span><span class="nt">bucket</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">${LITESTREAM_BUCKET}</span> |
|
2eca4eb…
|
ragelink
|
1197 |
<a id="__codelineno-1-6" name="__codelineno-1-6" href="#__codelineno-1-6"></a><span class="w"> </span><span class="nt">endpoint</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">${LITESTREAM_ENDPOINT}</span> |
|
2eca4eb…
|
ragelink
|
1198 |
<a id="__codelineno-1-7" name="__codelineno-1-7" href="#__codelineno-1-7"></a><span class="w"> </span><span class="nt">region</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">${LITESTREAM_REGION}</span> |
|
2eca4eb…
|
ragelink
|
1199 |
</code></pre></div> |
|
2eca4eb…
|
ragelink
|
1200 |
<div class="admonition tip"> |
|
2eca4eb…
|
ragelink
|
1201 |
<p class="admonition-title">Point-in-time recovery</p> |
|
2eca4eb…
|
ragelink
|
1202 |
<p>Litestream replicates WAL frames continuously. You can restore any <code>.fossil</code> file to any point in time, not just the latest snapshot.</p> |
|
2eca4eb…
|
ragelink
|
1203 |
</div> |
|
2eca4eb…
|
ragelink
|
1204 |
|
|
2eca4eb…
|
ragelink
|
1205 |
|
|
2eca4eb…
|
ragelink
|
1206 |
|
|
2eca4eb…
|
ragelink
|
1207 |
|
|
2eca4eb…
|
ragelink
|
1208 |
|
|
2eca4eb…
|
ragelink
|
1209 |
|
|
2eca4eb…
|
ragelink
|
1210 |
|
|
2eca4eb…
|
ragelink
|
1211 |
|
|
2eca4eb…
|
ragelink
|
1212 |
|
|
2eca4eb…
|
ragelink
|
1213 |
|
|
2eca4eb…
|
ragelink
|
1214 |
|
|
2eca4eb…
|
ragelink
|
1215 |
|
|
2eca4eb…
|
ragelink
|
1216 |
|
|
2eca4eb…
|
ragelink
|
1217 |
</article> |
|
2eca4eb…
|
ragelink
|
1218 |
</div> |
|
2eca4eb…
|
ragelink
|
1219 |
|
|
2eca4eb…
|
ragelink
|
1220 |
|
|
2eca4eb…
|
ragelink
|
1221 |
<script>var tabs=__md_get("__tabs");if(Array.isArray(tabs))e:for(var set of document.querySelectorAll(".tabbed-set")){var labels=set.querySelector(".tabbed-labels");for(var tab of tabs)for(var label of labels.getElementsByTagName("label"))if(label.innerText.trim()===tab){var input=document.getElementById(label.htmlFor);input.checked=!0;continue e}}</script> |
|
2eca4eb…
|
ragelink
|
1222 |
|
|
2eca4eb…
|
ragelink
|
1223 |
<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script> |
|
2eca4eb…
|
ragelink
|
1224 |
</div> |
|
2eca4eb…
|
ragelink
|
1225 |
|
|
2eca4eb…
|
ragelink
|
1226 |
<button type="button" class="md-top md-icon" data-md-component="top" hidden> |
|
2eca4eb…
|
ragelink
|
1227 |
|
|
2eca4eb…
|
ragelink
|
1228 |
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8z"/></svg> |
|
2eca4eb…
|
ragelink
|
1229 |
Back to top |
|
2eca4eb…
|
ragelink
|
1230 |
</button> |
|
2eca4eb…
|
ragelink
|
1231 |
|
|
2eca4eb…
|
ragelink
|
1232 |
</main> |
|
2eca4eb…
|
ragelink
|
1233 |
|
|
2eca4eb…
|
ragelink
|
1234 |
<footer class="md-footer"> |
|
2eca4eb…
|
ragelink
|
1235 |
|
|
2eca4eb…
|
ragelink
|
1236 |
<div class="md-footer-meta md-typeset"> |
|
2eca4eb…
|
ragelink
|
1237 |
<div class="md-footer-meta__inner md-grid"> |
|
2eca4eb…
|
ragelink
|
1238 |
<div class="md-copyright"> |
|
2eca4eb…
|
ragelink
|
1239 |
|
|
2eca4eb…
|
ragelink
|
1240 |
<div class="md-copyright__highlight"> |
|
2eca4eb…
|
ragelink
|
1241 |
Copyright © 2026 CONFLICT LLC |
|
2eca4eb…
|
ragelink
|
1242 |
</div> |
|
2eca4eb…
|
ragelink
|
1243 |
|
|
2eca4eb…
|
ragelink
|
1244 |
|
|
2eca4eb…
|
ragelink
|
1245 |
Made with |
|
2eca4eb…
|
ragelink
|
1246 |
<a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener"> |
|
2eca4eb…
|
ragelink
|
1247 |
Material for MkDocs |
|
2eca4eb…
|
ragelink
|
1248 |
</a> |
|
2eca4eb…
|
ragelink
|
1249 |
|
|
2eca4eb…
|
ragelink
|
1250 |
</div> |
|
2eca4eb…
|
ragelink
|
1251 |
|
|
2eca4eb…
|
ragelink
|
1252 |
|
|
2eca4eb…
|
ragelink
|
1253 |
<div class="md-social"> |
|
2eca4eb…
|
ragelink
|
1254 |
|
|
2eca4eb…
|
ragelink
|
1255 |
|
|
2eca4eb…
|
ragelink
|
1256 |
|
|
2eca4eb…
|
ragelink
|
1257 |
|
|
2eca4eb…
|
ragelink
|
1258 |
|
|
2eca4eb…
|
ragelink
|
1259 |
|
|
2eca4eb…
|
ragelink
|
1260 |
|
|
2eca4eb…
|
ragelink
|
1261 |
|
|
2eca4eb…
|
ragelink
|
1262 |
<a href="https://github.com/ConflictHQ/fossilrepo" target="_blank" rel="noopener" title="github.com" class="md-social__link"> |
|
2eca4eb…
|
ragelink
|
1263 |
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 7.1.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 2025 Fonticons, Inc.--><path d="M173.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.9M252.8 8C114.1 8 8 113.3 8 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.1C436.2 457.8 504 362.9 504 252 504 113.3 391.5 8 252.8 8M105.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> |
|
2eca4eb…
|
ragelink
|
1264 |
</a> |
|
2eca4eb…
|
ragelink
|
1265 |
|
|
2eca4eb…
|
ragelink
|
1266 |
</div> |
|
2eca4eb…
|
ragelink
|
1267 |
|
|
2eca4eb…
|
ragelink
|
1268 |
</div> |
|
2eca4eb…
|
ragelink
|
1269 |
</div> |
|
2eca4eb…
|
ragelink
|
1270 |
</footer> |
|
2eca4eb…
|
ragelink
|
1271 |
|
|
2eca4eb…
|
ragelink
|
1272 |
</div> |
|
2eca4eb…
|
ragelink
|
1273 |
<div class="md-dialog" data-md-component="dialog"> |
|
2eca4eb…
|
ragelink
|
1274 |
<div class="md-dialog__inner md-typeset"></div> |
|
2eca4eb…
|
ragelink
|
1275 |
</div> |
|
2eca4eb…
|
ragelink
|
1276 |
|
|
2eca4eb…
|
ragelink
|
1277 |
|
|
2eca4eb…
|
ragelink
|
1278 |
|
|
2eca4eb…
|
ragelink
|
1279 |
|
|
2eca4eb…
|
ragelink
|
1280 |
|
|
2eca4eb…
|
ragelink
|
1281 |
<script id="__config" type="application/json">{"annotate": null, "base": "../..", "features": ["navigation.instant", "navigation.tabs", "navigation.sections", "navigation.expand", "navigation.top", "search.suggest", "search.highlight", "content.code.copy", "content.tabs.link", "header.autohide"], "search": "../../assets/javascripts/workers/search.2c215733.min.js", "tags": null, "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"}, "version": null}</script> |
|
2eca4eb…
|
ragelink
|
1282 |
|
|
2eca4eb…
|
ragelink
|
1283 |
|
|
2eca4eb…
|
ragelink
|
1284 |
<script src="../../assets/javascripts/bundle.79ae519e.min.js"></script> |
|
2eca4eb…
|
ragelink
|
1285 |
|
|
2eca4eb…
|
ragelink
|
1286 |
|
|
2eca4eb…
|
ragelink
|
1287 |
</body> |
|
2eca4eb…
|
ragelink
|
1288 |
</html> |