- Реалізація постійних томів у Docker для запобігання втраті даних під час оновлення контейнера.
- Комплексне резервне копіювання файлу webui.db та папки vector_db для збереження чатів та баз знань.
- Безпечна процедура оновлення шляхом завантаження останніх образів та перезапуску служб.

¿Як створити резервну копію та відновити Open WebUI? Якщо ви вирушили в пригоду створення власного штучного інтелекту вдома, ви, мабуть, вже знаєте, що Відкрити веб-інтерфейс та Ollama Вони утворюють непереможну команду. У той час як перший пропонує той самий відшліфований та звичний інтерфейс у стилі ChatGPT, другий — це движок, який забезпечує роботу всього. Підключення Open WebUI до Ollama перенесення моделей на власне обладнання. Чудово мати можливість спілкуватися в чаті, не видаляючи дані з комп’ютера, але, звичайно, настає момент, коли страх втрати історії чату чи налаштувань змушує нас задуматися про як захистити цю інформацію.
Для початківців, особливо в таких середовищах, як macOS Sequoia, контейнери Docker можуть бути дещо заплутаними. Іноді ми бачимо доступне оновлення та панікуємо: якщо я оновлю контейнер, чи будуть видалені мої чати? Коротка відповідь – ні, якщо контейнер Docker налаштовано належним чином. збереження данихУ зв'язку з цим ми крок за кроком розглянемо, як забезпечити безвідмовність вашої конфігурації та як керувати резервними копіями для вашого спокою.
Основа всього: Забезпечення того, щоб дані не випарувалися
Перш ніж обговорювати резервні копії, важливо розуміти, що контейнери Docker за своєю суттю ефемерні. Якщо ви зберігаєте дані в контейнері, його видалення для оновлення версії призведе до видалення всіх даних. Ось чому вкрай важливо використовувати резервні копії. постійні томиЯкщо ви використовували офіційний Docker Compose з репозиторію GitHub, це вже вирішено, але якщо ви створили власний мікс, переконайтеся, що гучність open-webui правильно зіставлено зі шляхом у файловій системі вашого хоста.
Щоб точно дізнатися, де на жорсткому диску знаходяться ваші дані, можна виконати команду docker volume inspect open-webuiЦе надасть вам фактичний шлях на вашому Mac або сервері. Якщо ви бажаєте використовувати пряме прив'язування монтує (фіксовані маршрути, які ви обираєте), важливо записати ці маршрути, оскільки вони будуть головною ціллю будь-якого сценарію резервного копіювання, який ви вирішите реалізувати.

Що саме нам слід підтримувати?
Якщо ми подивимося на папку постійних даних, ми побачимо кілька елементів. Найважливішим є файл webui.db, яка є базою даних SQLite, де зберігається вся історія чату, користувачі та налаштування. Однак це не єдине, що важливо. У нас також є папка uploads/ з файлами, які ми завантажили, та vector_db/, яка містить базу даних ChromaDB, необхідну для правильної роботи RAG (відновлення з доповненою генерацією).
Крім того, ми виявили, audit.log для подій аудиту та папки cache/Для ретельного резервного копіювання ідеально скопіювати весь каталог данихЯкщо ви хочете бути більш вибірковими, ви можете надати пріоритет базі даних та завантаженим документам, але створення повного клону папки persistence – це найпростіший спосіб уникнути неприємних сюрпризів, особливо якщо вам потрібно перенесіть свої чати з ChatGPT до Open WebUI.
Стратегії для ефективного резервного копіювання
Один з найкласичніших та найефективніших способів зробити це – rsyncщо дозволяє дуже швидко створювати інкрементальні резервні копії. Ви можете запланувати завдання переміщення даних на локальний NAS або в хмару (наприклад, S3 або Backblaze B2). Щоб забезпечити узгодженість даних, найкраще виконувати резервне копіювання на холодна файлова системаТобто, шляхом короткочасної зупинки контейнера перед копіюванням, а потім його підняття одразу після цього.
Для більш досвідчених користувачів є такі опції, як використання команди .backup Вбудовані інструменти SQLite можна використовувати для отримання узгодженої копії бази даних без зупинки служби. Також можна використовувати такі інструменти, як [інші інструменти]. borgbackup або resticякі пропонують дедуплікацію та шифрування, додаючи додатковий рівень безпеки вашій конфіденційній інформації.
Як оновити Open WebUI без втрати жодного чату
Коли система сповістить вас про доступність нової версії, не панікуйте. Процес досить простий. Спочатку вам потрібно завантажити останній образ, виконавши команду docker pull ghcr.io/open-webui/open-webui:mainПотім ви зупиняєте та видаляєте поточний контейнер за допомогою docker stop open-webui y docker rm open-webuiЗрештою, ви знову виконуєте команду. docker run оригінал, який ви використовували для його встановлення.
Завдяки тому, що дані зберігаються в том з назвою І не всередині образу програмного забезпечення; новий контейнер одразу розпізнає вашу стару базу даних. Якщо ви використовуєте Docker Compose, процес ще простіший: просто виконайте docker compose pull за ним a docker compose up -d щоб усе оновлювалося автоматично та чисто.
Оптимізація та додаткові функції: RAG, аудіо та MCP
Щоб отримати максимальну віддачу від вашого екземпляра, пам’ятайте, що ви можете покращити свою RAG, завантаживши власні PDF-файли в розділ «Знання». Щоб пришвидшити процес, завантаження шаблону є важливим. nomic-embed-text використання Llama. Якщо ви помітили, що модель стає заплутаною, спробуйте зменшити розмір фрагмента приблизно до 800 токенів, особливо якщо ви використовуєте невеликі моделі, такі як Llama 3.2.
Що стосується голосу, Open WebUI дозволяє інтеграцію Whisper для розпізнавання мовлення та OpenAI TTS або Coqui-TTS для синтезу мовлення. Нарешті, поява Протокол контексту моделі (MCP) Це повністю змінює правила гри, дозволяючи вашому локальному штучному інтелекту взаємодіяти із зовнішніми інструментами, такими як GitHub або Slack, перетворюючи простий чат на... справжній продуктивний помічник.
Підтримка повного контролю над нашим локальним штучним інтелектом передбачає належне управління томами Docker, регулярне резервне копіювання бази даних SQLite та папки векторних даних, а також дотримання правильного процесу оновлення зображень, щоб уникнути порушення цілісності наших розмов та користувацьких конфігурацій.
Захоплювався технікою з дитинства. Я люблю бути в курсі подій у секторі та, перш за все, повідомляти про це. Ось чому я вже багато років присвячую комунікації на веб-сайтах технологій і відеоігор. Ви можете знайти, як я пишу про Android, Windows, MacOS, iOS, Nintendo або будь-яку іншу пов’язану тему, яка спадає вам на думку.
