SYLOLOGY/WEBSTATION
Synology WebStation에서 Python 서비스 빌드 시 mime-support 오류 해결하기
dma-ai
2025. 9. 19. 02:09
728x90
Synology NAS의 WebStation을 이용해 Python(Django 등) 서비스를 배포할 때, 빌드 과정에서 다음과 같은 오류를 만난 경험이 있을 겁니다:
E: Package 'mime-support' has no installation candidate
The command '/bin/sh -c apt-get update && apt-get install -y ... mime-support ...' returned a non-zero code: 100
이 문제 때문에 WebStation에서 Python 서비스가 정상적으로 빌드되지 않고, 502 Bad Gateway 에러까지 이어지기도 합니다.
원인 분석
- Python 버전 문제 아님: Python 3.11, 3.12, 3.13 어떤 버전이든 동일하게 발생합니다.
- 실제 원인: WebStation이 사용하는 Dockerfile 템플릿 안에 apt-get install mime-support 라인이 남아 있기 때문입니다.
- Debian bookworm / Ubuntu 최신 계열에서는 mime-support 패키지가 제거되었고, media-types나 mailcap으로 대체되었습니다.
- 즉, 이 문제는 Synology WebStation의 구식 빌드 스크립트 문제이지 Python 자체와는 무관합니다.
해결 방법 — SSH로 직접 수정
1. NAS에 SSH 접속
DSM 제어판 → 터미널 & SNMP → SSH 서비스 활성화.
이후 PC에서 접속:
ssh admin@<NAS_IP>
# 관리자 계정 비밀번호 입력
sudo -i # root 권한 전환
2. mime-support가 들어 있는 파일 검색
grep -R --line-number "mime-support" /var/packages/WebStation /usr/syno 2>/dev/null
이렇게 하면 WebStation이 참조하는 Dockerfile과 템플릿 파일 경로가 출력됩니다.
예시:
/var/packages/WebStation/etc/python_profile/<UUID>/Dockerfile:12: mime-support
/var/packages/WebStation/target/misc/python_dockerfile.mustache:12: mime-support
3. 파일 백업
수정 전에 반드시 원본을 백업해 둡니다:
cp -v /var/packages/WebStation/etc/python_profile/<UUID>/Dockerfile \
/var/packages/WebStation/etc/python_profile/<UUID>/Dockerfile.bak
cp -v /var/packages/WebStation/target/misc/python_dockerfile.mustache \
/var/packages/WebStation/target/misc/python_dockerfile.mustache.bak
4. mime-support → media-types로 교체
sed -i 's/mime-support/media-types/g' \
/var/packages/WebStation/etc/python_profile/<UUID>/Dockerfile
sed -i 's/mime-support/media-types/g' \
/var/packages/WebStation/target/misc/python_dockerfile.mustache
5. 수정 확인
grep -n "media-types" /var/packages/WebStation/etc/python_profile/<UUID>/Dockerfile
grep -n "media-types" /var/packages/WebStation/target/misc/python_dockerfile.mustache
출력 예:
12: media-types \
→ 정상적으로 반영된 상태.
6. WebStation에서 재빌드
DSM WebStation 관리 화면에서 해당 Python 서비스 → 저장/적용 → 빌드 실행.
빌드 로그 확인:
tail -f /usr/syno/etc/packages/ContainerManager/projects/<UUID>.action.log
이제 mime-support 오류가 더 이상 발생하지 않습니다.
결론
- mime-support 오류는 Python 버전과 관계없음.
- 문제의 원인은 Synology WebStation의 구식 Dockerfile 템플릿.
- SSH로 접속해 Dockerfile과 템플릿 파일에서 mime-support를 media-types로 교체하면 해결 가능.
- 수정 후 WebStation에서 빌드를 재시도하면 정상적으로 Python 서비스를 구동할 수 있습니다.
✅ 이 과정을 거친 뒤에는 더 이상 mime-support 오류에 막히지 않고, 원하는 Python/Django 애플리케이션을 Synology WebStation에서 문제없이 배포할 수 있습니다.
728x90