9 Commits

4 changed files with 100 additions and 37 deletions

17
.env Normal file
View File

@@ -0,0 +1,17 @@
### Photon Environment Variables
PHOTON_PORT=8090
SHARE_DOMAIN=localhost:8080
USER_EMAIL=photon@jrdn.dev
SHARE_URL_SCHEME=http
DATA_PATH=./data
### Photon Worker Environment Variables
SCAN_RATE=10
### Database Environment Variables
MYSQL_HOST=db
MYSQL_DATABASE=photon
MYSQL_USER=photon
MYSQL_PASSWORD=changeme
MYSQL_ROOT_PASSWORD=pleasechangeme

View File

@@ -6,32 +6,4 @@ To deploy Photon, use the included `docker-compose-example.yml`.
Ensure you have a data folder that contains your screenshots. Current supported mimetypes are `JPG`, `PNG`, `GIF` and `MP4`.
```
services:
photon:
container_name: photon_dashboard
image: git.jrdn.dev/jordanwalster/photon-dashboard:latest
ports:
- 8090:80
volumes:
- type: bind
source: ./data
target: /var/www/html/data
bind:
propagation: rshared
environment:
ADMIN_DOMAIN: photon.jrdn.dev
SHARE_DOMAIN: ss.example.com
USER_EMAIL: me@example.com
```
There are additional environment variables that can be set to enable experimental features (defaults are set to false):
| Environment Variable | Values | Default | Description |
| -------------------- |:-----------------:|:-------:| ---------------------------------- |
| TAGS_ENABLED | `true` \| `false` | false | Enables the tagging functionality |
| SEARCH_ENABLED | `true` \| `false` | false | Enables screenshot search |
| PAGE_LIMIT | `int` | 24 | Override the default page limit |
You can find the container image history [here](https://git.jrdn.dev/jordanwalster/-/packages/container/photon-dashboard/versions).

View File

@@ -2,8 +2,61 @@
All notable changes to this project will be documented in this file.
## [v0.1.1] - 2025-04-28
### Fixed
- Columns not updating when selected in dropdown.
- Icons missing from context menu on search page.
## [v0.1.0] - 2025-04-27
### Fixed
- Sharing URL Scheme set to `https` regardless of setting in environment variables.
- Search not clearing the first two characters after emptying search field.
- Error handing for existing tag names.
- Double click bug on modals.
- Permanently deleting images did not remove from db
- Pagination on tagged pages showed in the corner.
### Changed
- Upgraded to PHP 8.
- Database engine now using MySQL.
- Mandatory setting for admin url removed.
### Added
- Search by image content using OCR via worker container.
- Button for applying actions to multiple images at a time.
- Automatic migration tool for SQLite to MySQL
- Tag not found page for nonexistent tags.
- Custom time zone environment variable.
- Form validation using JS for frontend.
- Messaging for no OCR table.
- Icons on context menu.
## [v0.0.9] - 2025-04-21
### Fixed
- Occasional redirection to a previous page when deleting or restoring images.
- Assign tags field remembers existing tags.
- Allowing removal of tags from an image.
### Changed
- Pages no longer use query strings and instead use paths.
- Tags now replace spaces with dashes.
- Search, Tags and Trash now enabled by default.
- File format shown in badge.
- Links are now path based instead of query string based.
### Added
- Introduced search functionality.
- Rename tag button.
- Restore all button for trashed images.
## [v0.0.8] - 2025-01-30
### Added
- Support for displaying images with `.jpeg` extension in addition to `.jpg`.
### Fixed
- Some tags elements attempting to load when `TAGS_ENABLED` set to false.

View File

@@ -2,17 +2,38 @@ services:
photon:
container_name: photon_dashboard
image: git.jrdn.dev/jordanwalster/photon-dashboard:latest
ports:
- 8090:80
volumes:
- ./db:/var/www/html/db # Only required if migrating from SQLite
- type: bind
source: ./data
source: ${DATA_PATH}
target: /var/www/html/data
bind:
propagation: rshared
environment:
ADMIN_DOMAIN: photon.jrdn.dev
SHARE_DOMAIN: ss.example.com
USER_EMAIL: me@example.com
TAGS_ENABLED: false
SEARCH_ENABLED: false
ports:
- ${PHOTON_PORT:-8090}:80
env_file:
- .env
web:
container_name: public_web
image: nginx
ports:
- 8080:80
volumes:
- ${DATA_PATH}:/usr/share/nginx/html:ro
worker:
container_name: photon_worker
image: git.jrdn.dev/jordanwalster/photon-worker:latest
volumes:
- ${DATA_PATH}:/var/www/html/data
env_file:
- .env
db:
container_name: photon_db
image: mariadb
volumes:
- db:/var/lib/mysql
env_file:
- .env
volumes:
db: