You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
1.4 KiB
35 lines
1.4 KiB
# DecentralisedBookIndex
|
|
|
|
**DecentralisedBookIndex** is a web-server to manage the book metadata in the decentralise manner.
|
|
|
|
## Getting started
|
|
- clone this repository
|
|
- copy `.env.example` file and save as `.env`
|
|
- copy `.env_db.example` file and save as `.env_db`
|
|
- change the values in `.env` and `.env_db`
|
|
you can use `mix phx.gen.secret` to generate secrets.
|
|
update the PHX_HOST to your domain name.
|
|
- run `docker compose up -d`
|
|
- run migrations `docker exec -it dbi bin/migrate`
|
|
- open the url (`PHX_HOST`) in a browser.
|
|
register a user.
|
|
- install nginx for as a reverse proxy
|
|
- configure the web-site config for nginx
|
|
change example.com to your domain.
|
|
copy example config from `examples/nginx/example.com.conf` to `/etc/nginx/sites-available`.
|
|
rename the file to your domain and change the domain within the file.
|
|
enable the web-site with command `ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/`.
|
|
- run the commands to promote an user to the admin.
|
|
change `admin@example.com` to your email.
|
|
```shell
|
|
docker exec -it dbi bin/decentralised_book_index remote
|
|
DecentralisedBookIndex.Accounts.User.get_by_email!("admin@example.com", authorize?: false) \
|
|
|> DecentralisedBookIndex.Accounts.User.set_role(:admin, authorize?: false)
|
|
```
|
|
close the terminal with `Ctrl + c` and `a`.
|
|
|
|
# Author
|
|
|
|
Kostiantyn Klochko (c) 2023-2025
|
|
|