Home-gallery.org는 자체 호스팅 오픈 소스 웹 갤러리로 태깅, 모바일 친화적 인 이미지 및 Face Discovery를 갖춘 개인 사진 및 비디오를 탐색합니다. 데모 갤러리를 사용해 보거나 음식 이미지를 즐기십시오!
참고 : 이 소프트웨어는 보증이없는 개인 애완 동물/여가 시간 프로젝트입니다. gitter.im 또는 discord에 대해 질문하십시오.
당신은 홈 갤러리를 좋아합니까? 미디어 문제를 해결합니까? 도와주고 싶습니까? 기고 가이드 라인을 읽고 Patreon.com/xemle에 대한 반복적 인 재정 지원을 통해이 프로젝트를 지원하거나 PayPal.me/xemle 계정에 대한 일회성 지원. 미리 감사드립니다.
MIT 라이센스
HomeGallery를 사용하려면 다음 단계를 수행해야합니다
~/Pictures 같은 미디어 소스로 구성을 시작하십시오 curl -sL https://dl.home-gallery.org/dist/latest/home-gallery-latest-linux-x64 -o gallery
chmod 755 gallery
./gallery init --source ~/Pictures
./gallery run server
브라우저에서 LocalHost : 3000을 엽니 다. CLI의 추가 도움을 받으려면 ./gallery -h 를 실행하십시오.
추가 바이너리는 DL.Home-gallery.org/dist를 참조하십시오. 예를 들어. Linux, Mac 또는 Windows의 최신 바이너리.
Configuration gallery.config.yml 미세 조정을 위해 현재 디렉토리에서 찾을 수 있습니다. 자세한 내용은 문서의 설치 섹션을 참조하십시오.
mkdir -p data
alias gallery="docker run -ti --rm
-v $(pwd)/data:/data
-v $HOME/Pictures:/data/Pictures
-u $(id -u):$(id -g)
-p 3000:3000 xemle/home-gallery"
gallery init --source /data/Pictures
gallery run server
브라우저에서 LocalHost : 3000을 엽니 다. CLI의 추가 도움을 받으려면 gallery -h 실행하십시오.
갤러리 구성은 미세 튜닝을 위해 ./data/config/gallery.config.yml 에서 찾을 수 있습니다.
Docker Compose를 사용하고 싶습니까? 자세한 내용은 문서의 설치 섹션을 참조하십시오.
일반 문서는 Docs.home-gallery.org를 참조하십시오.
완전한 "데이터베이스"는 브라우저에로드됩니다. 내 100.000 미디어는 약 100MB 일반 JSON 및 12MB 압축 JSON입니다. 성능은 현재 모바일 장치에서 상당히 좋습니다. 사용자는 400.000 개가 넘는 미디어 파일로 성공적인 설정을보고했습니다. 추가 피드백을 환영합니다.
HomeGallery에는 Linux, MacOS 및 Windows 용 바이너리가 사전 제작되었습니다. 추가 다운로드 옵션은 여기에서 찾을 수 있습니다.
사용에 대해서는 설치 섹션을 참조하십시오.
HomeGallery의 목표는 민감한 개인 이미지 데이터로 인해 가능한 한 덜 공개적으로 사용하는 것입니다. 로컬로 배치 할 수있는 서비스를 사용하려고합니다. 그러나 설정에는 기술적 인 지식 및 기술 유지 보수가 필요합니다. 다음 서비스는 다음과 같습니다.
GEO 리버스 조회 (GEO 좌표로)의 경우 HomeGallery는 OpenStreetMap에서 Nominatim 서비스를 쿼리합니다. GEO 좌표 만 전송됩니다.
HomeGallery는 리버스 이미지 조회 (유사한 이미지 검색), 객체 감지 및 얼굴 인식을 위해 api.home-gallery.org 에서 자체 공개 API를 사용합니다. 이 공개 API는 Soc Raspberry Pi와 같은 저전력 장치를 지원하며 모든 미리보기 이미지는 기본적 으로이 공개 API로 전송됩니다. 이미지 나 개인 정보 보호 데이터는 보관되지 않습니다.
API는 로컬 또는 Docker 컨테이너로 구성 및 실행할 수 있습니다. 사용에 대해서는 설치 섹션을 참조하십시오.
HomeGallery는 Linux (Raspberry Pis), Mac 및 Windows와 같은 다양한 플랫폼에서 지원되는 JavaScript 런타임 Nodejs에서 실행됩니다.
대부분의 경우 맞춤형 환경으로 충분해야합니다.
# Clone or download the repo from GitHub
git clone https://github.com/xemle/home-gallery.git
cd home-gallery
# Install required packages
npm install
# Build required modules
npm run build
일부 Cornor의 경우 라이브러리 바인딩을 컴파일하는 데 필수적인 빌드 도구가 필요할 수도 있습니다.
HomeGallery는 다중 패키지와 함께 NPM 작업 공간을 사용합니다. 일반적인 NPM 스크립트는 clean build , test .
패키지 export-static 서브 세트 만 실행하려면 PNPM의 필터 기능을 사용할 수 있습니다 database
npx pnpm -r --filter './*/{export-static,database}' build
특정 패키지에서 단위 테스트 실행 (PNPM을 통해)
npx pnpm -r --filter './*/{query,events}' test
특정 E2E 테스트 실행 (게이지를 통해)
git clone https://github.com/xemle/home-gallery-e2e-data.git data
npm run test:e2e -- --tags dev
home-gallery-e2e-data 에는 GIT LFS를 사용한 테스트 파일이 포함되어 있습니다.
E2E 테스트 출력 데이터는 /tmp/gallery-e2e 디렉토리에 저장됩니다. 최신 테스트 실행은 HomeGallery Working Directory의 디렉토리 latest-e2e-test 에 상징적입니다. 각 테스트 디렉토리에서 cli.log 및 e2e.log (ndjson format)를 확인하십시오.
피처 브랜치에서 로컬 바이너리 번들을 만듭니다
node scripts/bundle.js --version=1.3 --snapshot=-feature-test --filter=linux-x64 --no-before --no-run
Sharp, FFMPEG 및 FFPROBE와 같은 NPM을 통해 바이너리를 제외하는 로컬 기본 번들을 만듭니다. 모든 곳에서 실행 해야하는 JS 코드 만 포함되어야합니다. PATH 환경에서 외부 바이너리 Vipsthumbnail, FFMPEG 및 FFProbe가 제대로 작동하려면 필요합니다.
node scripts/bundle.js --version=1.3 --snapshot=-feature-test --filter=linux-native --no-before --no-run
현재 개발 상태를 재설정하고 매우 이상한 오류 동작에서 새로 시작하려면 다음을 실행할 수 있습니다.
rm -rf package-lock.json node_modules e2e/node_modules packages/*/node_modules
npm install && npm run clean && npm run build