Web application to serve manga collection from your computer over the network.
Note: This is NOT a CMS (Content Management System)
Runtime
- PHP version 8.1 or later with following extension enabled:
- imagick
- zip
Development
- composer
- NodeJS
- yarn (replacement for npm)
- symfony-cli (optional)
Note
To prevent accidental data lost, make sure to mount your media volume as readonly.
Important
By default, memory limit is 128MB and might not be enough to generage cover thumbnail (see #199).
You can increase memory limit by setting APP_MEMORY_LIMIT
env variable to the desired value.
docker run -d --publish 8000:8000 \
--env APP_MEMORY_LIMIT=1G \
--env APP_MEDIA_DIRECTORY=/media \
--volume /path/to/your/media:/media:ro \
ghcr.io/zackad/manga-server:latest
- Download zip file from the latest release page
- Extract
- Open
.env
file and changeAPP_MEDIA_DIRECTORY
value to your manga collection folder. Alternatively you can copy.env
file into.env.local
to prevent your value to be overwritten when you update the app later.
# Please change to something like APP_MEDIA_DIRECTORY=/your/media/path
APP_MEDIA_DIRECTORY=/media
- Open terminal
- Navigate to extracted directory
- Run following command
php -S 0.0.0.0:8000 public/index.php
- Open web browser and access to
http://localhost:8000
- If your computer is connected to local network, you can access it from other device (smartphone, tablet, or other computer) that connected to the same network by accessing to it's ip address e.g
http://192.168.100.12:8000
- Clone this repository
git clone https://github.com/zackad/manga-server
- Install dependencies
cd manga-server
composer install
yarn install
- Start the server
php -S 0.0.0.0:8000 public/index.php
# if you have symfony cli installed, you can use this command to start
# development server
symfony server:start
- Watch the frontend compilation
# Open another terminal session and run
yarn dev
This project support nix flakes with direnv enabled.
# Enable direnv autoload
direnv allow
# Start development process
devenv up