Halo / Dockerfile
StarrySkyWorld's picture
Update Dockerfile
2a8c4f7 verified
raw
history blame contribute delete
774 Bytes
# 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