File size: 1,259 Bytes
e18ea7d
 
5c32cd1
 
 
5a4a7ae
 
5c32cd1
 
 
 
 
 
 
cf035b9
5a4a7ae
43df71d
 
 
cf035b9
5a4a7ae
43df71d
e18ea7d
e6331a2
 
 
 
407bb62
5a4a7ae
407bb62
 
5a4a7ae
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
FROM nocodb/nocodb:latest

# 切换用户并配置权限
USER root

# 构建参数(默认值可替换)
ARG CACHEBUST=12

ARG DB_POSTGRESDB_SCHEMA=$DB_POSTGRESDB_SCHEMA
ARG DB_POSTGRESDB_HOST=$DB_POSTGRESDB_HOST
ARG DB_POSTGRESDB_DATABASE=$DB_POSTGRESDB_DATABASE
ARG DB_POSTGRESDB_PORT=$DB_POSTGRESDB_PORT
ARG DB_POSTGRESDB_USER=$DB_POSTGRESDB_USER
ARG DB_POSTGRESDB_PASSWORD=$DB_POSTGRESDB_PASSWORD

# 显示构建参数(调试用)
RUN --mount=type=secret,id=DB_Host,mode=0444,required=true \
    --mount=type=secret,id=DB_Port,mode=0444,required=true \
    echo "Build args: CACHEBUST=${CACHEBUST}, DB_HOST=${DB_POSTGRESDB_HOST}, DB_PORT=${DB_POSTGRESDB_PORT}"

# 设置 NC_DB 环境变量
ENV NC_DB="pg://${DB_POSTGRESDB_HOST}:${DB_POSTGRESDB_PORT}?u=$(cat /run/secrets/DB_POSTGRESDB_USER)&p=$(cat /run/secrets/DB_POSTGRESDB_PASSWORD)&d=${DB_POSTGRESDB_DATABASE}"

RUN mkdir -p /usr/app /usr/src/app && \
    chown -R node:node /usr/app /usr/src/app && \
    chmod -R 755 /usr/app /usr/src/app && \
    chmod +x /usr/src/appEntry/start.sh

# 切换回 node 用户
USER node

# 显示运行时环境变量和 HOME 路径
RUN echo "HOME directory: $HOME"
CMD echo "Runtime NC_DB: $NC_DB" && \
    echo "HOME: $HOME" && \
    /usr/src/appEntry/start.sh