nocodb / Dockerfile
fuliai's picture
Update Dockerfile
65b22e2 verified
FROM nocodb/nocodb:latest
# 添加镜像元信息
LABEL maintainer="ai来事"
LABEL description="NocoDB是一个开源的Airtable替代方案,可以将任何MySQL、PostgreSQL、SQL Server、SQLite和MariaDB转换为智能电子表格。免费、开源、无限制。"
LABEL video.tutorial="https://www.bilibili.com/video/BV1SP2mYBEjC/"
LABEL github.repository="https://github.com/aigem/hf-nocodb"
# 构建参数(默认值可替换,替换为其它值来重新进行部署)
ARG CACHEBUST=1111
# 切换用户并配置权限
USER root
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 curl -o /tmp/setup.sh https://raw.githubusercontent.com/aigem/hf-nocodb/new/setup.sh && \
curl -o /tmp/startup.sh https://raw.githubusercontent.com/aigem/hf-nocodb/new/startup.sh && \
mv /tmp/setup.sh /usr/src/appEntry/ && \
mv /tmp/startup.sh /usr/src/appEntry/ && \
chmod +x /usr/src/appEntry/setup.sh /usr/src/appEntry/startup.sh
# 执行设置脚本
RUN --mount=type=secret,id=DB_POSTGRESDB_USER,mode=0444,required=true \
--mount=type=secret,id=DB_POSTGRESDB_PASSWORD,mode=0444,required=true \
/usr/src/appEntry/setup.sh
# 切换回 node 用户
USER node
# 运行时执行启动脚本
CMD ["/usr/src/appEntry/startup.sh"]