Piki is a minimal wiki
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.
Dirk Alders ec36afe683 Added first metadata and page location changed 2 months ago
.vscode Initial piki commit with first rough functionality 2 months ago
config_example Logger creation simplified 2 months ago
data/media/theme Initial piki commit with first rough functionality 2 months ago
fstools @ c10e8792ab Initial piki commit with first rough functionality 2 months ago
mycreole @ 997594e371 Logger creation simplified 2 months ago
pages Added first metadata and page location changed 2 months ago
piki Fist minimal whoosh search implemented 2 months ago
stringtools @ e1f76d9631 Lib stringtools added 2 months ago
themes @ 261ef5048e Minor changes navigationbar and theme update (documentation only) 2 months ago
users @ c9532aaf37 Logger creation simplified 2 months ago
.gitignore Fist minimal whoosh search implemented 2 months ago
.gitmodules Lib stringtools added 2 months ago
LICENSE Initial commit 2 months ago
README.md Fist minimal whoosh search implemented 2 months ago
manage.py Initial piki commit with first rough functionality 2 months ago
requirements.txt Fist minimal whoosh search implemented 2 months ago

README.md

piki

Piki is a minimal wiki.

Installation

Get the repository

Go to the subfolder, where you want to create your new Piki-Application (here ~/tmp)

cd ~/tmp

Clone the repository

git clone https://git.mount-mockery.de/application/piki.git

Change to your repository and initialise it completely

cd piki
git submodule init
git submodule update

Create your virtual environment

Create python3 environment

python3 -m venv venv

Activate the environment

source venv/bin/activate

Install PaTT Requirements

pip install -r requirements.txt

Configuration and Initialisation of Piki

Create your config File

Copy the config example

cp config_example/config.py .
chmod 700 config.py

Set a secret key

Edit config.py and add a SECRET_KEY. Generate the secret e.g by executing the following command:

python manage.py

At the End of the error message you’ll see a random secret:

KeyError: “You need to create a config.py file including at least a SECRET_KEY definition (e.g.: --> ‘HERE IS THE RANDOM SECRET ;-)’ <--).”

Create your initial database and first user for Patt

python manage.py migrate
python manage.py createsuperuser

Finalise Configuration

Now there are two ways to finalise your configuration. The first way is for a test or development system. The other is for a production System.

  1. Test or development System: Edit config.py and set the Variable DEBUG to True.

  2. Production System: Edit config.py and set the Variable ALLOWED_HOSTS. Execute “python manage.py collectstatic” to create a folder including all static files. Then add PaTT to your server configuration. See also Django Documnetation for further information.

Start the Test or development System

Go to the folder, where your PaTT-Application is locates (here ~/tmp/piki)

cd ~/tmp/piki

Activate your Virtual Environment

source activate

Start the Server

python manage.py runserver

Backup

Create Backup files

source venv/bin/activate
python manage.py dumpdata --natural-foreign --natural-primary -e contenttypes -e sessions -e auth.Permission -e sessions -e pages --indent 2 > dump_pages.json
tar -cvzf dump_data.tgz data/media data/pages data/media

Restore Backup

source venv/bin/activate

If you are starting without a database, you need to create one

python manage.py migrate

Afterward add data step by step to the database.

python manage.py loaddata dump_pages.json
rm -rf data/pages data/media
tar -xvzf dump_data.tgz