2018-05-25 17:59:40 -05:00
|
|
|
## Bukuserver
|
|
|
|
|
|
|
|
### Table of Contents
|
|
|
|
|
|
|
|
- [Installation](#installation)
|
2018-11-01 09:05:18 -05:00
|
|
|
- [Dependencies](#dependencies)
|
|
|
|
- [From PyPi](#from-pypi)
|
|
|
|
- [From source](#from-source)
|
2019-08-22 14:28:01 -05:00
|
|
|
- [Using Docker](#using-docker)
|
2018-05-25 17:59:40 -05:00
|
|
|
- [Webserver options](#webserver-options)
|
|
|
|
- [Configuration](#configuration)
|
2018-05-25 18:26:31 -05:00
|
|
|
- [Screenshots](#screenshots)
|
2018-05-25 17:59:40 -05:00
|
|
|
|
|
|
|
### Installation
|
|
|
|
|
|
|
|
You need to have some packages before you install `bukuserver` on your server.
|
|
|
|
So be sure to have `python3`, `python3-pip` , `python3-dev`, `libffi-dev` packages from your distribution.
|
|
|
|
|
2018-11-01 09:05:18 -05:00
|
|
|
#### Dependencies
|
2018-05-25 17:59:40 -05:00
|
|
|
|
|
|
|
```
|
|
|
|
$ python3 -m pip install --user --upgrade pip
|
|
|
|
$ python3 -m pip install --user virtualenv
|
|
|
|
$ python3 -m virtualenv env
|
|
|
|
$ source env/bin/activate
|
|
|
|
```
|
|
|
|
|
2018-11-01 09:05:18 -05:00
|
|
|
#### From PyPi
|
2018-05-25 17:59:40 -05:00
|
|
|
|
|
|
|
$ pip3 install buku[server]
|
|
|
|
|
2018-11-01 09:05:18 -05:00
|
|
|
#### From source
|
|
|
|
|
|
|
|
```
|
|
|
|
$ git clone https://github.com/jarun/Buku
|
|
|
|
$ cd Buku
|
|
|
|
$ pip3 install .[server]
|
|
|
|
```
|
|
|
|
|
2019-08-22 14:28:01 -05:00
|
|
|
#### Using Docker
|
|
|
|
|
|
|
|
To build the image execute the command from the root directory of the project:
|
|
|
|
|
|
|
|
```sh
|
|
|
|
docker build -t bukuserver .
|
|
|
|
```
|
|
|
|
|
|
|
|
To run the generated image.
|
|
|
|
|
|
|
|
```sh
|
|
|
|
docker run -it --rm -v ~/.local/share/buku:/root/.local/share/buku -p 5001:5001 bukuserver
|
|
|
|
```
|
|
|
|
|
|
|
|
All the data generated will be stored in the `~/.local/share/buku` directory.
|
|
|
|
Feel free to change it to the full path of the location you want to store the
|
|
|
|
database.
|
|
|
|
|
|
|
|
Visit `127.0.0.1:5001` in your browser to access your bookmarks.
|
|
|
|
|
2018-05-25 17:59:40 -05:00
|
|
|
### Webserver options
|
|
|
|
|
|
|
|
To run the server on host 127.0.0.1, port 5001, run following command:
|
|
|
|
|
|
|
|
$ bukuserver run --host 127.0.0.1 --port 5001
|
|
|
|
|
|
|
|
Visit `127.0.0.1:5001` in your browser to access your bookmarks.
|
|
|
|
|
|
|
|
See more option on `bukuserver run --help` and `bukuserver --help`
|
|
|
|
|
|
|
|
### Configuration
|
|
|
|
|
|
|
|
Following are available os env config available for bukuserver.
|
|
|
|
|
2018-05-29 07:32:12 -05:00
|
|
|
| Name (without prefix) | Description | Value |
|
|
|
|
| --- | --- | --- |
|
|
|
|
| PER_PAGE | bookmarks per page | positive integer [default: 10] |
|
|
|
|
| SECRET_KEY | server secret key | string [default: os.urandom(24)] |
|
|
|
|
| URL_RENDER_MODE | url render mode | `full` or `netloc` [default: `full`] |
|
2018-12-15 11:30:48 -06:00
|
|
|
| DB_FILE | full path to db file | path string [default: standard path for buku] |
|
2019-05-27 08:24:30 -05:00
|
|
|
| DISABLE_FAVICON | disable favicon | boolean [default: `false`] |
|
2019-06-06 18:52:55 -05:00
|
|
|
| OPEN_IN_NEW_TAB | url link open in new tab | boolean [default: `false`] |
|
2018-05-25 17:59:40 -05:00
|
|
|
|
|
|
|
Note: `BUKUSERVER_` is the common prefix.
|
|
|
|
|
|
|
|
Note: if input is invalid, the default value will be used
|
|
|
|
|
|
|
|
e.g. to set bukuserver to show 100 item per page run the following command
|
|
|
|
|
|
|
|
```
|
|
|
|
# on linux
|
|
|
|
$ export BUKUSERVER_PER_PAGE=100
|
|
|
|
|
|
|
|
# on windows
|
|
|
|
$ SET BUKUSERVER_PER_PAGE=100
|
2018-05-29 07:32:12 -05:00
|
|
|
|
|
|
|
# in dockerfile
|
|
|
|
ENV BUKUSERVER_PER_PAGE=100
|
2018-05-25 17:59:40 -05:00
|
|
|
```
|
2018-05-25 18:26:31 -05:00
|
|
|
|
|
|
|
### Screenshots
|
|
|
|
|
|
|
|
<p><br></p>
|
|
|
|
<p align="center">
|
2018-07-18 19:27:10 -05:00
|
|
|
<a href="https://i.imgur.com/LozEqsT.png"><img src="https://i.imgur.com/LozEqsT.png" alt="home page" width="650"/></a>
|
2018-05-25 18:26:31 -05:00
|
|
|
</p>
|
|
|
|
<p align="center"><i>home page</i></a></p>
|
|
|
|
|
|
|
|
<p><br><br></p>
|
|
|
|
<p align="center">
|
2018-07-18 19:27:10 -05:00
|
|
|
<a href="https://i.imgur.com/DJUzs1d.png"><img src="https://i.imgur.com/DJUzs1d.png" alt="index page" width="650"/></a>
|
2018-05-25 18:26:31 -05:00
|
|
|
</p>
|
|
|
|
<p align="center"><i>bookmark stats</i></a></p>
|
|
|
|
|
|
|
|
<p><br><br></p>
|
|
|
|
<p align="center">
|
2018-07-18 19:27:10 -05:00
|
|
|
<a href="https://i.imgur.com/1eMruZD.png"><img src="https://i.imgur.com/1eMruZD.png" alt="index page" width="650"/></a>
|
2018-05-25 18:26:31 -05:00
|
|
|
</p>
|
2018-07-18 19:27:10 -05:00
|
|
|
<p align="center"><i>bookmark page</i></a></p>
|
2018-05-25 18:26:31 -05:00
|
|
|
|
|
|
|
<p><br><br></p>
|
|
|
|
<p align="center">
|
2018-07-18 19:27:10 -05:00
|
|
|
<a href="https://i.imgur.com/W4VUKQV.png"><img src="https://i.imgur.com/W4VUKQV.png" alt="index page" width="650"/></a>
|
2018-05-25 18:26:31 -05:00
|
|
|
</p>
|
2018-07-18 19:27:10 -05:00
|
|
|
<p align="center"><i>create bookmark</i></a></p>
|
2018-05-25 18:26:31 -05:00
|
|
|
|
|
|
|
<p><br><br></p>
|
|
|
|
<p align="center">
|
2018-07-18 19:27:10 -05:00
|
|
|
<a href="https://i.imgur.com/213y0Ft.png"><img src="https://i.imgur.com/213y0Ft.png" alt="index page" width="650"/></a>
|
2018-05-25 18:26:31 -05:00
|
|
|
</p>
|
2018-07-18 19:27:10 -05:00
|
|
|
<p align="center"><i>edit bookmark</i></a></p>
|
2018-05-25 18:26:31 -05:00
|
|
|
|
|
|
|
<p><br><br></p>
|
|
|
|
<p align="center">
|
2018-07-18 19:27:10 -05:00
|
|
|
<a href="https://i.imgur.com/MQM07VZ.png"><img src="https://i.imgur.com/MQM07VZ.png" alt="index page" width="650"/></a>
|
|
|
|
</p>
|
2018-07-18 23:16:04 -05:00
|
|
|
<p align="center"><i>view bookmark details</i></a></p>
|
2018-07-18 19:27:10 -05:00
|
|
|
|
|
|
|
<p><br><br></p>
|
|
|
|
<p align="center">
|
|
|
|
<a href="https://i.imgur.com/0bYgpER.png"><img src="https://i.imgur.com/0bYgpER.png" alt="index page" width="650"/></a>
|
2018-05-25 18:26:31 -05:00
|
|
|
</p>
|
|
|
|
<p align="center"><i>tag page</i></a></p>
|