Seafile 설치를 위한 init.sh 파일을 받았습니다. 전화를 걸 때:
if [ ! -f /config/init_completed ]; then
...
else
# start seafile
sudo bash ${INSTALLPATH}seafile.sh start
sudo bash ${INSTALLPATH}seahub.sh start
# keep seafile running in foreground to prevent docker container shutting down
while true; do
sudo tail -f /opt/seafile/logs/seafile.log
sleep 10
done
fi
오류가 발생합니다./scripts/init.sh: line 44: sudo: command not found
설치 경로는 Dockerfile에 설정된 환경 변수입니다.
ENV SEAFILE_VERSION seafile-server-6.3.4
ENV INSTALLPATH /opt/seafile/${SEAFILE_VERSION}/
whoami
출력은 루트입니다.
sudo 명령이 없으면 오류는 다음과 같습니다(sudo 없이는 권한이 없기 때문에 발생한다고 추측).
bash: /opt/seafile/seafile-server-6.3.4/seafile.sh: No such file or
directory
답변1
데비안은 기본적으로 Sudo를 설치하지 않습니다. 명령을 사용하여 설치하거나
apt-get install sudo
스크립트를 편집하고 제거할 수 있습니다.스도참조하고 루트로 실행하십시오.
두 번째 오류
bash: /opt/seafile/seafile-server-6.3.4/seafile.sh: 해당 파일이나 디렉터리가 없습니다.
bash는 해당 이름의 파일이 없다고 말합니까?바다파일.sh내부에/opt/seafile/seafile-server-6.3.4/목차. 두 이름을 모두 확인하고(이전에 일부 파일을 추출해야 했을 수도 있고 Seafile 버전이 6.3.4와 다를 수도 있음) 다시 시도하세요.
답변2
sudo 를 추가하여 이 문제를 해결했습니다 ENTRYPOINT sudo bash /scripts/init.sh
.