3.8 KiB
HedgeDoc Docker Image
!!! info "Requirements on your server" - Git - Docker 17.03.1 or higher - Docker Compose
The official docker images are available on quay.io. We currently only support the AMD64 architecture.
The easiest way to get started with HedgeDoc and Docker is to use the following docker-compose.yml
:
git clone https://github.com/hedgedoc/container.git hedgedoc-container
cd hedgedoc-container
docker-compose up
HedgeDoc should now be available at http://127.0.0.1:3000.
You can configure your container with a config file or with env vars.
Check out the configuration docs for more details.
Upgrading
!!! warning
Before you upgrade, always read the release notes.
You can find them on our releases page.
!!! info "Upgrading to 1.7"
Together with changing the name to "HedgeDoc" the default username,
password and database name have been changed in docker-compose.yml
.
In order to migrate the existing database to the new default credentials, run
```shell
docker-compose exec database createuser --superuser -Uhackmd postgres
docker-compose exec database psql -Upostgres -c "alter role hackmd rename to hedgedoc; alter role hedgedoc with password 'password'; alter database hackmd rename to hedgedoc;"
```
before running `docker-compose up`.
You can upgrade to the latest release using these commands:
cd hedgedoc-container # Enter the directory you previously cloned into
git pull # Pull new commits
docker-compose pull # Pull new container images
docker-compose up # Start with the new images
Migrating from HackMD
If you used the docker-hackmd
repository before,
you can migrate to hedgedoc-container
.
hedgedoc-container
is a fork of docker-hackmd
, so you need to replace the upstream URL:
git remote set-url origin https://github.com/hedgedoc/container.git
git pull
Since both codebases diverged since the fork, we recommend that you read the
HedgeDoc release notes at
least since 1.6.0 and follow any instructions present there. A particular issue
that has come up is when handling TLS connections when using a reverse proxy.
You must set the X-Forwarded-Proto
header
correctly.
Backup
If you use a PostgreSQL database, you can leverage this command to create a backup:
docker-compose exec database pg_dump hedgedoc -U hedgedoc > backup.sql
Restore
If you want to restore your PostgreSQL backup, run these commands before starting the application for the first time:
docker-compose up -d database
cat backup.sql | docker exec -i $(docker-compose ps -q database) psql -U hedgedoc
Custom build
The default setting is to use pre-built docker images.
If you want to build your own containers uncomment the build
section in the
docker-compose.yml
and edit the
config.json
.
If you change the database settings and don't use the CMD_DB_URL
make sure
you edit the
.sequelizerc
.
Issues
If you have any problems with or questions about this image, please contact us through a GitHub issue.
You can also reach many of the project maintainers via our matrix room
#hedgedoc:matrix.org
.