13.9k Star! Private photo manager implemented by go and Google tensorflow


[introduction]: photoprism is a private photo manager implemented by go and Google tensorflow.

brief introduction

Photoprism is a privately hosted application for browsing, organizing and sharing users’ photo collections. It uses the latest technology to automatically mark and find pictures, and there is no need to upload its own pictures and videos to the cloud of the application provider!

13.9k Star! Private photo manager implemented by go and Google tensorflow
13.9k Star! Private photo manager implemented by go and Google tensorflow

Main features of photoprism:

  • Intuitive user interface, whether on mobile phone, tablet or desktop, it is very convenient to browse and organize photo collections

13.9k Star! Private photo manager implemented by go and Google tensorflow

  • Index everything without worrying about data duplication
  • Automatic image classification based on Google tensorflow can detect color, chroma, brightness, quality, panoramic projection, position and many other attributes
  • Four high-resolution world maps are provided to view the places you have been

13.9k Star! Private photo manager implemented by go and Google tensorflow

  • WebDAV clients (such as Microsoft’s Windows Explorer or Apple’s finder) can connect directly to photoprism to open, edit and delete files from your computer or mobile phone as if they were local files. You can also easily sync pictures with photosync.
  • Built as a progressive web application, photoprism provides an operating experience similar to native applications

The project address is:


Download and install

In order to simplify the steps of installation and operation, it is officially recommended to use docker composition (ensure that docker is installed before installation), and the server hosting photoprism is required to have at least 2 cores and 4G memory. The client supports most modern browsers, but it works best on chrome, chromium, Safari, Firefox and edge.

Photoprism installed on the public server is recommended to run behind HTTPS reverse proxy (such as nginx), otherwise files and passwords will be transmitted in clear text, which is prone to data interception and disclosure.

  1. Download the docker-compose.yml file for configuration, and modify the configuration as needed:
//The browser opens this address

//Or use this command to download
wget https://dl.photoprism.org/docker/docker-compose.yml
  • PHOTOPRISM_ ADMIN_ Password: the initial access password of the administrator. Modify this item to make photoprism run with a secure initial password
  • ~/Pictures: by default, it will be mounted from personal photo and video favorites, ~ which is a placeholder for the home directory and can mount any folder accessible from the computer, including network drives. Photoprism cannot view folders that have not been mounted. You can index multiple folders by combining them into the following subfolders / photoprism / origins:
  - "~/friends:/photoprism/originals/friends"
  - "/media/photos:/photoprism/originals/media"
  • . / storage: configuration, index, sidecar file and thumbnail will be placed in the path of this configuration
  1. Start, open the terminal, go to the folder where the configuration file is saved, and then run the following command to start the server:
docker-compose up -d

Open in browserhttp://localhost:2342/ To view

The port and other basic settings can be modified in docker-compose.yml. Stop and recreate the container whenever the configuration value is changed:

docker-compose stop photoprism
docker-compose up -d photoprism
  1. In the create index interface, go to “library” to start indexing or import. Alternatively, run the following command in the terminal to index all files in the original folder:
docker-compose exec photoprism photoprism index

When indexing, JPEG sidecar files may be automatically created for raw, heif, tiff, PNG, BMP, and GIF files. It is necessary for classification and resampling. By default, it is created in the storage folder so that the original can be loaded read-only.

  1. Reference command
Start container docker compose up - D
Stop container docker compose stop
Update container docker compose pull
View the log docker compose logs -- tail = 25 - F
Open the container terminal docker compose exec photography bash
Display help docker compose exec photoprism help
Display and configure docker compose exec photoprism config
Reset the database docker compose exec photoprism reset
Backup database docker compose exec photoprism backup - A - I
Restore the database docker compose exec photographic photographic restore - A - I
Docker compose exec photographic index
Import file docker compose exec photoprism import

Open source outpostShare popular, interesting and practical open source projects on a daily basis. Participate in maintaining the open source technology resource library of 100000 + star, including python, Java, C / C + +, go, JS, CSS, node.js, PHP,. Net, etc.