Ciallo~(∠·ω< )⌒★
A simple engine for image hosting written in Rust.
- Image hosting
- Automatic image compression via WebP
- Basic account system
- Internationalization
- Deploy via Docker
- Written in pure Rust
docker run -d -p 8080:80 -v image-cache:/home/cache ghcr.io/langyo/0721:latestYou can configure the engine via
Config.tomlin the docker volume.If you want to change the configuration, you might need to enter the container via the other image:
docker run -it --rm -v image-cache:/home busybox:latestThen you can edit the
Config.tomlin the/homedirectory by usingvi.After that, you can restart the container to apply the new configuration:
docker restart <container_id>
[portal]
# The site's title
title-suffix = "Ciallo~(∠·ω< )⌒★"
# The banner in the footer
footer-banner = [
{ text = "© 0721 project", url = "https://github.com/langyo/0721" },
]
# The default language of the site
language = "zh_hans"
# The timezone of the server, it will affect the images' timeline page
timezone = +8
[router]
# The entry path of the images
media-entry-path = "/media"
# If it's empty, it means no limit
limit-referrer-host = []
[upload]
# Allow to use "KiB", "MiB" as unit, or pure number string as bytes
image-size-limit = "8MiB"
# If it's true, the uploaded image will be converted to WebP format automatically
webp-auto-convert = true
# If it's true, the uploaded image will keep the original file's name
use-source-file-name = falseJWT secret key can be configured via the environment variable
JWT_SECRET.You can configure it via the additional command line argument
-e JWT_SECRET=your_secret_keyfor thedocker runcommand.The default user is
adminand the password isadmintoo. Modification of username and password is currently not supported. If operations are required, please create new users and delete old users. Subsequent versions will improve this capability.
You needs to install
cargo-makeandwasm-bindgen-clifirst.
cargo install cargo-makecargo install [email protected]
cargo make dev