背景介绍
许多用户在使用 Docker 部署 INFINI Console(本文使用 1.29.6 版本)时,可能会遇到一个常见问题:重启容器后,之前在 INFINI Console 中所连接的系统集群配置会丢失。这个问题通常源于未能正确配置 Docker 的数据持久化。原本通过 Docker 运行 INFINI Console 只是一个简单的测试示例,并未考虑多次重启使用,现官方文档也进行了更新,参考:容器部署
接下来我们本地测试一下。
理解核心问题:Docker 容器与数据持久化
默认情况下,Docker 容器的文件系统是临时的。当容器被停止并删除后,容器内部所做的任何未被持久化的更改都会丢失。INFINI Console 的配置存储在其容器内部的特定目录中。为了在容器重启或重建后保留这些信息,我们必须将这些关键目录映射到宿主机(你的电脑)上的持久化存储位置。
准备工作
- 操作系统: macOS (本文示例)
- Docker 环境: OrbStack (https://orbstack.dev/) 或 Docker Desktop for Mac。
请确保 Docker 服务已启动并正常运行。你可以通过在终端执行 docker --version 来验证。
docker --version
Docker version 25.0.5, build 5dc9bcc
步骤一:创建本地持久化目录和自定义 Docker 网络
首先,在宿主机上为 Console 和 Easysearch 创建用于存储配置、数据和日志的目录。同时,创建一个自定义 Docker 网络,以便容器之间可以通过名称进行通信。
# 1. 创建项目根目录和各个服务的持久化子目录
mkdir -p ~/infini_manual_setup/console/config ~/infini_manual_setup/console/data ~/infini_manual_setup/console/logs
mkdir -p ~/infini_manual_setup/easysearch/config ~/infini_manual_setup/easysearch/data ~/infini_manual_setup/easysearch/logs
cd ~/infini_manual_setup
# 2. 创建一个自定义的 Docker 桥接网络
docker network create infini_app_net
infini_app_net是我们为这两个容器创建的自定义网络名称。
步骤二:提取初始配置文件
为了方便首次启动和后续自定义,我们需要从

最低0.47元/天 解锁文章

1147

被折叠的 条评论
为什么被折叠?



