3.3 KiB
3.3 KiB
Manual Installation
Requirements on your server
- Node.js 10.13 or up
- Database (PostgreSQL, MySQL, MariaDB, SQLite, MSSQL)
The database must use charsetutf8. This is typically the default in PostgreSQL and SQLite.
In MySQL and MariaDB UTF-8 might need to be set withalter database <DBNAME> character set utf8 collate utf8_bin;
Be aware of older MySQL and MariaDB versions which sometimes use shorter representations of UTF-8 than 4 bytes. This can break if symbols with more bytes are used. You can usealter database <DBNAME> character set utf8mb4 COLLATE utf8mb4_unicode_cito be on the safe side. - NPM (and its dependencies, node-gyp)
- Yarn
- Bash (for the setup script)
- For building the HedgeDoc frontend you need a machine with at least 2 GB RAM.
- Starting with release 1.7 the release tarball includes the frontend, so building it yourself is not necessary.
Instructions
- Check if you meet the requirements at the top of this document.
- Download a release tarball and extract it.
Alternatively, you can use Git to clone the repository and checkout a release, e.g. with
git clone -b 1.7.2 https://github.com/hedgedoc/hedgedoc.git. - Enter the directory and type
bin/setup, which will install the dependencies and create configs. - Modify the file named
config.jsonor configure HedgeDoc through environment variables which will overwrite the configs, see docs here. - If using the release tarball for 1.7.0 or newer, this step can be skipped.
Build the frontend bundle byyarn run build(useyarn run devif you are in development) - Modify the file named
.sequelizerc, change the value of the variableurlto your db connection string. For example:postgres://username:password@localhost:5432/hedgedocmysql://username:password@localhost:3306/hedgedocsqlite:///opt/hedgedoc/hedgedoc.sqlite(note that you need to use an absolute path to the SQLite file)
- It is recommended to start your server manually once:
NODE_ENV=production yarn start, this way it's easier to see warnings or errors that might occur (leave outNODE_ENV=productionfor development). - Run the server as you like (node, forever, pm2, SystemD, Init-Scripts)
How to upgrade your installation
If you are upgrading HedgeDoc from an older version, follow these steps:
- Check if you meet the requirements at the top of this document.
- Verify which version you were running before and take a look at migrations and breaking changes to see if additional steps, or configuration changes are necessary!
- Fully stop your old HedgeDoc server.
git pullor unzip a new release in the directory.- Run
bin/setup. This will take care of installing dependencies. It is safe to run on an existing installation. - Build front-end bundle by
yarn run build(useyarn run devif you are in development). - It is recommended to start your server manually once:
NODE_ENV=production yarn start, this way it's easier to see warnings or errors that might occur (leave outNODE_ENV=productionfor development). - You can now restart the HedgeDoc server!