问题描述
我正在使用PDI在使用Microsoft Excel Writer组件的文件夹中生成Excel.xslx文件,并且正在尝试从微服务读取此文件。问题是我无法读取,因为该文件具有以下权限:-rw-r -----。如何写对所有人都有权限的文件,或者如何在PDI中更改此权限?
解决方法
我创建了一个用户“ pentaho”,并将该服务运行在相同的docker中,并且使用了相同的用户。
Dockerfile Pentaho:
...
RUN cd /pentaho && \
rm /pentaho/*server*/promptuser.sh; \
sed -i -e 's/\(exec ".*"\) start/\1 run/' /pentaho/*server*/tomcat/bin/startup.sh; \
mkdir /home/pentaho && groupadd -r pentaho && useradd -r -g pentaho -p $(perl -e'print crypt("pentaho","aa")' ) -G sudo pentaho && \
chown -R pentaho.pentaho /pentaho && \
chown -R pentaho.pentaho /home/pentaho
WORKDIR /pentaho
USER pentaho
EXPOSE 8080
Dockerfile应用程序:
FROM company/pentaho:1.0.0
MAINTAINER Company
ADD start_scripts/run.sh /pentaho/
...
RUN sudo chown -R pentaho.pentaho /pentaho/pentaho-server
WORKDIR /pentaho
USER pentaho
EXPOSE 8080
# 1. Run
ENTRYPOINT ["bash","/pentaho/run.sh"]
Run.sh:
if [ -z "$DEBUG" ]; then
echo Starting Sheet Formatting service and Pentaho in DEBUG mode
cd /pentaho/
java -jar sheet-service.jar &
cd *server*
./start-pentaho.sh;
else
echo Starting Sheet Formatting service and Pentaho in normal mode
cd /pentaho/
java -jar sheet-service.jar &
cd *server*
./start-pentaho-debug.sh;
fi