Files
OpenArchiver/user-guides/installation.html
2026-03-30 20:29:40 +00:00

67 lines
64 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en-US" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Installation Guide | Open Archiver Docs</title>
<meta name="description" content="Official documentation for the Open Archiver project.">
<meta name="generator" content="VitePress v1.6.4">
<link rel="preload stylesheet" href="/assets/style.BRVqMv4m.css" as="style">
<link rel="preload stylesheet" href="/vp-icons.css" as="style">
<script type="module" src="/assets/app.BneHbokF.js"></script>
<link rel="preload" href="/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin="">
<link rel="modulepreload" href="/assets/chunks/theme.DMwvsXz4.js">
<link rel="modulepreload" href="/assets/chunks/framework.DHqKNX4U.js">
<link rel="modulepreload" href="/assets/user-guides_installation.md.CYbox6PW.lean.js">
<script defer src="https://analytics.openarchiver.com/script.js" data-website-id="2c8b452e-eab5-4f82-8ead-902d8f8b976f"></script>
<link rel="icon" href="/logo-sq.svg">
<script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
<script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
</head>
<body>
<div id="app"><div class="Layout" data-v-6d457d7f><!--[--><!--]--><!--[--><span tabindex="-1" data-v-9f15b6e6></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-9f15b6e6>Skip to content</a><!--]--><!----><header class="VPNav" data-v-6d457d7f data-v-06aeb22c><div class="VPNavBar" data-v-06aeb22c data-v-9f44cfca><div class="wrapper" data-v-9f44cfca><div class="container" data-v-9f44cfca><div class="title" data-v-9f44cfca><div class="VPNavBarTitle has-sidebar" data-v-9f44cfca data-v-cea99ba2><a class="title" href="/" data-v-cea99ba2><!--[--><!--]--><!--[--><img class="VPImage logo" src="/logo-sq.svg" alt data-v-384abc6c><!--]--><span data-v-cea99ba2>Open Archiver Docs</span><!--[--><!--]--></a></div></div><div class="content" data-v-9f44cfca><div class="content-body" data-v-9f44cfca><!--[--><!--]--><div class="VPNavBarSearch search" data-v-9f44cfca><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-9f44cfca data-v-bc890e2b><span id="main-nav-aria-label" class="visually-hidden" data-v-bc890e2b> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/" tabindex="0" data-v-bc890e2b data-v-358f64d2><!--[--><span data-v-358f64d2>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link vp-external-link-icon VPNavBarMenuLink" href="https://github.com/LogicLabs-OU/OpenArchiver" target="_blank" rel="noreferrer" tabindex="0" data-v-bc890e2b data-v-358f64d2><!--[--><span data-v-358f64d2>Github</span><!--]--></a><!--]--><!--[--><a class="VPLink link vp-external-link-icon VPNavBarMenuLink" href="https://openarchiver.com/" target="_blank" rel="noreferrer" tabindex="0" data-v-bc890e2b data-v-358f64d2><!--[--><span data-v-358f64d2>Website</span><!--]--></a><!--]--><!--[--><a class="VPLink link vp-external-link-icon VPNavBarMenuLink" href="https://discord.gg/MTtD7BhuTQ" target="_blank" rel="noreferrer" tabindex="0" data-v-bc890e2b data-v-358f64d2><!--[--><span data-v-358f64d2>Discord</span><!--]--></a><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-9f44cfca data-v-1a8fd632><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-1a8fd632 data-v-77125d61 data-v-44c0c9c3><span class="check" data-v-44c0c9c3><span class="icon" data-v-44c0c9c3><!--[--><span class="vpi-sun sun" data-v-77125d61></span><span class="vpi-moon moon" data-v-77125d61></span><!--]--></span></span></button></div><!----><div class="VPFlyout VPNavBarExtra extra" data-v-9f44cfca data-v-cb22ae83 data-v-ce17dc3c><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-ce17dc3c><span class="vpi-more-horizontal icon" data-v-ce17dc3c></span></button><div class="menu" data-v-ce17dc3c><div class="VPMenu" data-v-ce17dc3c data-v-a0929307><!----><!--[--><!--[--><!----><div class="group" data-v-cb22ae83><div class="item appearance" data-v-cb22ae83><p class="label" data-v-cb22ae83>Appearance</p><div class="appearance-action" data-v-cb22ae83><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-cb22ae83 data-v-77125d61 data-v-44c0c9c3><span class="check" data-v-44c0c9c3><span class="icon" data-v-44c0c9c3><!--[--><span class="vpi-sun sun" data-v-77125d61></span><span class="vpi-moon moon" data-v-77125d61></span><!--]--></span></span></button></div></div></div><!----><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-9f44cfca data-v-42f375ed><span class="container" data-v-42f375ed><span class="top" data-v-42f375ed></span><span class="middle" data-v-42f375ed></span><span class="bottom" data-v-42f375ed></span></span></button></div></div></div></div><div class="divider" data-v-9f44cfca><div class="divider-line" data-v-9f44cfca></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-6d457d7f data-v-e17e33c6><div class="container" data-v-e17e33c6><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-e17e33c6><span class="vpi-align-left menu-icon" data-v-e17e33c6></span><span class="menu-text" data-v-e17e33c6>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-e17e33c6 data-v-bab32157><button data-v-bab32157>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-6d457d7f data-v-91b447a8><div class="curtain" data-v-91b447a8></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-91b447a8><span class="visually-hidden" id="sidebar-aria-label" data-v-91b447a8> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-6b998b36><section class="VPSidebarItem level-0 has-active" data-v-6b998b36 data-v-5f79b55d><div class="item" role="button" tabindex="0" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><h2 class="text" data-v-5f79b55d>User Guides</h2><!----></div><div class="items" data-v-5f79b55d><!--[--><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Get Started</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/user-guides/installation.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Installation</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/user-guides/integrity-check.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Email Integrity Check</p><!--]--></a><!----></div><!----></div><section class="VPSidebarItem level-1 collapsible collapsed is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" tabindex="0" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/user-guides/email-providers/" data-v-5f79b55d><!--[--><h3 class="text" data-v-5f79b55d>Email Providers</h3><!--]--></a><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-5f79b55d><span class="vpi-chevron-right caret-icon" data-v-5f79b55d></span></div></div><div class="items" data-v-5f79b55d><!--[--><div class="VPSidebarItem level-2 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/user-guides/email-providers/imap.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Generic IMAP Server</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/user-guides/email-providers/google-workspace.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Google Workspace</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/user-guides/email-providers/microsoft-365.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Microsoft 365</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/user-guides/email-providers/eml.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>EML Import</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/user-guides/email-providers/pst.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>PST Import</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/user-guides/email-providers/mbox.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Mbox Import</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-1 collapsible collapsed" data-v-5f79b55d data-v-5f79b55d><div class="item" role="button" tabindex="0" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><h3 class="text" data-v-5f79b55d>Settings</h3><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-5f79b55d><span class="vpi-chevron-right caret-icon" data-v-5f79b55d></span></div></div><div class="items" data-v-5f79b55d><!--[--><div class="VPSidebarItem level-2 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/user-guides/settings/system.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>System</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-1 collapsible collapsed" data-v-5f79b55d data-v-5f79b55d><div class="item" role="button" tabindex="0" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><h3 class="text" data-v-5f79b55d>Upgrading and Migration</h3><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-5f79b55d><span class="vpi-chevron-right caret-icon" data-v-5f79b55d></span></div></div><div class="items" data-v-5f79b55d><!--[--><div class="VPSidebarItem level-2 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/user-guides/upgrade-and-migration/upgrade.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Upgrading</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/user-guides/upgrade-and-migration/meilisearch-upgrade.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Meilisearch Upgrade</p><!--]--></a><!----></div><!----></div><!--]--></div></section><!--]--></div></section></div><div class="no-transition group" data-v-6b998b36><section class="VPSidebarItem level-0" data-v-6b998b36 data-v-5f79b55d><div class="item" role="button" tabindex="0" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><h2 class="text" data-v-5f79b55d>API Reference</h2><!----></div><div class="items" data-v-5f79b55d><!--[--><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/api/" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Overview</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/api/authentication.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Authentication</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/api/rate-limiting.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Rate Limiting</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/api/auth.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Auth</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/api/archived-email.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Archived Email</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/api/dashboard.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Dashboard</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/api/ingestion.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Ingestion</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/api/integrity.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Integrity Check</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/api/search.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Search</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/api/storage.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Storage</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/api/upload.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Upload</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/api/jobs.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Jobs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/api/users.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Users</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/api/iam.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>IAM</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/api/api-keys.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>API Keys</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/api/settings.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Settings</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-6b998b36><section class="VPSidebarItem level-0" data-v-6b998b36 data-v-5f79b55d><div class="item" role="button" tabindex="0" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><h2 class="text" data-v-5f79b55d>Services</h2><!----></div><div class="items" data-v-5f79b55d><!--[--><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/services/" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Overview</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/services/storage-service.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>Storage Service</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/services/ocr-service.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>OCR Service</p><!--]--></a><!----></div><!----></div><section class="VPSidebarItem level-1" data-v-5f79b55d data-v-5f79b55d><div class="item" role="button" tabindex="0" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><h3 class="text" data-v-5f79b55d>IAM Service</h3><!----></div><div class="items" data-v-5f79b55d><!--[--><div class="VPSidebarItem level-2 is-link" data-v-5f79b55d data-v-5f79b55d><div class="item" data-v-5f79b55d><div class="indicator" data-v-5f79b55d></div><a class="VPLink link link" href="/services/iam-service/iam-policy.html" data-v-5f79b55d><!--[--><p class="text" data-v-5f79b55d>IAM Policies</p><!--]--></a><!----></div><!----></div><!--]--></div></section><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-6d457d7f data-v-413f3f32><div class="VPDoc has-sidebar has-aside" data-v-413f3f32 data-v-29334b8c><!--[--><!--]--><div class="container" data-v-29334b8c><div class="aside" data-v-29334b8c><div class="aside-curtain" data-v-29334b8c></div><div class="aside-container" data-v-29334b8c><div class="aside-content" data-v-29334b8c><div class="VPDocAside" data-v-29334b8c data-v-0970baee><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-0970baee data-v-1cf7166c><div class="content" data-v-1cf7166c><div class="outline-marker" data-v-1cf7166c></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-1cf7166c>On this page</div><ul class="VPDocOutlineItem root" data-v-1cf7166c data-v-c6ed6775><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-0970baee></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-29334b8c><div class="content-container" data-v-29334b8c><!--[--><!--]--><main class="main" data-v-29334b8c><div style="position:relative;" class="vp-doc _user-guides_installation" data-v-29334b8c><div><h1 id="installation-guide" tabindex="-1">Installation Guide <a class="header-anchor" href="#installation-guide" aria-label="Permalink to &quot;Installation Guide&quot;"></a></h1><p>This guide will walk you through setting up Open Archiver using Docker Compose. This is the recommended method for deploying the application.</p><h2 id="prerequisites" tabindex="-1">Prerequisites <a class="header-anchor" href="#prerequisites" aria-label="Permalink to &quot;Prerequisites&quot;"></a></h2><ul><li><a href="https://docs.docker.com/get-docker/" target="_blank" rel="noreferrer">Docker</a> and <a href="https://docs.docker.com/compose/install/" target="_blank" rel="noreferrer">Docker Compose</a> installed on your server or local machine.</li><li>A server or local machine with at least 4GB of RAM (2GB of RAM if you use external Postgres, Redis (Valkey) and Meilisearch instances).</li><li><a href="https://git-scm.com/book/en/v2/Getting-Started-Installing-Git" target="_blank" rel="noreferrer">Git</a> installed on your server or local machine.</li></ul><h2 id="_1-clone-the-repository" tabindex="-1">1. Clone the Repository <a class="header-anchor" href="#_1-clone-the-repository" aria-label="Permalink to &quot;1. Clone the Repository&quot;"></a></h2><p>First, clone the Open Archiver repository to your machine:</p><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">git</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> clone</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> https://github.com/LogicLabs-OU/OpenArchiver.git</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">cd</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> OpenArchiver</span></span></code></pre></div><h2 id="_2-create-a-directory-for-local-storage-important" tabindex="-1">2. Create a Directory for Local Storage (Important) <a class="header-anchor" href="#_2-create-a-directory-for-local-storage-important" aria-label="Permalink to &quot;2. Create a Directory for Local Storage (Important)&quot;"></a></h2><p>Before configuring the application, you <strong>must</strong> create a directory on your host machine where Open Archiver will store its data (such as emails and attachments). Manually creating this directory helps prevent potential permission issues.</p><p>Foe examples, you can use this path <code>/var/data/open-archiver</code>.</p><p>Run the following commands to create the directory and set the correct permissions:</p><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mkdir</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -p</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /var/data/open-archiver</span></span>
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> chown</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -R</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> $(</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">id</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -u</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">$(</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">id</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -g</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">/var/data/open-archiver</span></span></code></pre></div><p>This ensures the directory is owned by your current user, which is necessary for the application to have write access. You will set this path in your <code>.env</code> file in the next step.</p><h2 id="_3-configure-your-environment" tabindex="-1">3. Configure Your Environment <a class="header-anchor" href="#_3-configure-your-environment" aria-label="Permalink to &quot;3. Configure Your Environment&quot;"></a></h2><p>The application is configured using environment variables. You&#39;ll need to create a <code>.env</code> file to store your configuration.</p><p>Copy the example environment file for Docker:</p><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">cp</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> .env.example.docker</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> .env</span></span></code></pre></div><p>Now, open the <code>.env</code> file in a text editor and customize the settings.</p><h3 id="key-configuration-steps" tabindex="-1">Key Configuration Steps <a class="header-anchor" href="#key-configuration-steps" aria-label="Permalink to &quot;Key Configuration Steps&quot;"></a></h3><ol><li><p><strong>Set the Storage Path</strong>: Find the <code>STORAGE_LOCAL_ROOT_PATH</code> variable and set it to the path you just created.</p><div class="language-env vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">env</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span>STORAGE_LOCAL_ROOT_PATH=/var/data/open-archiver</span></span></code></pre></div></li><li><p><strong>Secure Your Instance</strong>: You must change the following placeholder values to secure your instance:</p></li></ol><ul><li><code>POSTGRES_PASSWORD</code>: A strong, unique password for the database.</li><li><code>REDIS_PASSWORD</code>: A strong, unique password for the Valkey/Redis service.</li><li><code>MEILI_MASTER_KEY</code>: A complex key for Meilisearch.</li><li><code>JWT_SECRET</code>: A long, random string for signing authentication tokens.</li><li><code>ENCRYPTION_KEY</code>: A 32-byte hex string for encrypting sensitive data in the database. You can generate one with the following command:<div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">openssl</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> rand</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -hex</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 32</span></span></code></pre></div></li><li><code>STORAGE_ENCRYPTION_KEY</code>: <strong>(Optional but Recommended)</strong> A 32-byte hex string for encrypting emails and attachments at rest. If this key is not provided, storage encryption will be disabled. You can generate one with:<div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">openssl</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> rand</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -hex</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 32</span></span></code></pre></div></li></ul><h3 id="storage-configuration" tabindex="-1">Storage Configuration <a class="header-anchor" href="#storage-configuration" aria-label="Permalink to &quot;Storage Configuration&quot;"></a></h3><p>By default, the Docker Compose setup uses local filesystem storage, which is persisted using a Docker volume named <code>archiver-data</code>. This is suitable for most use cases.</p><p>If you want to use S3-compatible object storage, change the <code>STORAGE_TYPE</code> to <code>s3</code> and fill in your S3 credentials (<code>STORAGE_S3_*</code> variables). When <code>STORAGE_TYPE</code> is set to <code>local</code>, the S3-related variables are not required.</p><h3 id="using-external-services" tabindex="-1">Using External Services <a class="header-anchor" href="#using-external-services" aria-label="Permalink to &quot;Using External Services&quot;"></a></h3><p>For convenience, the <code>docker-compose.yml</code> file includes services for PostgreSQL, Valkey (Redis), and Meilisearch. However, you can use your own external or managed instances for these services.</p><p>To do so:</p><ol><li><strong>Update your <code>.env</code> file</strong>: Change the host, port, and credential variables to point to your external service instances. For example, you would update <code>DATABASE_URL</code>, <code>REDIS_HOST</code>, and <code>MEILI_HOST</code>.</li><li><strong>Modify <code>docker-compose.yml</code></strong>: Remove or comment out the service definitions for <code>postgres</code>, <code>valkey</code>, and <code>meilisearch</code> from your <code>docker-compose.yml</code> file.</li></ol><p>This will configure the Open Archiver application to connect to your services instead of starting the default ones.</p><h3 id="environment-variable-reference" tabindex="-1">Environment Variable Reference <a class="header-anchor" href="#environment-variable-reference" aria-label="Permalink to &quot;Environment Variable Reference&quot;"></a></h3><p>Here is a complete list of environment variables available for configuration:</p><h4 id="application-settings" tabindex="-1">Application Settings <a class="header-anchor" href="#application-settings" aria-label="Permalink to &quot;Application Settings&quot;"></a></h4><table tabindex="0"><thead><tr><th>Variable</th><th>Description</th><th>Default Value</th></tr></thead><tbody><tr><td><code>NODE_ENV</code></td><td>The application environment.</td><td><code>development</code></td></tr><tr><td><code>PORT_BACKEND</code></td><td>The port for the backend service.</td><td><code>4000</code></td></tr><tr><td><code>PORT_FRONTEND</code></td><td>The port for the frontend service.</td><td><code>3000</code></td></tr><tr><td><code>APP_URL</code></td><td>The public-facing URL of your application. This is used by the backend to configure CORS.</td><td><code>http://localhost:3000</code></td></tr><tr><td><code>ORIGIN</code></td><td>Used by the SvelteKit Node adapter to determine the server&#39;s public-facing URL. It should always be set to the value of <code>APP_URL</code> (e.g., <code>ORIGIN=$APP_URL</code>).</td><td><code>http://localhost:3000</code></td></tr><tr><td><code>SYNC_FREQUENCY</code></td><td>The frequency of continuous email syncing. See <a href="https://crontab.guru/" target="_blank" rel="noreferrer">cron syntax</a> for more details.</td><td><code>* * * * *</code></td></tr><tr><td><code>ALL_INCLUSIVE_ARCHIVE</code></td><td>Set to <code>true</code> to include all emails, including Junk and Trash folders, in the email archive.</td><td><code>false</code></td></tr></tbody></table><h4 id="docker-compose-service-configuration" tabindex="-1">Docker Compose Service Configuration <a class="header-anchor" href="#docker-compose-service-configuration" aria-label="Permalink to &quot;Docker Compose Service Configuration&quot;"></a></h4><p>These variables are used by <code>docker-compose.yml</code> to configure the services.</p><table tabindex="0"><thead><tr><th>Variable</th><th>Description</th><th>Default Value</th></tr></thead><tbody><tr><td><code>POSTGRES_DB</code></td><td>The name of the PostgreSQL database.</td><td><code>open_archive</code></td></tr><tr><td><code>POSTGRES_USER</code></td><td>The username for the PostgreSQL database.</td><td><code>admin</code></td></tr><tr><td><code>POSTGRES_PASSWORD</code></td><td>The password for the PostgreSQL database.</td><td><code>password</code></td></tr><tr><td><code>DATABASE_URL</code></td><td>The connection URL for the PostgreSQL database.</td><td><code>postgresql://admin:password@postgres:5432/open_archive</code></td></tr><tr><td><code>MEILI_MASTER_KEY</code></td><td>The master key for Meilisearch.</td><td><code>aSampleMasterKey</code></td></tr><tr><td><code>MEILI_HOST</code></td><td>The host for the Meilisearch service.</td><td><code>http://meilisearch:7700</code></td></tr><tr><td><code>MEILI_INDEXING_BATCH</code></td><td>The number of emails to batch together for indexing.</td><td><code>500</code></td></tr><tr><td><code>REDIS_HOST</code></td><td>The host for the Valkey (Redis) service.</td><td><code>valkey</code></td></tr><tr><td><code>REDIS_PORT</code></td><td>The port for the Valkey (Redis) service.</td><td><code>6379</code></td></tr><tr><td><code>REDIS_USER</code></td><td>Optional Redis username if ACLs are used.</td><td></td></tr><tr><td><code>REDIS_PASSWORD</code></td><td>The password for the Valkey (Redis) service.</td><td><code>defaultredispassword</code></td></tr><tr><td><code>REDIS_TLS_ENABLED</code></td><td>Enable or disable TLS for Redis.</td><td><code>false</code></td></tr></tbody></table><h4 id="storage-settings" tabindex="-1">Storage Settings <a class="header-anchor" href="#storage-settings" aria-label="Permalink to &quot;Storage Settings&quot;"></a></h4><table tabindex="0"><thead><tr><th>Variable</th><th>Description</th><th>Default Value</th></tr></thead><tbody><tr><td><code>STORAGE_TYPE</code></td><td>The storage backend to use (<code>local</code> or <code>s3</code>).</td><td><code>local</code></td></tr><tr><td><code>BODY_SIZE_LIMIT</code></td><td>The maximum request body size for uploads. Can be a number in bytes or a string with a unit (e.g., <code>100M</code>).</td><td><code>100M</code></td></tr><tr><td><code>STORAGE_LOCAL_ROOT_PATH</code></td><td>The root path for Open Archiver app data.</td><td><code>/var/data/open-archiver</code></td></tr><tr><td><code>STORAGE_S3_ENDPOINT</code></td><td>The endpoint for S3-compatible storage (required if <code>STORAGE_TYPE</code> is <code>s3</code>).</td><td></td></tr><tr><td><code>STORAGE_S3_BUCKET</code></td><td>The bucket name for S3-compatible storage (required if <code>STORAGE_TYPE</code> is <code>s3</code>).</td><td></td></tr><tr><td><code>STORAGE_S3_ACCESS_KEY_ID</code></td><td>The access key ID for S3-compatible storage (required if <code>STORAGE_TYPE</code> is <code>s3</code>).</td><td></td></tr><tr><td><code>STORAGE_S3_SECRET_ACCESS_KEY</code></td><td>The secret access key for S3-compatible storage (required if <code>STORAGE_TYPE</code> is <code>s3</code>).</td><td></td></tr><tr><td><code>STORAGE_S3_REGION</code></td><td>The region for S3-compatible storage (required if <code>STORAGE_TYPE</code> is <code>s3</code>).</td><td></td></tr><tr><td><code>STORAGE_S3_FORCE_PATH_STYLE</code></td><td>Force path-style addressing for S3 (optional).</td><td><code>false</code></td></tr><tr><td><code>STORAGE_ENCRYPTION_KEY</code></td><td>A 32-byte hex string for AES-256 encryption of files at rest. If not set, files will not be encrypted.</td><td></td></tr></tbody></table><h4 id="security-authentication" tabindex="-1">Security &amp; Authentication <a class="header-anchor" href="#security-authentication" aria-label="Permalink to &quot;Security &amp; Authentication&quot;"></a></h4><table tabindex="0"><thead><tr><th>Variable</th><th>Description</th><th>Default Value</th></tr></thead><tbody><tr><td><code>ENABLE_DELETION</code></td><td>Enable or disable deletion of emails and ingestion sources. If this option is not set, or is set to any value other than <code>true</code>, deletion will be disabled for the entire instance.</td><td><code>false</code></td></tr><tr><td><code>JWT_SECRET</code></td><td>A secret key for signing JWT tokens.</td><td><code>a-very-secret-key-that-you-should-change</code></td></tr><tr><td><code>JWT_EXPIRES_IN</code></td><td>The expiration time for JWT tokens.</td><td><code>7d</code></td></tr><tr><td><s><code>SUPER_API_KEY</code></s> (Deprecated)</td><td>An API key with super admin privileges. (The SUPER_API_KEY is deprecated since v0.3.0 after we roll out the role-based access control system.)</td><td></td></tr><tr><td><code>RATE_LIMIT_WINDOW_MS</code></td><td>The window in milliseconds for which API requests are checked.</td><td><code>900000</code> (15 minutes)</td></tr><tr><td><code>RATE_LIMIT_MAX_REQUESTS</code></td><td>The maximum number of API requests allowed from an IP within the window.</td><td><code>100</code></td></tr><tr><td><code>ENCRYPTION_KEY</code></td><td>A 32-byte hex string for encrypting sensitive data in the database.</td><td></td></tr></tbody></table><h4 id="apache-tika-integration" tabindex="-1">Apache Tika Integration <a class="header-anchor" href="#apache-tika-integration" aria-label="Permalink to &quot;Apache Tika Integration&quot;"></a></h4><table tabindex="0"><thead><tr><th>Variable</th><th>Description</th><th>Default Value</th></tr></thead><tbody><tr><td><code>TIKA_URL</code></td><td>Optional. The URL of an Apache Tika server for advanced text extraction from attachments. If not set, the application falls back to built-in parsers for PDF, Word, and Excel files.</td><td><code>http://tika:9998</code></td></tr></tbody></table><h2 id="_4-run-the-application" tabindex="-1">4. Run the Application <a class="header-anchor" href="#_4-run-the-application" aria-label="Permalink to &quot;4. Run the Application&quot;"></a></h2><p>Once you have configured your <code>.env</code> file, you can start all the services using Docker Compose:</p><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">docker</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> compose</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> up</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -d</span></span></code></pre></div><p>This command will:</p><ul><li>Pull the required Docker images for the frontend, backend, database, and other services.</li><li>Create and start the containers in the background (<code>-d</code> flag).</li><li>Create the persistent volumes for your data.</li></ul><p>You can check the status of the running containers with:</p><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">docker</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> compose</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> ps</span></span></code></pre></div><h2 id="_5-access-the-application" tabindex="-1">5. Access the Application <a class="header-anchor" href="#_5-access-the-application" aria-label="Permalink to &quot;5. Access the Application&quot;"></a></h2><p>Once the services are running, you can access the Open Archiver web interface by navigating to <code>http://localhost:3000</code> in your web browser.</p><p>Upon first visit, you will be redirected to the <code>/setup</code> page where you can set up your admin account. Make sure you are the first person who accesses the instance.</p><p>If you are not redirected to the <code>/setup</code> page but instead see the login page, there might be something wrong with the database. Restart the service and try again.</p><h2 id="_6-next-steps" tabindex="-1">6. Next Steps <a class="header-anchor" href="#_6-next-steps" aria-label="Permalink to &quot;6. Next Steps&quot;"></a></h2><p>After successfully deploying and logging into Open Archiver, the next step is to configure your ingestion sources to start archiving emails.</p><ul><li><a href="./email-providers/google-workspace.html">Connecting to Google Workspace</a></li><li><a href="./email-providers/microsoft-365.html">Connecting to Microsoft 365</a></li><li><a href="./email-providers/imap.html">Connecting to a Generic IMAP Server</a></li></ul><h2 id="updating-your-installation" tabindex="-1">Updating Your Installation <a class="header-anchor" href="#updating-your-installation" aria-label="Permalink to &quot;Updating Your Installation&quot;"></a></h2><p>To update your Open Archiver instance to the latest version, run the following commands:</p><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># Pull the latest changes from the repository</span></span>
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">git</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> pull</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># Pull the latest Docker images</span></span>
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">docker</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> compose</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> pull</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># Restart the services with the new images</span></span>
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">docker</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> compose</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> up</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -d</span></span></code></pre></div><h2 id="deploying-on-coolify" tabindex="-1">Deploying on Coolify <a class="header-anchor" href="#deploying-on-coolify" aria-label="Permalink to &quot;Deploying on Coolify&quot;"></a></h2><p>If you are deploying Open Archiver on <a href="https://coolify.io/" target="_blank" rel="noreferrer">Coolify</a>, it is recommended to let Coolify manage the Docker networks for you. This can help avoid potential routing conflicts and simplify your setup.</p><p>To do this, you will need to make a small modification to your <code>docker-compose.yml</code> file.</p><h3 id="modify-docker-compose-yml-for-coolify" tabindex="-1">Modify <code>docker-compose.yml</code> for Coolify <a class="header-anchor" href="#modify-docker-compose-yml-for-coolify" aria-label="Permalink to &quot;Modify `docker-compose.yml` for Coolify&quot;"></a></h3><ol><li><p><strong>Open your <code>docker-compose.yml</code> file</strong> in a text editor.</p></li><li><p><strong>Remove all <code>networks</code> sections</strong> from the file. This includes the network configuration for each service and the top-level network definition.</p><p>Specifically, you need to remove:</p><ul><li>The <code>networks: - open-archiver-net</code> lines from the <code>open-archiver</code>, <code>postgres</code>, <code>valkey</code>, and <code>meilisearch</code> services.</li><li>The entire <code>networks:</code> block at the end of the file.</li></ul><p>Here is an example of what to remove from a service:</p><div class="language-diff vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">diff</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">services:</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> open-archiver:</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> image: logiclabshq/open-archiver:latest</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> # ... other settings</span></span>
<span class="line"><span style="--shiki-light:#B31D28;--shiki-dark:#FDAEB7;">- networks:</span></span>
<span class="line"><span style="--shiki-light:#B31D28;--shiki-dark:#FDAEB7;">- - open-archiver-net</span></span></code></pre></div><p>And remove this entire block from the end of the file:</p><div class="language-diff vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">diff</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#B31D28;--shiki-dark:#FDAEB7;">- networks:</span></span>
<span class="line"><span style="--shiki-light:#B31D28;--shiki-dark:#FDAEB7;">- open-archiver-net:</span></span>
<span class="line"><span style="--shiki-light:#B31D28;--shiki-dark:#FDAEB7;">- driver: bridge</span></span></code></pre></div></li><li><p><strong>Save the modified <code>docker-compose.yml</code> file.</strong></p></li></ol><p>By removing these sections, you allow Coolify to automatically create and manage the necessary networks, ensuring that all services can communicate with each other and are correctly exposed through Coolify&#39;s reverse proxy.</p><p>After making these changes, you can proceed with deploying your application on Coolify as you normally would.</p><h2 id="where-is-my-data-stored-when-using-local-storage-and-docker" tabindex="-1">Where is my data stored (When using local storage and Docker)? <a class="header-anchor" href="#where-is-my-data-stored-when-using-local-storage-and-docker" aria-label="Permalink to &quot;Where is my data stored (When using local storage and Docker)?&quot;"></a></h2><p>If you are using local storage to store your emails, based on your <code>docker-compose.yml</code> file, your data is being stored in what&#39;s called a &quot;named volume&quot; (<code>archiver-data</code>). That&#39;s why you&#39;re not seeing the files in the <code>./data/open-archiver</code> directory you created.</p><ol><li><strong>List all Docker volumes</strong>:</li></ol><p>Run this command to see all the volumes on your system:</p><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">docker</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> volume</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> ls</span></span></code></pre></div><ol start="2"><li><strong>Identify the correct volume</strong>:</li></ol><p>Look through the list for a volume name that ends with <code>_archiver-data</code>. The part before that will be your project&#39;s directory name. For example, if your project is in a folder named <code>OpenArchiver</code>, the volume will be <code>openarchiver_archiver-data</code> But it can be a randomly generated hash.</p><ol start="3"><li><strong>Inspect the correct volume</strong>:</li></ol><p>Once you&#39;ve identified the correct volume name, use it in the <code>inspect</code> command. For example:</p><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">docker</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> volume</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> inspect</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> &lt;</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">your_volume_name_her</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">e</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">&gt;</span></span></code></pre></div><p>This will give you the correct <code>Mountpoint</code> path where your data is being stored. It will look something like this (the exact path will vary depending on your system):</p><div class="language-json vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;CreatedAt&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;2025-07-25T11:22:19Z&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;Driver&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;local&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;Labels&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: {</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;com.docker.compose.config-hash&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;---&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;com.docker.compose.project&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;---&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;com.docker.compose.version&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;2.38.2&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;com.docker.compose.volume&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;us8wwos0o4ok4go4gc8cog84_archiver-data&quot;</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> },</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;Mountpoint&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;/var/lib/docker/volumes/us8wwos0o4ok4go4gc8cog84_archiver-data/_data&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;Name&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;us8wwos0o4ok4go4gc8cog84_archiver-data&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;Options&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">null</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;Scope&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;local&quot;</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div><p>In this example, the data is located at <code>/var/lib/docker/volumes/us8wwos0o4ok4go4gc8cog84_archiver-data/_data</code>. You can then <code>cd</code> into that directory to see your files.</p><h3 id="to-save-data-to-a-specific-folder" tabindex="-1">To save data to a specific folder <a class="header-anchor" href="#to-save-data-to-a-specific-folder" aria-label="Permalink to &quot;To save data to a specific folder&quot;"></a></h3><p>To save the data to a specific folder on your machine, you&#39;ll need to make a change to your <code>docker-compose.yml</code>. You need to switch from a named volume to a &quot;bind mount&quot;.</p><p>Heres how you can do it:</p><ol><li><strong>Edit <code>docker-compose.yml</code></strong>:</li></ol><p>Open the <code>docker-compose.yml</code> file and find the <code>open-archiver</code> service. You&#39;re going to change the <code>volumes</code> section.</p><p><strong>Change this:</strong></p><div class="language-yaml vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">yaml</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;">services</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
<span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;"> open-archiver</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # ... other config</span></span>
<span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;"> volumes</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> - </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">archiver-data:/var/data/open-archiver</span></span></code></pre></div><p><strong>To this:</strong></p><div class="language-yaml vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">yaml</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;">services</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
<span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;"> open-archiver</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # ... other config</span></span>
<span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;"> volumes</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> - </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">./data/open-archiver:/var/data/open-archiver</span></span></code></pre></div><p>You&#39;ll also want to remove the <code>archiver-data</code> volume definition at the bottom of the file, since it&#39;s no longer needed.</p><p><strong>Remove this whole block:</strong></p><div class="language-yaml vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">yaml</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;">volumes</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # ... other volumes</span></span>
<span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;"> archiver-data</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
<span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;"> driver</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">local</span></span></code></pre></div><ol start="2"><li><strong>Restart your containers</strong>:</li></ol><p>After you&#39;ve saved the changes, run the following command in your terminal to apply them. The <code>--force-recreate</code> flag will ensure the container is recreated with the new volume settings.</p><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">docker-compose</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> up</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -d</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --force-recreate</span></span></code></pre></div><p>After this, any new data will be saved directly into the <code>./data/open-archiver</code> folder in your project directory.</p></div></div></main><footer class="VPDocFooter" data-v-29334b8c data-v-a014c1de><!--[--><!--]--><!----><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-a014c1de><span class="visually-hidden" id="doc-footer-aria-label" data-v-a014c1de>Pager</span><div class="pager" data-v-a014c1de><a class="VPLink link pager-link prev" href="/" data-v-a014c1de><!--[--><span class="desc" data-v-a014c1de>Previous page</span><span class="title" data-v-a014c1de>Get Started</span><!--]--></a></div><div class="pager" data-v-a014c1de><a class="VPLink link pager-link next" href="/user-guides/integrity-check.html" data-v-a014c1de><!--[--><span class="desc" data-v-a014c1de>Next page</span><span class="title" data-v-a014c1de>Email Integrity Check</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><!----><!--[--><!--]--></div></div>
<script>window.__VP_HASH_MAP__=JSON.parse("{\"api_api-keys.md\":\"Dn21HeSJ\",\"api_archived-email.md\":\"BT-mHBqK\",\"api_auth.md\":\"D-468dKx\",\"api_authentication.md\":\"3ZX-rlxc\",\"api_dashboard.md\":\"CSiI_2IK\",\"api_iam.md\":\"B5FbdpjA\",\"api_index.md\":\"B_r30QlK\",\"api_ingestion.md\":\"D362LBU_\",\"api_integrity.md\":\"B9VpMKD6\",\"api_jobs.md\":\"CTasZcNL\",\"api_rate-limiting.md\":\"BqhkXaUd\",\"api_search.md\":\"Cu20yO7t\",\"api_settings.md\":\"CwhPvkZf\",\"api_storage.md\":\"CTn9PQaD\",\"api_upload.md\":\"CfCXTOWM\",\"api_users.md\":\"BdQul9nH\",\"enterprise_audit-log_api.md\":\"jQPQ8cO8\",\"enterprise_audit-log_audit-service.md\":\"D9higq7j\",\"enterprise_audit-log_guide.md\":\"DuHTEaId\",\"enterprise_audit-log_index.md\":\"By894rqA\",\"enterprise_legal-holds_api.md\":\"E6pKaGoK\",\"enterprise_legal-holds_guide.md\":\"4JCnApXO\",\"enterprise_legal-holds_index.md\":\"CXivackd\",\"enterprise_retention-labels_api.md\":\"De0lRuGD\",\"enterprise_retention-labels_automated-tagging.md\":\"uMCViAe6\",\"enterprise_retention-labels_guide.md\":\"LMnSU6ly\",\"enterprise_retention-labels_index.md\":\"gaps1eMo\",\"enterprise_retention-policy_api.md\":\"Dv1_ca5K\",\"enterprise_retention-policy_guide.md\":\"BxhZekoC\",\"enterprise_retention-policy_index.md\":\"C_qinQpQ\",\"enterprise_retention-policy_lifecycle-worker.md\":\"CLFQ4ZEf\",\"enterprise_retention-policy_retention-service.md\":\"0HsJnlOP\",\"index.md\":\"ChFzL1lA\",\"services_iam-service_iam-policy.md\":\"DSOajx7I\",\"services_index.md\":\"BmWnT3gS\",\"services_job-queue.md\":\"_FwJJttJ\",\"services_ocr-service.md\":\"B6-nFSTJ\",\"services_storage-service.md\":\"Bpdj_lG7\",\"summary.md\":\"C_r3wuBH\",\"user-guides_email-providers_eml.md\":\"DV6Zs6RI\",\"user-guides_email-providers_google-workspace.md\":\"CaNRUOL2\",\"user-guides_email-providers_imap.md\":\"CQ8xQOnx\",\"user-guides_email-providers_index.md\":\"D2pQ89-G\",\"user-guides_email-providers_mbox.md\":\"B68Wejyx\",\"user-guides_email-providers_merging-sources.md\":\"D0DI--4D\",\"user-guides_email-providers_microsoft-365.md\":\"BNGY0WTw\",\"user-guides_email-providers_pst.md\":\"Dech_zDS\",\"user-guides_installation.md\":\"CYbox6PW\",\"user-guides_integrity-check.md\":\"BfM1nsWe\",\"user-guides_settings_system.md\":\"BI9F6Lpw\",\"user-guides_troubleshooting_cors-errors.md\":\"wu2DtNUw\",\"user-guides_upgrade-and-migration_meilisearch-upgrade.md\":\"BTQMSseX\",\"user-guides_upgrade-and-migration_upgrade.md\":\"DlOu8Pon\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"Open Archiver Docs\",\"description\":\"Official documentation for the Open Archiver project.\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"search\":{\"provider\":\"local\"},\"logo\":{\"src\":\"/logo-sq.svg\"},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Github\",\"link\":\"https://github.com/LogicLabs-OU/OpenArchiver\"},{\"text\":\"Website\",\"link\":\"https://openarchiver.com/\"},{\"text\":\"Discord\",\"link\":\"https://discord.gg/MTtD7BhuTQ\"}],\"sidebar\":[{\"text\":\"User Guides\",\"items\":[{\"text\":\"Get Started\",\"link\":\"/\"},{\"text\":\"Installation\",\"link\":\"/user-guides/installation\"},{\"text\":\"Email Integrity Check\",\"link\":\"/user-guides/integrity-check\"},{\"text\":\"Email Providers\",\"link\":\"/user-guides/email-providers/\",\"collapsed\":true,\"items\":[{\"text\":\"Generic IMAP Server\",\"link\":\"/user-guides/email-providers/imap\"},{\"text\":\"Google Workspace\",\"link\":\"/user-guides/email-providers/google-workspace\"},{\"text\":\"Microsoft 365\",\"link\":\"/user-guides/email-providers/microsoft-365\"},{\"text\":\"EML Import\",\"link\":\"/user-guides/email-providers/eml\"},{\"text\":\"PST Import\",\"link\":\"/user-guides/email-providers/pst\"},{\"text\":\"Mbox Import\",\"link\":\"/user-guides/email-providers/mbox\"}]},{\"text\":\"Settings\",\"collapsed\":true,\"items\":[{\"text\":\"System\",\"link\":\"/user-guides/settings/system\"}]},{\"text\":\"Upgrading and Migration\",\"collapsed\":true,\"items\":[{\"text\":\"Upgrading\",\"link\":\"/user-guides/upgrade-and-migration/upgrade\"},{\"text\":\"Meilisearch Upgrade\",\"link\":\"/user-guides/upgrade-and-migration/meilisearch-upgrade\"}]}]},{\"text\":\"API Reference\",\"items\":[{\"text\":\"Overview\",\"link\":\"/api/\"},{\"text\":\"Authentication\",\"link\":\"/api/authentication\"},{\"text\":\"Rate Limiting\",\"link\":\"/api/rate-limiting\"},{\"text\":\"Auth\",\"link\":\"/api/auth\"},{\"text\":\"Archived Email\",\"link\":\"/api/archived-email\"},{\"text\":\"Dashboard\",\"link\":\"/api/dashboard\"},{\"text\":\"Ingestion\",\"link\":\"/api/ingestion\"},{\"text\":\"Integrity Check\",\"link\":\"/api/integrity\"},{\"text\":\"Search\",\"link\":\"/api/search\"},{\"text\":\"Storage\",\"link\":\"/api/storage\"},{\"text\":\"Upload\",\"link\":\"/api/upload\"},{\"text\":\"Jobs\",\"link\":\"/api/jobs\"},{\"text\":\"Users\",\"link\":\"/api/users\"},{\"text\":\"IAM\",\"link\":\"/api/iam\"},{\"text\":\"API Keys\",\"link\":\"/api/api-keys\"},{\"text\":\"Settings\",\"link\":\"/api/settings\"}]},{\"text\":\"Services\",\"items\":[{\"text\":\"Overview\",\"link\":\"/services/\"},{\"text\":\"Storage Service\",\"link\":\"/services/storage-service\"},{\"text\":\"OCR Service\",\"link\":\"/services/ocr-service\"},{\"text\":\"IAM Service\",\"items\":[{\"text\":\"IAM Policies\",\"link\":\"/services/iam-service/iam-policy\"}]}]}]},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":false}");</script>
</body>
</html>