Git Storage

Git Storage

Wiki.js supports storing documentation in git storage using the Git module.


Generate SSH Keys
You can skip this section entirely, if you already have existing SSH keys.
  1. Open a Web Terminal and generate the keys in /app/data/ssh/id_rsa (see below). Be sure to leave the passphrase empty as required by Wiki.js.
    ssh-keygen -t rsa -b 4096
    Generating public/private rsa key pair.
    Enter file in which to save the key (/root/.ssh/id_rsa): /app/data/ssh/id_rsa
    Enter passphrase (empty for no passphrase): 
    Enter same passphrase again: 
    Your identification has been saved in /app/data/ssh/id_rsa
    Your public key has been saved in /app/data/ssh/id_rsa.pub
    ...
    chown -R cloudron:cloudron /app/data/ssh
  1. Add /app/data/ssh/id_rsa.pub as SSH public key into GitHub/GitLab/Gitea/Gogs.


Create repository directory
Open a Web Terminal and run the following commands:
mkdir -p /app/data/repo
chown -R cloudron:cloudron /app/data/repo


Configure Git storage
  1. Inside Wikijs, go to Modules -> Storage and select Git.
  2. If you generated the SSH keys as per the instructions above, set the SSH Private Key Mode to path and set SSH Private Key Path to /app/data/ssh/id_rsa. Alternately, you can also set this to contents and paste in your existing SSH private key.
  3. Set the Local Repository Path to /app/data/repo (created above)
  4. Newer GitHub repositories use the branch name as main instead of master. Use the appropriate branch name in Wiki.js config page.