parent
c36c4d02a7
commit
42a43462d5
@ -1,5 +0,0 @@ |
|||||||
FROM etherpad/etherpad:1.8.4 |
|
||||||
|
|
||||||
COPY ./rootfs/defaults/settings.json /opt/etherpad-lite/settings.json |
|
||||||
|
|
||||||
EXPOSE 9001 |
|
@ -1,4 +0,0 @@ |
|||||||
build: |
|
||||||
docker build $(BUILD_ARGS) -t $(JITSI_REPO)/etherpad .
|
|
||||||
|
|
||||||
.PHONY: build |
|
@ -1,418 +0,0 @@ |
|||||||
/* |
|
||||||
* This file must be valid JSON. But comments are allowed |
|
||||||
* |
|
||||||
* Please edit settings.json, not settings.json.template |
|
||||||
* |
|
||||||
* Please note that since Etherpad 1.6.0 you can store DB credentials in a |
|
||||||
* separate file (credentials.json). |
|
||||||
*/ |
|
||||||
{ |
|
||||||
/* |
|
||||||
* Name your instance! |
|
||||||
*/ |
|
||||||
"title": "Video Chat", |
|
||||||
|
|
||||||
/* |
|
||||||
* favicon default name |
|
||||||
* alternatively, set up a fully specified Url to your own favicon |
|
||||||
*/ |
|
||||||
"favicon": "favicon.ico", |
|
||||||
|
|
||||||
/* |
|
||||||
* IP and port which etherpad should bind at |
|
||||||
*/ |
|
||||||
"ip": "0.0.0.0", |
|
||||||
"port" : 9001, |
|
||||||
|
|
||||||
/* |
|
||||||
* Option to hide/show the settings.json in admin page. |
|
||||||
* |
|
||||||
* Default option is set to true |
|
||||||
*/ |
|
||||||
"showSettingsInAdminPage" : true, |
|
||||||
|
|
||||||
/* |
|
||||||
* Node native SSL support |
|
||||||
* |
|
||||||
* This is disabled by default. |
|
||||||
* Make sure to have the minimum and correct file access permissions set so |
|
||||||
* that the Etherpad server can access them |
|
||||||
*/ |
|
||||||
|
|
||||||
/* |
|
||||||
"ssl" : { |
|
||||||
"key" : "/path-to-your/epl-server.key", |
|
||||||
"cert" : "/path-to-your/epl-server.crt", |
|
||||||
"ca": ["/path-to-your/epl-intermediate-cert1.crt", "/path-to-your/epl-intermediate-cert2.crt"] |
|
||||||
}, |
|
||||||
*/ |
|
||||||
|
|
||||||
/* |
|
||||||
* The type of the database. |
|
||||||
* |
|
||||||
* You can choose between many DB drivers, for example: dirty, postgres, |
|
||||||
* sqlite, mysql. |
|
||||||
* |
|
||||||
* You shouldn't use "dirty" for for anything else than testing or |
|
||||||
* development. |
|
||||||
* |
|
||||||
* For a complete list of the supported drivers, please consult: |
|
||||||
* https://www.npmjs.com/package/ueberdb2 |
|
||||||
*/ |
|
||||||
|
|
||||||
"dbType" : "dirty", |
|
||||||
|
|
||||||
/* |
|
||||||
* Database specific settings (dependent on dbType). |
|
||||||
* |
|
||||||
* Remember that since Etherpad 1.6.0 you can also store these informations in |
|
||||||
* credentials.json. |
|
||||||
*/ |
|
||||||
"dbSettings" : { |
|
||||||
"filename" : "var/dirty.db" |
|
||||||
}, |
|
||||||
|
|
||||||
/* |
|
||||||
* An Example of MySQL Configuration (commented out). |
|
||||||
* |
|
||||||
* See: https://github.com/ether/etherpad-lite/wiki/How-to-use-Etherpad-Lite-with-MySQL |
|
||||||
*/ |
|
||||||
|
|
||||||
/* |
|
||||||
"dbType" : "mysql", |
|
||||||
"dbSettings" : { |
|
||||||
"user" : "etherpaduser", |
|
||||||
"host" : "localhost", |
|
||||||
"port" : 3306, |
|
||||||
"password": "PASSWORD", |
|
||||||
"database": "etherpad_lite_db", |
|
||||||
"charset" : "utf8mb4" |
|
||||||
}, |
|
||||||
*/ |
|
||||||
|
|
||||||
/* |
|
||||||
* The default text of a pad |
|
||||||
*/ |
|
||||||
"defaultPadText" : "Welcome to Web Chat!\n\n", |
|
||||||
|
|
||||||
/* |
|
||||||
* Default Pad behavior. |
|
||||||
* |
|
||||||
* Change them if you want to override. |
|
||||||
*/ |
|
||||||
"padOptions": { |
|
||||||
"noColors": false, |
|
||||||
"showControls": true, |
|
||||||
"showChat": true, |
|
||||||
"showLineNumbers": true, |
|
||||||
"useMonospaceFont": false, |
|
||||||
"userName": false, |
|
||||||
"userColor": false, |
|
||||||
"rtl": false, |
|
||||||
"alwaysShowChat": false, |
|
||||||
"chatAndUsers": false, |
|
||||||
"lang": "en-gb" |
|
||||||
}, |
|
||||||
|
|
||||||
/* |
|
||||||
* Pad Shortcut Keys |
|
||||||
*/ |
|
||||||
"padShortcutEnabled" : { |
|
||||||
"altF9" : true, /* focus on the File Menu and/or editbar */ |
|
||||||
"altC" : true, /* focus on the Chat window */ |
|
||||||
"cmdShift2" : true, /* shows a gritter popup showing a line author */ |
|
||||||
"delete" : true, |
|
||||||
"return" : true, |
|
||||||
"esc" : true, /* in mozilla versions 14-19 avoid reconnecting pad */ |
|
||||||
"cmdS" : true, /* save a revision */ |
|
||||||
"tab" : true, /* indent */ |
|
||||||
"cmdZ" : true, /* undo/redo */ |
|
||||||
"cmdY" : true, /* redo */ |
|
||||||
"cmdI" : true, /* italic */ |
|
||||||
"cmdB" : true, /* bold */ |
|
||||||
"cmdU" : true, /* underline */ |
|
||||||
"cmd5" : true, /* strike through */ |
|
||||||
"cmdShiftL" : true, /* unordered list */ |
|
||||||
"cmdShiftN" : true, /* ordered list */ |
|
||||||
"cmdShift1" : true, /* ordered list */ |
|
||||||
"cmdShiftC" : true, /* clear authorship */ |
|
||||||
"cmdH" : true, /* backspace */ |
|
||||||
"ctrlHome" : true, /* scroll to top of pad */ |
|
||||||
"pageUp" : true, |
|
||||||
"pageDown" : true |
|
||||||
}, |
|
||||||
|
|
||||||
/* |
|
||||||
* Should we suppress errors from being visible in the default Pad Text? |
|
||||||
*/ |
|
||||||
"suppressErrorsInPadText" : true, |
|
||||||
|
|
||||||
/* |
|
||||||
* If this option is enabled, a user must have a session to access pads. |
|
||||||
* This effectively allows only group pads to be accessed. |
|
||||||
*/ |
|
||||||
"requireSession" : false, |
|
||||||
|
|
||||||
/* |
|
||||||
* Users may edit pads but not create new ones. |
|
||||||
* |
|
||||||
* Pad creation is only via the API. |
|
||||||
* This applies both to group pads and regular pads. |
|
||||||
*/ |
|
||||||
"editOnly" : false, |
|
||||||
|
|
||||||
/* |
|
||||||
* If set to true, those users who have a valid session will automatically be |
|
||||||
* granted access to password protected pads. |
|
||||||
*/ |
|
||||||
"sessionNoPassword" : false, |
|
||||||
|
|
||||||
/* |
|
||||||
* If true, all css & js will be minified before sending to the client. |
|
||||||
* |
|
||||||
* This will improve the loading performance massively, but makes it difficult |
|
||||||
* to debug the javascript/css |
|
||||||
*/ |
|
||||||
"minify" : true, |
|
||||||
|
|
||||||
/* |
|
||||||
* How long may clients use served javascript code (in seconds)? |
|
||||||
* |
|
||||||
* Not setting this may cause problems during deployment. |
|
||||||
* Set to 0 to disable caching. |
|
||||||
*/ |
|
||||||
"maxAge" : 21600, // 60 * 60 * 6 = 6 hours |
|
||||||
|
|
||||||
/* |
|
||||||
* Absolute path to the Abiword executable. |
|
||||||
* |
|
||||||
* Abiword is needed to get advanced import/export features of pads. Setting |
|
||||||
* it to null disables Abiword and will only allow plain text and HTML |
|
||||||
* import/exports. |
|
||||||
*/ |
|
||||||
"abiword" : null, |
|
||||||
|
|
||||||
/* |
|
||||||
* This is the absolute path to the soffice executable. |
|
||||||
* |
|
||||||
* LibreOffice can be used in lieu of Abiword to export pads. |
|
||||||
* Setting it to null disables LibreOffice exporting. |
|
||||||
*/ |
|
||||||
"soffice" : null, |
|
||||||
|
|
||||||
/* |
|
||||||
* Path to the Tidy executable. |
|
||||||
* |
|
||||||
* Tidy is used to improve the quality of exported pads. |
|
||||||
* Setting it to null disables Tidy. |
|
||||||
*/ |
|
||||||
"tidyHtml" : null, |
|
||||||
|
|
||||||
/* |
|
||||||
* Allow import of file types other than the supported ones: |
|
||||||
* txt, doc, docx, rtf, odt, html & htm |
|
||||||
*/ |
|
||||||
"allowUnknownFileEnds" : true, |
|
||||||
|
|
||||||
/* |
|
||||||
* This setting is used if you require authentication of all users. |
|
||||||
* |
|
||||||
* Note: "/admin" always requires authentication. |
|
||||||
*/ |
|
||||||
"requireAuthentication" : false, |
|
||||||
|
|
||||||
/* |
|
||||||
* Require authorization by a module, or a user with is_admin set, see below. |
|
||||||
*/ |
|
||||||
"requireAuthorization" : false, |
|
||||||
|
|
||||||
/* |
|
||||||
* When you use NGINX or another proxy/load-balancer set this to true. |
|
||||||
*/ |
|
||||||
"trustProxy" : false, |
|
||||||
|
|
||||||
/* |
|
||||||
* Privacy: disable IP logging |
|
||||||
*/ |
|
||||||
"disableIPlogging" : false, |
|
||||||
|
|
||||||
/* |
|
||||||
* Time (in seconds) to automatically reconnect pad when a "Force reconnect" |
|
||||||
* message is shown to user. |
|
||||||
* |
|
||||||
* Set to 0 to disable automatic reconnection. |
|
||||||
*/ |
|
||||||
"automaticReconnectionTimeout" : 0, |
|
||||||
|
|
||||||
/* |
|
||||||
* By default, when caret is moved out of viewport, it scrolls the minimum |
|
||||||
* height needed to make this line visible. |
|
||||||
*/ |
|
||||||
"scrollWhenFocusLineIsOutOfViewport": { |
|
||||||
|
|
||||||
/* |
|
||||||
* Percentage of viewport height to be additionally scrolled. |
|
||||||
* |
|
||||||
* E.g.: use "percentage.editionAboveViewport": 0.5, to place caret line in |
|
||||||
* the middle of viewport, when user edits a line above of the |
|
||||||
* viewport |
|
||||||
* |
|
||||||
* Set to 0 to disable extra scrolling |
|
||||||
*/ |
|
||||||
"percentage": { |
|
||||||
"editionAboveViewport": 0, |
|
||||||
"editionBelowViewport": 0 |
|
||||||
}, |
|
||||||
|
|
||||||
/* |
|
||||||
* Time (in milliseconds) used to animate the scroll transition. |
|
||||||
* Set to 0 to disable animation |
|
||||||
*/ |
|
||||||
"duration": 0, |
|
||||||
|
|
||||||
/* |
|
||||||
* Flag to control if it should scroll when user places the caret in the |
|
||||||
* last line of the viewport |
|
||||||
*/ |
|
||||||
"scrollWhenCaretIsInTheLastLineOfViewport": false, |
|
||||||
|
|
||||||
/* |
|
||||||
* Percentage of viewport height to be additionally scrolled when user |
|
||||||
* presses arrow up in the line of the top of the viewport. |
|
||||||
* |
|
||||||
* Set to 0 to let the scroll to be handled as default by Etherpad |
|
||||||
*/ |
|
||||||
"percentageToScrollWhenUserPressesArrowUp": 0 |
|
||||||
}, |
|
||||||
|
|
||||||
/* |
|
||||||
* Users for basic authentication. |
|
||||||
* |
|
||||||
* is_admin = true gives access to /admin. |
|
||||||
* If you do not uncomment this, /admin will not be available! |
|
||||||
* |
|
||||||
* WARNING: passwords should not be stored in plaintext in this file. |
|
||||||
* If you want to mitigate this, please install ep_hash_auth and |
|
||||||
* follow the section "secure your installation" in README.md |
|
||||||
*/ |
|
||||||
|
|
||||||
/* |
|
||||||
"users": { |
|
||||||
"admin": { |
|
||||||
// "password" can be replaced with "hash" if you install ep_hash_auth |
|
||||||
"password": "changeme1", |
|
||||||
"is_admin": true |
|
||||||
}, |
|
||||||
"user": { |
|
||||||
// "password" can be replaced with "hash" if you install ep_hash_auth |
|
||||||
"password": "changeme1", |
|
||||||
"is_admin": false |
|
||||||
} |
|
||||||
}, |
|
||||||
*/ |
|
||||||
|
|
||||||
/* |
|
||||||
* Restrict socket.io transport methods |
|
||||||
*/ |
|
||||||
"socketTransportProtocols" : ["xhr-polling", "jsonp-polling", "htmlfile"], |
|
||||||
|
|
||||||
/* |
|
||||||
* Allow Load Testing tools to hit the Etherpad Instance. |
|
||||||
* |
|
||||||
* WARNING: this will disable security on the instance. |
|
||||||
*/ |
|
||||||
"loadTest": false, |
|
||||||
|
|
||||||
/* |
|
||||||
* Disable indentation on new line when previous line ends with some special |
|
||||||
* chars (':', '[', '(', '{') |
|
||||||
*/ |
|
||||||
|
|
||||||
/* |
|
||||||
"indentationOnNewLine": false, |
|
||||||
*/ |
|
||||||
|
|
||||||
/* |
|
||||||
* Toolbar buttons configuration. |
|
||||||
* |
|
||||||
* Uncomment to customize. |
|
||||||
*/ |
|
||||||
|
|
||||||
/* |
|
||||||
"toolbar": { |
|
||||||
"left": [ |
|
||||||
["bold", "italic", "underline", "strikethrough"], |
|
||||||
["orderedlist", "unorderedlist", "indent", "outdent"], |
|
||||||
["undo", "redo"], |
|
||||||
["clearauthorship"] |
|
||||||
], |
|
||||||
"right": [ |
|
||||||
["importexport", "timeslider", "savedrevision"], |
|
||||||
["settings", "embed"], |
|
||||||
["showusers"] |
|
||||||
], |
|
||||||
"timeslider": [ |
|
||||||
["timeslider_export", "timeslider_returnToPad"] |
|
||||||
] |
|
||||||
}, |
|
||||||
*/ |
|
||||||
|
|
||||||
/* |
|
||||||
* The log level we are using. |
|
||||||
* |
|
||||||
* Valid values: DEBUG, INFO, WARN, ERROR |
|
||||||
*/ |
|
||||||
"loglevel": "INFO", |
|
||||||
|
|
||||||
/* |
|
||||||
* Logging configuration. See log4js documentation for further information: |
|
||||||
* https://github.com/nomiddlename/log4js-node |
|
||||||
* |
|
||||||
* You can add as many appenders as you want here. |
|
||||||
*/ |
|
||||||
"logconfig" : |
|
||||||
{ "appenders": [ |
|
||||||
{ "type": "console" |
|
||||||
//, "category": "access"// only logs pad access |
|
||||||
} |
|
||||||
|
|
||||||
/* |
|
||||||
, { "type": "file" |
|
||||||
, "filename": "your-log-file-here.log" |
|
||||||
, "maxLogSize": 1024 |
|
||||||
, "backups": 3 // how many log files there're gonna be at max |
|
||||||
//, "category": "test" // only log a specific category |
|
||||||
} |
|
||||||
*/ |
|
||||||
|
|
||||||
/* |
|
||||||
, { "type": "logLevelFilter" |
|
||||||
, "level": "warn" // filters out all log messages that have a lower level than "error" |
|
||||||
, "appender": |
|
||||||
{ Use whatever appender you want here } |
|
||||||
} |
|
||||||
*/ |
|
||||||
|
|
||||||
/* |
|
||||||
, { "type": "logLevelFilter" |
|
||||||
, "level": "error" // filters out all log messages that have a lower level than "error" |
|
||||||
, "appender": |
|
||||||
{ "type": "smtp" |
|
||||||
, "subject": "An error occurred in your EPL instance!" |
|
||||||
, "recipients": "bar@blurdybloop.com, baz@blurdybloop.com" |
|
||||||
, "sendInterval": 300 // 60 * 5 = 5 minutes -- will buffer log messages; set to 0 to send a mail for every message |
|
||||||
, "transport": "SMTP", "SMTP": { // see https://github.com/andris9/Nodemailer#possible-transport-methods |
|
||||||
"host": "smtp.example.com", "port": 465, |
|
||||||
"secureConnection": true, |
|
||||||
"auth": { |
|
||||||
"user": "foo@example.com", |
|
||||||
"pass": "bar_foo" |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
*/ |
|
||||||
|
|
||||||
] |
|
||||||
} // logconfig |
|
||||||
} |
|
Loading…
Reference in new issue