From 1e07d3a1570de47cffbbecb621fda9f891daec5e Mon Sep 17 00:00:00 2001 From: interfect Date: Sat, 15 Dec 2018 10:10:01 -0800 Subject: [PATCH 1/2] Persist all directories with Docker --- docker-compose.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docker-compose.yml b/docker-compose.yml index 22cc3d59e..fab74870a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -21,3 +21,8 @@ services: volumes: - ./data/files:/cryptpad/datastore:rw - ./data/customize:/cryptpad/customize:rw + - ./data/pins:/cryptpad/pins:rw + - ./data/blob:/cryptpad/blob:rw + - ./data/blobstage:/cryptpad/blobstage:rw + - ./data/tasks:/cryptpad/tasks:rw + - ./data/block:/cryptpad/block:rw From b817ac1511895c99171c5011a6384b21444a170c Mon Sep 17 00:00:00 2001 From: interfect Date: Sat, 15 Dec 2018 10:20:03 -0800 Subject: [PATCH 2/2] Improve Docker documentation in the repo Now it will link to the wiki too. --- docs/cryptpad-docker.md | 29 ++++++++++++++++++++++++----- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/docs/cryptpad-docker.md b/docs/cryptpad-docker.md index 027792c2e..a41e2ad75 100644 --- a/docs/cryptpad-docker.md +++ b/docs/cryptpad-docker.md @@ -1,5 +1,11 @@ # Cryptpad Docker Image +Cryptpad includes support for building a Docker image and running it to provide a Cryptpad instance. You can manage the container manually, or let Docker Compose manage it for you. + +A full tutorial is available [on the Cryptpad Github wiki](https://github.com/xwiki-labs/cryptpad/wiki/Docker-(with-Nginx-and-Traefik)). This document provides a brief overview. + +## Features + - Configuration via .env file - Ready for use with traffic - Using github master for now, release 0.3.0 too old @@ -9,14 +15,22 @@ ## Run -Run from the cryptpad source directory: +Run from the cryptpad source directory, keeping instance state in `/var/cryptpad`: ``` docker build -t xwiki/cryptpad . -docker run --restart=always -d --name cryptpad -p 3000:3000 -v /var/cryptpad:/cryptpad/datastore xwiki/cryptpad +docker run --restart=always -d --name cryptpad -p 3000:3000 \ +-v /var/cryptpad/files:/cryptpad/datastore \ +-v /var/cryptpad/customize:/cryptpad/customize +-v /var/cryptpad/blob:/cryptpad/blob \ +-v /var/cryptpad/blobstage:/cryptpad/blobstage \ +-v /var/cryptpad/pins:/cryptpad/pins \ +-v /var/cryptpad/tasks:/cryptpad/tasks \ +-v /var/cryptpad/block:/cryptpad/block \ +xwiki/cryptpad ``` -Or, using docker-compose +Or, using docker-compose and the included `docker-compose.yml`, keeping instance state in the current directory under `./data`: ``` docker-compose up -d @@ -39,10 +53,15 @@ On runtime, in `bin/container-start.sh` the settings are written to the `config. The docker-compose file is preconfigured to persist folders -- cryptpad/datastore --> ./data/customize +- cryptpad/datastore --> ./data/files - cryptpad/customize --> ./data/customize +- cryptpad/pins --> ./data/pins +- cryptpad/blob --> ./data/blob +- cryptpad/blobstage --> ./data/blobstage +- cryptpad/tasks --> ./data/tasks +- cryptpad/block --> ./data/block -In customize included find your configuration in `config.js`. +Your configuration file will be in `./data/customize/config.js`. The data folder is ignored by git, so if you want to add your customizations to git versioning change the volume: