윈도우 캡처 앱과 파일 탐색기 동기화가 가능한 자체 호스팅 ShareX 서버를 구축했고, 이제 Zipline에서도 가져올 수 있습니다
요약
사용자가 직접 호스팅할 수 있는 파일 공유 및 동기화 서버 'Fileship'이 소개되었습니다. 이 서비스는 웹, 네이티브 Windows 앱, 모바일 등 다양한 환경에서 파일을 업로드하고 관리하며, AI 검색 기능과 Zipline 연동을 지원합니다. 또한 OpenID Connect를 통한 SSO 구현과 Docker 이미지 크기 대폭 감소 등의 기술적 개선이 이루어졌습니다.
핵심 포인트
- Zipline 및 기타 서비스와 동기화가 가능하도록 설계되었습니다.
- 네이티브 Windows 앱으로 스크린샷, OCR 등 기능을 제공합니다.
- 자체 서버에서 실행되는 AI 검색 기능과 File Explorer 연동을 지원합니다.
- OpenID Connect를 통한 싱글 사인온(SSO) 및 패스키/2FA가 구현되었습니다.
- Docker 이미지 크기가 1.43GB에서 230MB로 크게 줄었습니다.
AI 공개: v1–v5는 손으로 작성되었고, v6은 Claude Code의 도움을 많이 받아 제작되었습니다. 저는 모든 변경 사항을 검토하고 테스트합니다.
안녕하세요 r/selfhosted 여러분,
약 3.5년 전 친구가 Zipline을 사용하고 있었는데, 제가 그 모양이 마음에 들지 않아 직접 만들기 시작했습니다. 당시에는 SpaceX라고 불렸습니다(농담 이름이라 당연히 유지할 수는 없었습니다). 이것은 저의 첫 번째 대규모 Nuxt 프로젝트였으며, 저와 몇몇 친구들만 사용했습니다. 저는 이를 오픈 소스화했고, 2024년 7월에 제가 배운 모든 것을 바탕으로 다시 시작하여 Fileship이라고 이름 지었습니다. 초기 버전의 일부 코드는 여전히 남아있는데, 이것이 좀 재미있습니다. 방금 6.3 버전을 출시했기 때문에 이곳에 공유하기 좋은 시점이라고 생각했습니다.
기본 아이디어는 다음과 같습니다: ShareX, 웹, 브라우저 확장 프로그램 또는 휴대폰에서 파일을 업로드하면 링크를 받게 됩니다. 그 위에 다른 사용자들과 공유할 수 있는 폴더, Markdown 노트, 단축 링크, 업로드 받은 편지함(inboxes), 그리고 휴지통 기능이 있습니다.
다른 ShareX 서버에서는 볼 수 없었던 것들:
- 스크린샷, 화면 녹화 및 OCR 기능을 위한 네이티브 Windows 앱. 이 앱은 몇 MB의 RAM을 사용하며 트레이에 상주하고 ShareX 스타일의 단축키를 제공합니다.
- Fileship Harbor: 파일들이 온라인 전용 파일처럼 File Explorer에 표시됩니다. 자체 서버에서 CPU로 실행되는 AI 검색 기능입니다. 50개 이상의 언어로 "해변의 개"를 검색하면 해당 사진을 찾아줍니다. 또한 캡션 작성, OCR 수행 및 ID나 카드 번호가 있는 사진은 실수로 공유하지 않도록 플래그 지정하는 기능도 있습니다. 모든 것은 선택 사항입니다.
- 다운타임 없이 대시보드에서 업데이트 가능합니다(Caddy를 이용한 blue/green 배포 방식).
6.3 버전의 새로운 기능:
- OpenID Connect를 사용한 싱글 사인온(Single sign-on)을 구현했으며, Keycloak 및 Google과 테스트했습니다.
- Zipline, XBackBone, Chibisafe에서 가져오는 것이 가능하며, 기존 Zipline 링크도 계속 작동합니다.
- Docker 이미지가 1.43 GB에서 230 MB로 대폭 줄었습니다. 스페인어, 브라질 포르투갈어, 러시아어를 포함하여 이제 총 12개 언어를 지원합니다(원어민분들께 잘못된 부분이 있다면 알려주세요).
기타 기능:
- S3, SFTP 또는 FTP 저장소 연결.
- 패스키(passkeys) 및 2FA(이중 인증), 비밀번호 관리.
- 공유 링크에 대한 만료일 및 보기 제한 설정.
- Discord 임베드 지원.
- 예약 백업 및 웹훅(webhooks).
- 설치 가능한 휴대폰 앱과 macOS 및 Linux용 업로드 스크립트.
MIT 라이선스입니다. 솔직한 몇 가지 참고 사항을 알려드립니다: 데스크톱 앱은 새로 출시되었습니다 (이번 달 초에 6.0 버전으로 나왔습니다). 따라서 현재는 Windows 전용이며, Windows 11 24H2 이상이 필요합니다. Linux와 어쩌면 macOS도 나중에 지원될 수 있습니다. 그때까지 대시보드에서 두 운영체제 모두에 대한 업로드 스크립트를 제공받을 수 있습니다.
ARM64 이미지가 있지만, 저는 에뮬레이션 환경에서만 테스트했습니다. 만약 누군가 Pi에서 실행해 본다면 어떻게 되었는지 알려주세요. 익명 텔레메트리(telemetry)는 기본적으로 활성화되어 있습니다 (카운트와 버전 정보만 수집하며, 파일 이름, URL 또는 IP 주소는 수집하지 않습니다). 스위치 하나를 사용하거나 NUXT_TELEMETRY_ENABLED=false로 설정하면 끌 수 있습니다.
저는 5.x 버전까지는 모든 것을 직접 작성했습니다. 이번 달에는 Claude Code를 사용하기 시작했고, 6.x 버전의 상당 부분이 이를 통해 작성되었습니다. 제가 모든 것을 검토하고 테스트하지만, 커밋 기록에서 확인하실 수 있으니 미리 말씀드리는 것이 좋겠습니다.
설정은 docker compose를 사용합니다 (CPU 코어 2개, RAM 2GB, AI 사용 시 4GB): git clone https://github.com/hanzydev/Fileship.git cd Fileship echo "SECRET_TOKEN=$(openssl rand -hex 32)" > .env docker compose up -d
GitHub: https://github.com/hanzydev/Fileship Windows 앱: https://github.com/hanzydev/fileship-desktop/releases/latest 문서(Docs): https://github.com/hanzydev/Fileship/tree/main/docs 특히 Zipline 사용자의 피드백을 받고 싶습니다.
/u/Dependent_Purpose479 제출 [링크] [댓글]
AI 자동 생성 콘텐츠
본 콘텐츠는 r/SelfHosted (AI filter)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기