Installing dokuwiki using Docker and Ubuntu
Why?
We need to organize our docs and information about the gcn and bolha collective and dokuwiki is the best wiki because we don't need a database, it's a flatfile system.
Fast, flexible and easy to backup.
What do I need to install?
You need a Linux Server with Docker, and Docker-compose installed.
What's my setup?
- ProxMox
- KVM
- Ubuntu 20.04
- Docker
- Docker-compose
- External Nginx
- Reverse Proxy Configuration
- LetsEncrypt Certificate
Where I can find more about the project?
How I can install it?
first, let's create the directories
mkdir -p /opt/dokuwiki/docker
mkdir -p /opt/dokuwiki/data
then, let's create the docker-compose file
cd /opt/dokuwiki/docker
vim docker-compose.yaml
here follows the content, change the parameters for you setup
version: '3'
services:
dokuwiki:
image: lscr.io/linuxserver/dokuwiki:latest
container_name: dokuwiki
environment:
- PUID=1000
- PGID=1000
- TZ=Etc/UTC
volumes:
- dokuwiki_config:/config
ports:
- 8081:80
restart: unless-stopped
volumes:
dokuwiki_config:
driver_opts:
type: none
device: /opt/dokuwiki/data
o: bind
all right, let's spin up the dokuwiki
docker-compose up -d
No finish the configuration using the web browser
https://dokuwiki.domain.tld/install.php
external nginx
In our case, Dokuwiki is behind an External NGINX Reverse Proxy.
Here follow the config snippet used
upstream dokuwiki {
server your_docker_host_ip:your_dokuwiki_port fail_timeout=0;
}
server {
listen 144.217.95.91:80;
server_name dokuwiki.domain.tld;
return 301 https://dokuwkrequest_uri;
}
server {
listen 144.217.95.91:443 ssl http2;
server_name dokuwiki.domain.tld;
access_log /var/log/nginx/dokuwiki-domain-tld.log;
error_log /var/log/nginx/dokuwiki-domain-tld.log;
ssl_certificate /etc/letsencrypt/live/domain.tld/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domain.tld/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_dhparam /etc/letsencrypt/dh-param.pem;
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
ssl_session_cache shared:SSL:10m;
ssl_session_tickets off;
location / {
proxy_pass http://dokuwiki;
}
}
That's it :)
[s]
Did you like our content?
We have a lot to share; visit our site!
Our fediverse services ;)
- mastodon => https://bolha.us
- mastopoet => https://poet.bolha.us
- elk => https://elk.bolha.us
- pinafore => https://pinafore.bolha.us
- pixelfed => https://bolha.photos
- lemmy => https://bolha.social
- writefreely => https://bolha.blog
- bookwyrm => https://bolha.review
- funkwhale => https://bolha.studio
- friendica => https://bolha.network
Chat and video? We have it!
- matrix => https://bolha.chat
- jitsi => https://bolha.video
Translation tools
- libretranslate => https://libretranslate.bolha.tools
- lingva => https://translate.bolha.tools
Video Platform Frontends
- invidious => https://bolha.in
Text Editors
- hedgeDoc => https://notes.bolha.tools
- wise Mapping => https://mindmap.bolha.tools
- overleaf => https://overleaf.bolha.tools
- mermaid => https://mermaid.bolha.tools
You can also visit our hacking space!
Follow our founder!
- https://bolha.us/@gutocarvalho
- https://bolha.photos/@gutocarvalho
- https://bolha.forum@gutocarvalho
- https://bolha.blog/@gutocarvalho
- https://bolha.review/@gutocarvalho
- https://bolha.studio/@gutocarvalho
- https://bolha.network/@gutocarvalho
- matrix => @bolha.chat@gutocarvalho
Follow the status of our tools
Do you want to support us? You can!
- https://www.patreon.com/bolha
- https://apoia.se/bolha
- pix@bolha.us (local brazilian wire transfer)
See you!
[s]