Spaces:
Sleeping
Sleeping
| # 1. 基础镜像 | |
| FROM registry.fit2cloud.com/halo/halo-pro:2.21 | |
| # 2. 关键步骤:以 ROOT 身份预先创建目录并授权 | |
| # 必须先用 root 做这件事,因为 /data (在构建时) 对普通用户是只读的 | |
| USER root | |
| # 创建我们将要使用的工作目录 | |
| RUN mkdir -p /data/blog | |
| # 将该目录的所有权移交给用户 1000 (halo) | |
| # 这一步至关重要,否则切换用户后还是写不进去 | |
| RUN chown -R 1000:1000 /data/blog | |
| # 3. 设置环境变量 | |
| # 告诉 Halo 你的工作目录是刚才创建的那个 | |
| ENV HALO_WORK_DIR=/data/blog | |
| # 设置 HOME 目录,防止部分缓存文件写错地方 | |
| ENV HOME=/data/blog | |
| # 内存限制 | |
| ENV JVM_OPTS="-Xmx256m -Xms256m" | |
| # 4. 暴露端口 | |
| EXPOSE 8090 | |
| # 5. 最后切换到普通用户运行 | |
| USER 1000 | |