Post

WikiJS - A Modern Open Source Wiki

WikiJS - A Modern Open Source Wiki

WikiJS is the most powerful and extensible open source Wiki software

Make documentation a joy to write using Wiki.js’s beautiful and intuitive interface!

I used this before i migrated to a static site for this Wiki/Docs

Kubernetes Manifest

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
---
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: wikijs
    app.kubernetes.io/instance: wikijs
    app.kubernetes.io/name: wikijs
  name: wikijs
  namespace: wikijs
spec:
  replicas: 1
  strategy:
    type: Recreate
  selector:
    matchLabels:
      app: wikijs
  template:
    metadata:
      labels:
        app: wikijs
        app.kubernetes.io/name: wikijs
    spec:
      nodeSelector:
        worker: "true"
      containers:
      - image: ghcr.io/requarks/wiki:2
        name: wikijs
        ports:
        - containerPort: 3000
          name: web
          protocol: TCP
        env:
        - name: TZ
          value: Europe/London
        - name: DB_TYPE
          value: postgres
        - name: DB_HOST
          value: postgresql.postgresql
        - name: DB_PORT
          value: "5432"
        - name: DB_USER
          value: wikijs
        - name: DB_PASS
          value: [REDACTED]
        - name: DB_NAME
          value: wikijs
---
apiVersion: v1
kind: Service
metadata:
  labels:
    app: wikijs
  name: wikijs
  namespace: wikijs
spec:
  ports:
  - name: web-tcp
    port: 3000
    protocol: TCP
    targetPort: 3000
  selector:
    app: wikijs
---
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: wikijs
  namespace: wikijs
  annotations: 
    kubernetes.io/ingress.class: traefik-external
spec:
  entryPoints:
    - websecure
  routes:
    - match: Host(`wiki.f9.casa`)
      kind: Rule
      services:
        - name: wikijs
          port: 3000
      middlewares:
        - name: default-headers
          namespace: default
  tls:
    secretName: f9-casa-tls

Docker Compose

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
version: '3.9'
services:
  wikijs:
    image: ghcr.io/requarks/wiki:2
    hostname: wikijs
    networks:
      - traefik-public
    environment:
      TZ: Europe/London
      DB_TYPE: postgres
      DB_HOST: postgresql
      DB_PORT: 5432
      DB_USER: wikijs
      DB_PASS: [REDACTED]
      DB_NAME: wikijs
    deploy:
      labels:
        - "traefik.enable=true"
        - "traefik.http.routers.wikijs.rule=Host(`wiki.f9.casa`)"
        - "traefik.http.services.wikijs.loadbalancer.server.port=3000"
        - "traefik.http.routers.wikijs.entrypoints=websecure"
        - "traefik.http.routers.wikijs.tls=true"
        - "traefik.http.routers.wikijs.tls.certresolver=letsencrypt"
        
      mode: replicated
networks:
  traefik-public:
    external: true
This post is licensed under CC BY 4.0 by the author.