> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.cloudcone.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# How to install Photoprism on a Virtual Private Server (VPS)

# About Photoprism

Photoprism is a self-hosted photo-organizer, that provides unlimited storage as well as a privacy-friendly platform for uploading and storing images of your loved ones. 

* Official Website: https://photoprism.app/
* Recommended OS: Ubuntu 20.04 (64 Bit)

### Minimum System Requirements

* 2 vCPU Core
* 3 GB RAM
* 60 GB of Disk

Beyond these minimum requirements, the amount of RAM should match the number of CPU cores.

# Installing Photoprism on VPS

Unlike SC2, VPS does not come with easy [one-click applications](https://cloudcone.com/one-click-applications/). We will need to manually install Photoprism on a Virtual Private Server. 

| If you are using SC2, you can install the application with just one click and refer to our [Getting Started Guide](https://help.cloudcone.com/en-us/article/getting-started-with-photoprism-1g93o2d/) to start using Photoprism!

* Head on over to our [VPS plans page](https://cloudcone.com/vps) and choose your desired plan. For this example, we deployed VPS-2 plan with 1GB add-on RAM and 20GB add-on Disk.

![](https://storage.crisp.chat/users/helpdesk/website/2d4cd5516f670e00/screenshot4_14sqjbs.png)

* Once your server is provisioned, log in via SSH with the credentials sent to you via email. You can also check [system sent emails](https://app.cloudcone.com/user/emails) in your CloudCone account portal

It is recommended to run Photoprism with **Docker Compose**. All you need to have installed is a Web browser and Docker. 

### Install Docker

1. Update the repo to get latest versions

`sudo apt update`

2. Install the latest version

`sudo apt install docker.io`

3. Set Docker to start on startup

`sudo systemctl enable --now docker`

4. Give your user permissions to docker, replacing user with your username

`sudo usermod -aG docker user`

|| If you receive an error `sudo: unable to resolve host server_name: Name or service not known`. Two things to check (assuming your server hostname is called test.photoprism.server, you can change this as appropriate):
    * That the /etc/hostname file contains just the name of the machine.
    * That /etc/hosts has an entry for localhost. It should have something like:
                 `127.0.0.1    localhost.localdomain localhost`
                  `127.0.1.1    test.photoprism.server` 

5. Test if it has installed correctly by getting the docker version

`docker --version`

### Install Docker Compose

1. This downloads 1.29.2, change this if the version updates to a later version

`sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose`

2. Give permissions to this

`sudo chmod +x /usr/local/bin/docker-compose`

3. Test if it has installed correctly by getting the docker-compose version

`docker-compose --version`

### Install Photoprism

1. Download the latest docker-compose.yml for Photoprism

`wget https://dl.photoprism.org/docker/docker-compose.yml`

2. Change the **default admin password** in the docker-compose.yml file and also the **location** of pictures if not in ~\Pictures.

`sudo nano https://dl.photoprism.org/docker/docker-compose.yml`

* Find the line `PHOTOPRISM_ADMIN_PASSWORD: "insecure"` and replace it with your own secure password.

`PHOTOPRISM_ADMIN_PASSWORD: "NewSecurePassword"          # PLEASE CHANGE: Your initial admin password (min 4 characters)`

* For the photo’s location, find the line

```# Multiple folders can be indexed by mounting them as sub-folders of /photoprism/originals:
# - "/mnt/Family:/photoprism/originals/Family"    # [folder_1]:/photoprism/originals/[folder_1]```

Under this add the path to your pictures volume, followed by :/photoprism/originals/identifyingname changing `identifyingname` for something specific to you.

```# Multiple folders can be indexed by mounting them as sub-folders of /photoprism/originals:
# - "/mnt/Family:/photoprism/originals/Family"    # [folder_1]:/photoprism/originals/[folder_1]
- "/media/path/to/pictures:/photoprism/originals/identifyingname"```

3. Start the server, this may take a few minutes.

`docker-compose up -d`

4. Once complete, browse to http://<your_server_ip>:2342. You will get the screen below, enter your **NewSecurePassword** you created in the file above.

![](https://storage.crisp.chat/users/helpdesk/website/2d4cd5516f670e00/screenshot-photoprism_1izly3i.png)

### Indexing photos

Once logged in, go to **Library** from the left Navigation Menu and then press **Start**. It will start to index your photos, and will take a while especially if you have lots of photos.

![](https://storage.crisp.chat/users/helpdesk/website/2d4cd5516f670e00/screenshot-photoprism-library_1gk8l64.png)

### Important files and documents

Visit Photoprism official documentation site here: https://docs.photoprism.app/

![Photoprism UI](https://storage.crisp.chat/users/helpdesk/website/2d4cd5516f670e00/preview_19kgwlz.jpg)