meta data for this page
Wiki.js
Installation
Steps:
- Make sure Docker CE is installed
- Create a directory for Wiki.js
- Create a directory for the TLS certificate files
- Create the Docker compose file
- Create the Wiki.js config file
- Create the TLS certificate files
- Start up Wiki.js and run through the installation and configuration process
Create a directory for Wiki.js
mkdir ~/wikijs
Create a directory for the TLS certificate files
mkdir ~/wikijs/certs
Create the Docker compose file
- docker-compose.yml
version: "3" services: db: image: postgres:15-alpine environment: POSTGRES_DB: wiki POSTGRES_PASSWORD: wikijsrocks POSTGRES_USER: wikijs logging: driver: "none" restart: unless-stopped volumes: - db-data:/var/lib/postgresql/data wiki: image: ghcr.io/requarks/wiki:2 depends_on: - db environment: DB_TYPE: postgres DB_HOST: db DB_PORT: 5432 DB_USER: wikijs DB_PASS: wikijsrocks DB_NAME: wiki HTTP_PORT: 3000 SSL_ACTIVE: true SSL_PORT: 3443 SSL_PROVIDER: custom SSL_CERT_FORMAT: pem SSL_KEY_FILE: "/certs/key.pem" SSL_CERT_FILE: "/certs/cert.pem" restart: unless-stopped ports: - "80:3000" - "443:3443" volumes: - ./config.yml:/wiki/config.yml - ./certs:/certs:ro volumes: db-data:
Create the Wiki.js config file
- config.yml
port: $(HTTP_PORT:3000) bindIP: 0.0.0.0 db: type: $(DB_TYPE) host: '$(DB_HOST)' port: $(DB_PORT) user: '$(DB_USER)' pass: '$(DB_PASS)' db: $(DB_NAME) storage: $(DB_FILEPATH) ssl: $(DB_SSL) ssl: enabled: $(SSL_ACTIVE:false) port: $(SSL_PORT:3443) provider: $(SSL_PROVIDER:letsencrypt) format: $(SSL_CERT_FORMAT:pem) domain: $(SSL_DOMAIN:null) subscriberEmail: $(LETSENCRYPT_EMAIL:null) key: $(SSL_KEY_FILE:null) cert: $(SSL_CERT_FILE:null) passphrase: $(SSL_PASSPHRASE:null) dhparam: $(SSL_DHPARAM:null) logLevel: $(LOG_LEVEL:info) logFormat: $(LOG_FORMAT:default) ha: $(HA_ACTIVE)
Create the TLS certificate files
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ~/certs/key.pem -out ~/certs/cert.pem
Start up Wiki.js and run through the installation and configuration process
docker-compose up -d
Afterwards:
- Open the HTTP version of the wiki
- Create an account and set the URL to the HTTP domain
- Open the HTTPS version of the wiki
- Go to
Administration
>SSL
>Redirect HTTP requests to HTTPS
and chooseTurn on