You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
1.6 KiB

  1. # Cryptpad Docker Image
  2. - Configuration via .env file
  3. - Ready for use with traffic
  4. - Using github master for now, release 0.3.0 too old
  5. - Creating customize folder
  6. - Adding config.js to customize folder
  7. - Persistance for datastore and customize folder
  8. ## TODO
  9. ```
  10. cryptpad_1 | Linking config.js
  11. cryptpad_1 | Using secure websockets: true
  12. cryptpad_1 | Using storage adapter: './storage/file'
  13. cryptpad_1 | sed: -e expression #1, char 27: unknown option to `s'
  14. ```
  15. ## Configuration
  16. Set configurations Dockerfile or in .env (using docker-compose) file.
  17. - VERSION=latest
  18. - USE_SSL=false
  19. - STORAGE='./storage/file'
  20. - LOG_TO_STDOUT=true
  21. The .env variables are read by docker-compose and forwarded to docker container.
  22. On runtime, in `bin/container-start.sh` the settings are written to the `config.js` file.
  23. ## Run
  24. With docker
  25. ```
  26. docker build -t xwiki/cryptpad .
  27. docker -d --name cryptpad -p 3000:3000 -v ${PWD}/data:/cryptpad/datastore xwiki/cryptpad
  28. ```
  29. With docker-compose
  30. ```
  31. docker-compose up -d
  32. ```
  33. ## Persistance
  34. The docker-compose file is preconfigured to persist folders
  35. - cryptpad/datastore --> ./data/customize
  36. - cryptpad/customize --> ./data/customize
  37. In customize included find your configuration in `config.js`.
  38. The data folder is ignored by git, so if you want to add your customizations to git versioning change the volume:
  39. ```
  40. ./customize:/cryptpad/customize:rw
  41. ```
  42. ## SSL Proxy
  43. The [traefik](https://traefik.io/) proxy has builtin Let'sEncrypt for easy SSL setup.
  44. In the docker-compose file you can find preset lables for usage with traefik.
  45. [Traefik Docker Image](https://hub.docker.com/_/traefik/)
  46. Alternativly just use plain old nginx.