Configuration with environment variables
You can change static locations using Environment variables. Using (in linux):
export <env>=<value or path>
Homepage
The homepage is defaulted to the “homepage.md” file. If you want to use a different file, you can specify the file to use for the homepage with the environment variable HOMEPAGE as well as the title with HOMEPAGE_TITLE.
export HOMEPAGE=<location>
export HOMEPAGE_TITLE=<title>
Wiki title
The title/name is displayed in the top left corner of the GUI and in the browser tab. It is defaulted to “Wiki”. Set this to a unique name to tell multiple instances of wikmd apart.
export WIKI_TITLE="My wiki"
Custom port and host
You can change the host and port value by respectively changing the WIKMD_HOST and WIKMD_PORT variable.
export WIKMD_HOST=0.0.0.0
export WIKMD_PORT=80
Custom data path
Usually, wikmd looks for content in the subfolder wiki. In case you want to store your wiki data somewhere else, you can set a custom data path via the environment variable WIKI_DIRECTORY:
export WIKI_DIRECTORY="~/.wikidata"
Custom picture upload
It’s possible to add a custom picture upload path. This is done by adding a IMAGE_ROUTE environment variable.
export IMAGES_ROUTE="media/pictures"
Password protect
It’s possible to password protect changing and removing of files. This can be done using the following parameters:
export PROTECT_EDIT_BY_PASSWORD = 1
export PASSWORD_IN_SHA_256 = <your password in sha 256>
You can generate it via the console or just us a website (ex.https://emn178.github.io/online-tools/sha256.html).
Local Mode
If enabled wikmd will serve all css and js files itself. Otherwise the CDNs jsdelivr, cloudflare, polyfill and unpkg will be used.
Default = False
export LOCAL_MODE=True
Optimize Images
If enabled optimizes images by converting them to webp files. Allowed values are no, lossless and lossy.
lossless | lossy | |
|---|---|---|
| gif | lossless | lossless |
| jpg | near lossless | lossy |
| png | lossless | lossless |
Default = "no"
export OPTIMIZE_IMAGES="lossy"
How to install webp
You need to have the programs cwebp and gif2webp installed to use this feature. Everyone not listed below has to get the binaries themselves: https://developers.google.com/speed/webp/docs/precompiled
| Operating System | How to install |
|---|---|
| Arch & Manjaro | pacman -S libwebp |
| Alpine | apk add libwebp-tools |
| Debian & Ubuntu | apt install webp |
| Fedora | dnf install libwebp-tools |
| macOS homebrew | brew install webp |
| macOS MacPorts | port install webp |
| OpenSuse | zypper install libwebp-tools |
Caching
By default wikmd will cache wiki pages to /dev/shm/wikmd/cache, changing this option changes the directory that cached files will be stored in.
Do not change this location to be within your Markdown documents directory.
Default = "/dev/shm/wikmd/cache"
export CACHE_DIR="/some/other/path"
Search index location
By default wikmd will store its search index in /dev/shm/wikmd/searchindex, changing this option changes the directory that the search index will be stored in.
Do not change this location to be within your Markdown documents directory.
Default = "/dev/shm/wikmd/searchindex"
export SEARCH_DIR="/some/other/path"
Change logging file
In case you need to rename the log file you can use WIKMD_LOGGING_FILE.
Default = wikmd.log
export WIKMD_LOGGING_FILE=custom_log.log
Disable logging
You could optionaly choose to disable logging by setting the environment variable WIKMD_LOGGING to 0.
Default = 1
export WIKMD_LOGGING=0
Enable synchronization with remote repo
You could specify if you want to synchronize the wiki with your personal remote git repo.
To do this, set the environment variable SYNC_WITH_REMOTE to 1.
export SYNC_WITH_REMOTE=1
Also set the environment variable REMOTE_URL to your remote repo URL.
export REMOTE_URL="https://github.com/user/wiki_repo.git"
Custom git user and email
If you want to use custom git user and email, set the environment variables GIT_USER and GIT_EMAIL.
The default user is wikmd and the email is wikmd@no-mail.com.
export GIT_USER="your_user"
export GIT_EMAIL="your_email@domain.com"
Custom main branch name
You can specify a custom name for the main branch of the wiki repo setting the MAIN_BRANCH_NAME environment variable. The default value is the new standard main, but a common older choice is master.
export MAIN_BRANCH_NAME="master"