BigYellow12138 commited on
Commit
68c365f
·
verified ·
1 Parent(s): 6b4060e

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +8 -9
Dockerfile CHANGED
@@ -4,15 +4,14 @@ FROM qdrant/qdrant:latest
4
  # 2. 切换到 root 用户,以便在构建过程中拥有最高权限
5
  USER root
6
 
7
- # 3. 使用 RUN 指令,在镜像构建阶段就完成以下操作:
8
- # - 创建 /qdrant/storage 目录
9
- # - 将该目录的所有权递归地赋予用户ID 1000 (即 qdrant 用户)
10
- # 这一步创建的文件和权限会固化在新的镜像层中。
11
- RUN mkdir -p /qdrant/storage && chown -R 1000:1000 /qdrant/storage
 
12
 
13
- # 4. 【重要】为了安全,将运行时的用户切换回非 root 的 qdrant 用户 (ID 1000)
14
  USER 1000
15
 
16
- # 此时,我们不需要再修改 CMD ENTRYPOINT。
17
- # 容器启动时,会以用户 1000 的身份执行默认的启动脚本。
18
- # 而它需要写入的 /qdrant/storage 目录,已经在构建时准备好并且权限正确。
 
4
  # 2. 切换到 root 用户,以便在构建过程中拥有最高权限
5
  USER root
6
 
7
+ # 3. 【关键改动】
8
+ # - 创建 /qdrant/storage 和 /qdrant/snapshots 目录 (使用 -p 确保父目录存在)
9
+ # - 将整个 /qdrant 目录(及其所有内容)的所有权递归地赋予用户 1000
10
+ # - 这样,无论是 storage、snapshots 还是未来可能需要的其他子目录,qdrant 用户都有权操作。
11
+ RUN mkdir -p /qdrant/storage /qdrant/snapshots && \
12
+ chown -R 1000:1000 /qdrant
13
 
14
+ # 4. 为了安全,将运行时的用户切换回非 root 的 qdrant 用户 (ID 1000)
15
  USER 1000
16
 
17
+ # 容器启动时,将以拥有 /qdrant 目录完全权限的 qdrant 用户身份运行