Synapse/matrix 서버 컨테이너 구성 권한/파일 거부됨

Synapse/matrix 서버 컨테이너 구성 권한/파일 거부됨

아래는 내가 게시한 답변입니다. 아직 내 답변을 받아들일 수 없습니다.

저는 채팅 클라이언트를 개발 중이며 개발을 위해 "빌드" 명령을 사용하여 조정하고 실제 서비스를 시작하는 데 사용할 수 있는 구성 파일을 생성하는 docker 설정을 사용합니다. 내 데스크탑에서는 잘 작동하지만, respberry나 별도의 하드 드라이브에 있는 랩톱에서 실행하려고 하면 빌드 중에 권한이 거부되었다는 파일 핸들러 오류가 발생합니다.

나는 멍청한 놈일지도 모르지만 내 노트북의 폴더 마운트 지점 권한을 변경했고 라즈베리 파이는 해당 폴더에 대한 권한을 설정했습니다.

Docker는 모든 명령에 대해 sudo를 입력하지 않고도 실행되도록 설정되어 있습니다.

다음은 업무용 프로필과 비업무용 프로필에 대한 권한 코드입니다.

# Auto generated, working local
-rwxrwxrwx 1 root root 103443 <date> <filename>
# Auto generated not working pi and laptop
-rw-r--r-- 1 991 991 106030 <date> <filename>

내가 하드 드라이브를 올바르게 설정하지 않았나요? 내 파이가 기본 OS 파티션에 있는지 여부에 관계없이 이 오류가 발생합니다. 아무런 문제 없이 역방향 프록시를 사용하여 django를 시작하고 제공할 수 있습니다.

제가 만들고 있는 채팅 서비스는 매트릭스/시냅틱입니다. 기본 설정이 포함된 시냅스 서버 저장소의 docker 폴더입니다. 문제의 파일은 homeserver.yml이며 다음에서 생성됩니다.

docker-compose run --rm synapse generate

답변1

실제로는 리눅스 권한 장난이 아닙니다.

이는 최근 시냅스 도커 저장소 푸시의 부작용일 수 있습니다. 여러 장치에서 이런 일이 발생하기 때문입니다. 나는 docker 수동 설정의 일부를 직접 지정하여 이 문제를 해결했습니다. 이 솔루션은 기타 구성 관련 문제에 유용할 수 있습니다.

해결되면 정확한 솔루션이 더 나은 방식으로 적용될 수 있습니다.

상상하다:

구성 생성시냅스시냅스용 Docker 컨테이너를 만드는 데 사용되는 서버입니다. 개발 대상 행렬고객.

질문:

구성('homeserver.yaml')을 성공적으로 생성한 후 해당 구성으로 시냅틱을 구축하면 (컨테이너 내에서) 파일을 읽을 수 없음을 나타내는 Python 스택 추적과 함께 권한 오류가 발생하고 결과가 발생 service exit 1하지 않습니다 docker logs service.

해결책:

이러한 설정 중 일부는 환경 변수를 사용하여 설정할 수 있습니다. 시냅스 추가 정보를 참조하세요. 검사 후매트릭스/시냅스docker repo 최근 빈번한 업데이트 내역을 확인했습니다. 내 시스템이 망가졌거나 컨테이너의 최근 구성 설정에 문제가 있습니다. 그래서 저는 일반적으로 자동화되는 몇 가지 작업을 직접 수행했습니다.

  • /var/lib/docker/volumes/<name of bind mount>/_data conf('homeserver.yml')와 함께 사용할 시냅스 폴더 생성 바인드 마운트를 사용하는 경우(저장소 페이지에 표시됨) docker 볼륨은 media_store, 업로드, 로그를 생성하려는 위치에 위치하게 됩니다 .

  • "homeserver.yml"에서 생성된 폴더 이름을 찾아 경로가 해당 폴더를 가리키는지 확인하세요.

  • 기본 그룹을 할당하고 Synaptic 저장소 지침을 따르십시오.

    # UID & GID default to 991
    chown 991:991 media_store/ uploads/ logs/
    
    
  • 로그 설정 처리기를 로그 폴더로 지정하면 이 구성을 설정할 때 로그 파일이 존재하지 않습니다. 로그 처리기 파일은 .log.config에서 찾을 수 있습니다.

    handlers:
     file:
         filename: /data/logs/homeserver.log
    

관련 정보