repo+build: updated info and docker-compose file
- [repo] updated `README.md` and `doc/INSTALL.md` - [build] configure `server` and `client` to build locally - [dist] updated `doc/example.env` to unique build info
This commit is contained in:
parent
2e3b292c26
commit
071d87da8f
4 changed files with 40 additions and 44 deletions
60
README.md
60
README.md
|
@ -1,50 +1,36 @@
|
|||
# szurubooru
|
||||
|
||||
Szurubooru is an image board engine inspired by services such as Danbooru,
|
||||
Gelbooru and Moebooru dedicated for small and medium communities. Its name [has
|
||||
its roots in Polish language and has onomatopeic meaning of scraping or
|
||||
scrubbing](http://sjp.pwn.pl/sjp/;2527372). It is pronounced as *shoorubooru*.
|
||||
A fork of [szurubooru](https://github.com/rr-/szurubooru) aimed at storing photos and videos taken with physical cameras.
|
||||
|
||||
## Features
|
||||
The idea for this started in [this issue](https://github.com/rr-/szurubooru/issues/340). I wanted a self-hosted replacement for Google Photos.
|
||||
|
||||
- Post content: images (JPG, PNG, GIF, animated GIF), videos (MP4, WEBM), Flash animations
|
||||
- Ability to retrieve web video content using [youtube-dl](https://github.com/ytdl-org/youtube-dl)
|
||||
- Post comments
|
||||
- Post notes / annotations, including arbitrary polygons
|
||||
- Rich JSON REST API ([see documentation](doc/API.md))
|
||||
- Token based authentication for clients
|
||||
- Rich search system
|
||||
- Rich privilege system
|
||||
- Autocomplete in search and while editing tags
|
||||
- Tag categories
|
||||
- Tag suggestions
|
||||
- Tag implications (adding a tag automatically adds another)
|
||||
- Tag aliases
|
||||
- Pools and pool categories
|
||||
- Duplicate detection
|
||||
- Post rating and favoriting; comment rating
|
||||
- Polished UI
|
||||
- Browser configurable endless paging
|
||||
- Browser configurable backdrop grid for transparent images
|
||||
## Added Features
|
||||
|
||||
- **Date taken**
|
||||
- Automatically extracts the date and time that the photo was taken on from its EXIF metadata.
|
||||
- Date taken is shown on the post sidebar
|
||||
- **Camera**
|
||||
- Automatically extracts the make and model of the camera used to take the photo
|
||||
- Also works with some videos
|
||||
- **EXIF orientation support**
|
||||
- Acknowledges EXIF orientation and generates thumbnails and post dimensions correctly
|
||||
- Images with orientations other than 1 now render properly
|
||||
|
||||
**Please note:** Date taken and Camera do not work with image formats that lack EXIF support (such as PNG) or have been stripped of EXIF metadata.
|
||||
|
||||
## Installation
|
||||
|
||||
It is recommended that you use Docker for deployment.
|
||||
[See installation instructions.](doc/INSTALL.md)
|
||||
|
||||
More installation resources, as well as related projects can be found on the
|
||||
[GitHub project Wiki](https://github.com/rr-/szurubooru/wiki)
|
||||
More installation resources as well as related projects can be found on upstream's [GitHub project Wiki](https://github.com/rr-/szurubooru/wiki).
|
||||
|
||||
## Screenshots
|
||||
## Status and Plans
|
||||
|
||||
Post list:
|
||||
This fork has reached the level of functionality I need for my personal use. As such, there are missing features that might be useful to some:
|
||||
|
||||

|
||||
- Mass deletion support (will also implement this upstream when I get to it)
|
||||
- Tests (honestly, I don't even want to touch these)
|
||||
- Proper post merging
|
||||
- Updated documentation
|
||||
|
||||
Post view:
|
||||
|
||||

|
||||
|
||||
## License
|
||||
|
||||
[GPLv3](LICENSE.md).
|
||||
I am also planning to rewrite this fork's [`server`](server/) in another language sometime in the future.
|
||||
|
|
|
@ -6,7 +6,7 @@ and Docker Compose (version 1.6.0 or greater) already installed.
|
|||
1. Download the `szurubooru` source:
|
||||
|
||||
```console
|
||||
user@host:~$ git clone https://github.com/rr-/szurubooru.git szuru
|
||||
user@host:~$ git clone https://github.com/skybldev/szurubooru.git szuru
|
||||
user@host:~$ cd szuru
|
||||
```
|
||||
2. Configure the application:
|
||||
|
@ -34,11 +34,11 @@ and Docker Compose (version 1.6.0 or greater) already installed.
|
|||
Read the comments to guide you. Note that `.env` should be in the root
|
||||
directory of this repository.
|
||||
|
||||
### Running the Application
|
||||
### Building and Running the Application
|
||||
|
||||
Download containers:
|
||||
Unlike the original szurubooru, this will need to be built locally:
|
||||
```console
|
||||
user@host:szuru$ docker-compose pull
|
||||
user@host:szuru$ docker-compose build
|
||||
```
|
||||
|
||||
For first run, it is recommended to start the database separately:
|
||||
|
@ -62,6 +62,16 @@ To stop all containers:
|
|||
user@host:szuru$ docker-compose down
|
||||
```
|
||||
|
||||
NOTE: For Debian users, if `docker-compose build` spits out:
|
||||
```
|
||||
ERROR: Service 'server' failed to build: failed to parse platform : "" is an invalid component of "": platform specifier component must match "^[A-Za-z0-9_-]+$": invalid argument
|
||||
```
|
||||
...you will need to export Docker BuildKit flags:
|
||||
```console
|
||||
user@host:szuru$export DOCKER_BUILDKIT=1; export COMPOSE_DOCKER_CLI_BUILD=1
|
||||
```
|
||||
...then run again.
|
||||
|
||||
### Additional Features
|
||||
|
||||
1. **CLI-level administrative tools**
|
||||
|
|
|
@ -3,7 +3,7 @@ POSTGRES_USER=szuru
|
|||
POSTGRES_PASSWORD=changeme
|
||||
|
||||
# This shows up on the homescreen, indicating build information
|
||||
BUILD_INFO=latest
|
||||
BUILD_INFO=skybldev-local
|
||||
|
||||
# Port to expose HTTP service
|
||||
# Set to 127.0.0.1:8080 if you wish to reverse-proxy the docker's port,
|
||||
|
|
|
@ -7,7 +7,7 @@ version: '2'
|
|||
services:
|
||||
|
||||
server:
|
||||
image: szurubooru/server:latest
|
||||
build: server
|
||||
depends_on:
|
||||
- sql
|
||||
environment:
|
||||
|
@ -26,7 +26,7 @@ services:
|
|||
- "./server/config.yaml:/opt/app/config.yaml"
|
||||
|
||||
client:
|
||||
image: szurubooru/client:latest
|
||||
build: client
|
||||
depends_on:
|
||||
- server
|
||||
environment:
|
||||
|
|
Reference in a new issue