Debian based version:
Alpine based version:
- git (https://git-scm.com/)
- docker (https://www.docker.com/community-edition)
- docker-compose (https://docs.docker.com/compose/install/)
See more here: https://docs.docker.com/
- Install docker and docker-compose, "Docker for Windows" or "Docker for Mac"
- Run
git clone https://github.com/hackmdio/docker-hackmd.git
- Change to the directory
docker-hackmd
directory - Run
docker-compose up
in your terminal - Wait until see the log
HTTP Server listening at port 3000
, it will take few minutes based on your internet connection. - Open http://127.0.0.1:3000
Start your docker and enter the terminal, follow below commands:
cd docker-hackmd ## enter the directory
git pull ## pull new commits
docker-compose pull ## pull new containers
docker-compose up ## turn on
We don't use LZString to compress socket.io data and DB data after version 0.5.0. Please run the migration tool if you're upgrading from the old version.
- Stop your hackmd containers
- Modify
docker-compose.yml
, add expose ports5432
tohackmdPostgres
docker-compose up
to start your hackmd containers- Backup DB (see below)
- Git clone above
migration-to-0.5.0
andnpm install
(see more on above link) - Modify
config.json
inmigration-to-0.5.0
, change itsusername
,password
andhost
to your docker - Run migration (see more on above link)
- Stop your hackmd containers
- Modify
docker-compose.yml
, remove expose ports5432
inhackmdPostgres
- git pull in
docker-hackmd
, update to version 0.5.0 (see below)
Start your docker and enter the terminal, follow below commands:
docker-compose exec hackmdPostgres pg_dump hackmd -U hackmd > backup.sql
Similar to backup steps, but last command is
cat backup.sql | docker exec -i $(docker-compose ps -q hackmdPostgres) psql -U hackmd
The default setting would use pre-build docker image, 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 HMD_DB_URL
make sure you edit the .sequelizerc
.
View license information for the software contained in this image.
This image is officially supported on Docker version 17.03.1-CE.
Support for older versions (down to 1.12) is provided on a best-effort basis.
Please see the Docker installation documentation for details on how to upgrade your Docker daemon.
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 the hackmd
channel on Gitter.
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
Happy HackMD 😄