-
Notifications
You must be signed in to change notification settings - Fork 108
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update Synology NAS guide with Photoprism + MariaDB directions #177
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could use MARIADB_ROOT_PASSWORD
, or as its not going to be used MARIADB_RANDOM_ROOT_PASSWORD=1
Why are the other env variables there? Maybe its default from container- unused at runtime.
Why not use MARIADB_USER, MARIADB_DATABASE, MARIADB_PASSWORD to create the photoprism user with all the permissions on MARIADB_DATABASE?
Could have MARIADB_AUTO_UPGRADE=1
to handle mariadb upgrades when installed.
ref: https://mariadb.com/kb/en/mariadb-server-docker-official-image-environment-variables/
ref2: https://mariadb.com/kb/en/docker-official-image-frequently-asked-questions/
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I... simply didn't realize that was an option... that is more elegant.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Spelling error in filename - search.
|
||
### Prerequisites | ||
- Docker is installed (called 'Container Manager' to Synology.) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So why call it 'Docker' if even Synology don't call it that? And if "installed" the prerequisite is satisfied.
- Later, if you're okay with your setup, you can link your pictures to the photos folder. | ||
|
||
### Preparing MariaDB | ||
- Launch `Container Manager` to access Docker |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe container manage isn't "Docker". So just omit "to access Docker". Still makes sense.
- Switch to the `Container` tab and click `Create` | ||
|
||
![Container Manager's Container Tab and Create Button](./img/synology/synology-create-container.png){ class="shadow" } | ||
- Choose the `mariadb:latest` (or whatever tag you chose as your image) then continue |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
mariadb:lts
is a worth while suggestion.
- By default, when you scroll down, this will probably be attached to the `bridge` network with an IP address range of `172.17.0.0/16` or something similar. That's OK as long as you also attach the future Photoprism container to the same one. | ||
|
||
![Create Container Advanced Settings showing network connection to the default `bridge` network in a dropdown with subnet and gateway details beneath](./img/synology/synology-network.png){ class="shadow" } | ||
- In the `Environment` section, click the `+ Add` button to add a new variable. Add `MYSQL_ROOT_PASSWORD` as the key and set the value to something secret. You can manipulate this later to eliminate or change this password, but you'll need it for now to get in there and make users. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
MARIADB_ROOT_PASSWORD
. Per photo comment MARIADB_{USER,PASSWORD,DATABASE} here would eliminate the pma need.
- Download and choose the flavor. (You may also skip ahead and grab `phpmyadmin` and `photoprism` while you're here or come back later.) | ||
|
||
![Container Manager Registry Search Results for `mariadb`](./img/synology/synology-mariadb-serach.png){ class="shadow" } | ||
- Wait until you get the message your image is downloaded. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
png link "search.png"
- Before you go on, be sure you check the `Create database with the same name and grant all privileges.` checkbox to make your life easier. (Or you'll have to do this yourself later.) | ||
|
||
![phpMyAdmin Add user account page with username `photoprism`, a generated password, host name as any, and the `Create database with same name and grant all privileges` box checked](./img/synology/synology-photoprism-user.png){ class="shadow" } | ||
- I recommend you leave the `Host name` as `Any host` which is a `%`. You could technically lock this down by putting in the name or IP address of the `photoprism` container, but as you're inside a private bridge network for docker already, it's really only your other containers that are in here and `%` is probably a reasonable balance between the security you already have in the private network and the potential headache you might have if the host name or IP address changes of the other container. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"docker already" - not necessary.
"inside a private bridge network, only your other containers are there, and %
.."
![New Container General Setings showing choice of `photoprism` container and named container](./img/synology/synology-photoprism-create.png){ class="shadow" } | ||
- Under `Port Settings`, be sure you map `2342` to an external port so you can log in. You can leave the other two unmapped for now. They can be edited later if you determine you need them. | ||
- Scroll down and under `Volume Settings`, add two or three volumes. | ||
- Choose the `/docker/Photoprism/config` folder you made earlier (or wherever you are keeping your other Docker config files) and mount it to `/photoprism/storage` with `Read/Write` permission |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"Docker" -> "container"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you see a ROOT_PASSWORD here. Acceptable?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Woops.
This guide had Photoprism + SQLite directions and the caveat that was not recommended versus using MariaDB.
So as I set this up for myself with MariaDB + phpMyAdmin + Photoprism, I took photos and updated the guide accordingly to advise future folks on how to set up the whole chain of containers to make this happen.