diff --git a/deploy/docker-compose.yml b/deploy/docker-compose.yml index 2ce1fbb07..098a4811e 100644 --- a/deploy/docker-compose.yml +++ b/deploy/docker-compose.yml @@ -107,7 +107,7 @@ services: image: ${IMAGE_REPOSITORY}/file:${IMAGE_TAG} container_name: firstleg-${DEPLOY_ENV:-test}-file ports: ["${FILE_PORT:-9206}:9206"] - volumes: ["firstleg-file-data:/data/files"] + volumes: ["${FILE_UPLOADS_HOST_DIR:-/data/firstleg/uploads}:/data/files"] environment: <<: *common-environment SERVER_PORT: 9206 @@ -177,7 +177,3 @@ networks: infra-network: external: true name: ${INFRA_NETWORK:-firstleg-test-infra-network} - -volumes: - firstleg-file-data: - name: firstleg-${DEPLOY_ENV:-test}-file-data diff --git a/deploy/docker/Dockerfile b/deploy/docker/Dockerfile index c0f6c7646..a35d928c1 100644 --- a/deploy/docker/Dockerfile +++ b/deploy/docker/Dockerfile @@ -6,6 +6,10 @@ RUN addgroup -S app \ WORKDIR /app +# 预建运行时数据目录并归属 app 用户:命名卷首次挂载时会继承此属主, +# 否则 Docker 以 root:root 0755 创建挂载点,非 root 容器无法写入。 +RUN mkdir -p /data/files && chown -R app:app /data + ARG JAR_FILE COPY --chown=app:app ${JAR_FILE} /app/app.jar