SMB - External Storage (Networkshare) Sync

  • What is the fastest way to update the document server?
  • Onlyoffice connector App Version 7.5.8

Since you are using Portainer the easiest way, I do believe this is so, is to stop and remove currently running Document Server container and run a new one with actual version on the same port. Also, if you are using any mounted volumes then make sure to point them too.

I did the update to 7.2.2 but unfortunately no improvement :frowning:

That’s unfortunate.

Please provide a bit more information:

  • where do you exactly renaming files to update them for Document Server? In your storage or in Nextcloud?
  • when you are saving a file in your storage it is updated in Nextcloud after 5-ish minutes, so after that the version loads with the final content in the editors, is that so?
  • is is possible to record a video demonstration of your actions with updating file for Document Server?

Also, please run a small test with the storage - after editing a document in your storage try downloading it to your PC and checking if the recently added content persists in the document. Let me know the results.

  • I rename it in my external storage. In nextcloud the files are up to date when I download them. Is there a cache or something in the document server or is there a command to be able to update the files in the document server?
  • No, after 5 minutens and more nothing happens.

Thanks for providing the information.
We are checking the situation.

the same problem, updates only go in one direction from nextcloud to smb share. Is there any solution?

Hello @a.maltsev

Please specify the storage that you are using.

nextcloud 25.0.5 with smb\cifs external storage on windows server 2019. Onlyoffice server 7.2.2

Thank you for the info.
Note that you are using an outdated version of Document Server. Please update you current instance to the actual version 7.3.3-49 and check the situation again.

Hello all,
the problem is solved. In the default.json there are some parameters which have to be adjusted. Unfortunately, I am no longer sure which ones. Can you please provide me your original default.json so I can compare it with mine?

Thanks in advance! Regards Marco

Hello @marco

Here you can find default.json of the fresh installation of Document Server:

{
	"statsd": {
		"useMetrics": false,
		"host": "localhost",
		"port": "8125",
		"prefix": "ds."
	},
	"log": {
		"filePath": "",
		"options": {
			"replaceConsole": true
		}
	},
	"queue": {
		"type": "rabbitmq",
		"visibilityTimeout": 300,
		"retentionPeriod": 900
	},
	"storage": {
		"name": "storage-fs",
		"fs": {
			"folderPath": "",
			"urlExpires": 900,
			"secretString": "verysecretstring"
		},
		"region": "",
		"endpoint": "http://localhost/s3",
		"bucketName": "cache",
		"storageFolderName": "files",
		"cacheFolderName": "data",
		"urlExpires": 604800,
		"accessKeyId": "AKID",
		"secretAccessKey": "SECRET",
		"sslEnabled": false,
		"s3ForcePathStyle": true,
		"externalHost": ""
	},
	"rabbitmq": {
		"url": "amqp://guest:guest@localhost:5672",
		"socketOptions": {},
		"exchangepubsub": "ds.pubsub",
		"queueconverttask": "ds.converttask",
		"queueconvertresponse": "ds.convertresponse",
		"exchangeconvertdead": "ds.exchangeconvertdead",
		"queueconvertdead": "ds.convertdead",
		"queuedelayed": "ds.delayed"
	},
	"activemq": {
		"connectOptions": {
			"port": 5672,
			"host": "localhost",
			"name": "admin",
			"reconnect": false
		},
		"queueconverttask": "ds.converttask",
		"queueconvertresponse": "ds.convertresponse",
		"queueconvertdead": "ActiveMQ.DLQ",
		"queuedelayed": "ds.delayed",
		"topicpubsub": "ds.pubsub"
	},
	"dnscache": {
		"enable" : true,
		"ttl" : 300,
		"cachesize" : 1000
	},
	"openpgpjs": {
		"config": {
		},
		"encrypt": {
			"passwords": ["verysecretstring"]
		},
		"decrypt": {
			"passwords": ["verysecretstring"]
		}
	},
	"bottleneck": {
		"getChanges": {
		}
	},
	"wopi": {
		"enable": false,
		"host" : "",
		"htmlTemplate" : "../../web-apps/apps/api/wopi",
		"wopiZone" : "external-http",
		"favIconUrlWord" : "/web-apps/apps/documenteditor/main/resources/img/favicon.ico",
		"favIconUrlCell" : "/web-apps/apps/spreadsheeteditor/main/resources/img/favicon.ico",
		"favIconUrlSlide" : "/web-apps/apps/presentationeditor/main/resources/img/favicon.ico",
		"fileInfoBlockList" : ["FileUrl"],
		"pdfView": ["pdf", "djvu", "xps", "oxps"],
		"wordView": ["doc", "dotx", "dotm", "dot", "fodt", "ott", "rtf", "mht", "html", "htm", "xml", "epub", "fb2"],
		"wordEdit": ["docx", "docm", "docxf", "oform", "odt", "txt"],
		"cellView": ["xls", "xlsb", "xltx", "xltm", "xlt", "fods", "ots"],
		"cellEdit": ["xlsx", "xlsm", "ods", "csv"],
		"slideView": ["ppt", "ppsx", "ppsm", "pps", "potx", "potm", "pot", "fodp", "otp"],
		"slideEdit": ["pptx", "pptm", "odp"],
		"publicKey": "BgIAAACkAABSU0ExAAgAAAEAAQD/NVqekFNi8X3p6Bvdlaxm0GGuggW5kKfVEQzPGuOkGVrz6DrOMNR+k7Pq8tONY+1NHgS6Z+v3959em78qclVDuQX77Tkml0xMHAQHN4sAHF9iQJS8gOBUKSVKaHD7Z8YXch6F212YSUSc8QphpDSHWVShU7rcUeLQsd/0pkflh5+um4YKEZhm4Mou3vstp5p12NeffyK1WFZF7q4jB7jclAslYKQsP82YY3DcRwu5Tl/+W0ifVcXze0mI7v1reJ12pKn8ifRiq+0q5oJST3TRSrvmjLg9Gt3ozhVIt2HUi3La7Qh40YOAUXm0g/hUq2BepeOp1C7WSvaOFHXe6Hqq",
		"modulus": "qnro3nUUjvZK1i7UqeOlXmCrVPiDtHlRgIPReAjt2nKL1GG3SBXO6N0aPbiM5rtK0XRPUoLmKu2rYvSJ/Kmkdp14a/3uiEl788VVn0hb/l9OuQtH3HBjmM0/LKRgJQuU3LgHI67uRVZYtSJ/n9fYdZqnLfveLsrgZpgRCoabrp+H5Uem9N+x0OJR3LpToVRZhzSkYQrxnERJmF3bhR5yF8Zn+3BoSiUpVOCAvJRAYl8cAIs3BwQcTEyXJjnt+wW5Q1VyKr+bXp/39+tnugQeTe1jjdPy6rOTftQwzjro81oZpOMazwwR1aeQuQWCrmHQZqyV3Rvo6X3xYlOQnlo1/w==",
		"exponent": "AQAB",
		"privateKey": "MIIEowIBAAKCAQEAqnro3nUUjvZK1i7UqeOlXmCrVPiDtHlRgIPReAjt2nKL1GG3SBXO6N0aPbiM5rtK0XRPUoLmKu2rYvSJ/Kmkdp14a/3uiEl788VVn0hb/l9OuQtH3HBjmM0/LKRgJQuU3LgHI67uRVZYtSJ/n9fYdZqnLfveLsrgZpgRCoabrp+H5Uem9N+x0OJR3LpToVRZhzSkYQrxnERJmF3bhR5yF8Zn+3BoSiUpVOCAvJRAYl8cAIs3BwQcTEyXJjnt+wW5Q1VyKr+bXp/39+tnugQeTe1jjdPy6rOTftQwzjro81oZpOMazwwR1aeQuQWCrmHQZqyV3Rvo6X3xYlOQnlo1/wIDAQABAoIBAQCKtUSBs8tNYrGTQTlBHXrwpkDg+u7WSZt5sEcfnkxA39BLtlHU8gGO0E9Ihr8GAL+oWjUsEltJ9GTtN8CJ9lFdPVS8sTiCZR/YQOggmFRZTJyVzMrkXgF7Uwwiu3+KxLiTOZx9eRhfDBlTD8W9fXaegX2i2Xp2ohUhBHthEBLdaZTWFi5Sid/Y0dDzBeP6UIJorZ5D+1ybaeIVHjndpwNsIEUGUxPFLrkeiU8Rm4MJ9ahxfywcP7DjQoPGY9Ge5cBhpxfzERWf732wUD6o3+L9tvOBU00CLVjULbGZKTVE2FJMyXK9jr6Zor9Mkhomp6/8Agkr9rp+TPyelFGYEz8hAoGBAOEc09CrL3eYBkhNEcaMQzxBLvOGpg8kaDX5SaArHfl9+U9yzRqss4ARECanp9HuHfjMQo7iejao0ngDjL7BNMSaH74QlSsPOY2iOm8Qvx8/zb7g4h9r1zLjFZb3mpSA4snRZvvdiZ9ugbuVPmhXnDzRRMg45MibJeeOTJNylofRAoGBAMHfF/WutqKDoX25qZo9m74W4bttOj6oIDk1N4/c6M1Z1v/aptYSE06bkWngj9P46kqjaay4hgMtzyGruc5aojPx5MHHf5bo14+Jv4NzYtR2llrUxO+UJX7aCfUYXI7RC93GUmhpeQ414j7SNAXec58d7e+ETw+6cHiAWO4uOSTPAoGATPq5qDLR4Zi4FUNdn8LZPyKfNqHF6YmupT5hIgd8kZO1jKiaYNPL8jBjkIRmjBBcaXcYD5p85nImvumf2J9jNxPpZOpwyC/Fo5xlVROp97qu1eY7DTmodntXJ6/2SXAlnZQhHmHsrPtyG752f+HtyJJbbgiem8cKWDu+DfHybfECgYBbSLo1WiBwgN4nHqZ3E48jgA6le5azLeKOTTpuKKwNFMIhEkj//t7MYn+jhLL0Mf3PSwZU50Vidc1To1IHkbFSGBGIFHFFEzl8QnXEZS4hr/y3o/teezj0c6HAn8nlDRUzRVBEDXWMdV6kCcGpCccTIrqHzpqTY0vV0UkOTQFnDQKBgAxSEhm/gtCYJIMCBe+KBJT9uECV5xDQopTTjsGOkd4306EN2dyPOIlAfwM6K/0qWisa0Ei5i8TbRRuBeTTdLEYLqXCJ7fj5tdD1begBdSVtHQ2WHqzPJSuImTkFi9NXxd1XUyZFM3y6YQvlssSuL7QSxUIEtZHnrJTt3QDd10dj",
		"publicKeyOld": "BgIAAACkAABSU0ExAAgAAAEAAQD/NVqekFNi8X3p6Bvdlaxm0GGuggW5kKfVEQzPGuOkGVrz6DrOMNR+k7Pq8tONY+1NHgS6Z+v3959em78qclVDuQX77Tkml0xMHAQHN4sAHF9iQJS8gOBUKSVKaHD7Z8YXch6F212YSUSc8QphpDSHWVShU7rcUeLQsd/0pkflh5+um4YKEZhm4Mou3vstp5p12NeffyK1WFZF7q4jB7jclAslYKQsP82YY3DcRwu5Tl/+W0ifVcXze0mI7v1reJ12pKn8ifRiq+0q5oJST3TRSrvmjLg9Gt3ozhVIt2HUi3La7Qh40YOAUXm0g/hUq2BepeOp1C7WSvaOFHXe6Hqq",
		"modulusOld": "qnro3nUUjvZK1i7UqeOlXmCrVPiDtHlRgIPReAjt2nKL1GG3SBXO6N0aPbiM5rtK0XRPUoLmKu2rYvSJ/Kmkdp14a/3uiEl788VVn0hb/l9OuQtH3HBjmM0/LKRgJQuU3LgHI67uRVZYtSJ/n9fYdZqnLfveLsrgZpgRCoabrp+H5Uem9N+x0OJR3LpToVRZhzSkYQrxnERJmF3bhR5yF8Zn+3BoSiUpVOCAvJRAYl8cAIs3BwQcTEyXJjnt+wW5Q1VyKr+bXp/39+tnugQeTe1jjdPy6rOTftQwzjro81oZpOMazwwR1aeQuQWCrmHQZqyV3Rvo6X3xYlOQnlo1/w==",
		"exponentOld": "AQAB",
		"privateKeyOld": "MIIEowIBAAKCAQEAqnro3nUUjvZK1i7UqeOlXmCrVPiDtHlRgIPReAjt2nKL1GG3SBXO6N0aPbiM5rtK0XRPUoLmKu2rYvSJ/Kmkdp14a/3uiEl788VVn0hb/l9OuQtH3HBjmM0/LKRgJQuU3LgHI67uRVZYtSJ/n9fYdZqnLfveLsrgZpgRCoabrp+H5Uem9N+x0OJR3LpToVRZhzSkYQrxnERJmF3bhR5yF8Zn+3BoSiUpVOCAvJRAYl8cAIs3BwQcTEyXJjnt+wW5Q1VyKr+bXp/39+tnugQeTe1jjdPy6rOTftQwzjro81oZpOMazwwR1aeQuQWCrmHQZqyV3Rvo6X3xYlOQnlo1/wIDAQABAoIBAQCKtUSBs8tNYrGTQTlBHXrwpkDg+u7WSZt5sEcfnkxA39BLtlHU8gGO0E9Ihr8GAL+oWjUsEltJ9GTtN8CJ9lFdPVS8sTiCZR/YQOggmFRZTJyVzMrkXgF7Uwwiu3+KxLiTOZx9eRhfDBlTD8W9fXaegX2i2Xp2ohUhBHthEBLdaZTWFi5Sid/Y0dDzBeP6UIJorZ5D+1ybaeIVHjndpwNsIEUGUxPFLrkeiU8Rm4MJ9ahxfywcP7DjQoPGY9Ge5cBhpxfzERWf732wUD6o3+L9tvOBU00CLVjULbGZKTVE2FJMyXK9jr6Zor9Mkhomp6/8Agkr9rp+TPyelFGYEz8hAoGBAOEc09CrL3eYBkhNEcaMQzxBLvOGpg8kaDX5SaArHfl9+U9yzRqss4ARECanp9HuHfjMQo7iejao0ngDjL7BNMSaH74QlSsPOY2iOm8Qvx8/zb7g4h9r1zLjFZb3mpSA4snRZvvdiZ9ugbuVPmhXnDzRRMg45MibJeeOTJNylofRAoGBAMHfF/WutqKDoX25qZo9m74W4bttOj6oIDk1N4/c6M1Z1v/aptYSE06bkWngj9P46kqjaay4hgMtzyGruc5aojPx5MHHf5bo14+Jv4NzYtR2llrUxO+UJX7aCfUYXI7RC93GUmhpeQ414j7SNAXec58d7e+ETw+6cHiAWO4uOSTPAoGATPq5qDLR4Zi4FUNdn8LZPyKfNqHF6YmupT5hIgd8kZO1jKiaYNPL8jBjkIRmjBBcaXcYD5p85nImvumf2J9jNxPpZOpwyC/Fo5xlVROp97qu1eY7DTmodntXJ6/2SXAlnZQhHmHsrPtyG752f+HtyJJbbgiem8cKWDu+DfHybfECgYBbSLo1WiBwgN4nHqZ3E48jgA6le5azLeKOTTpuKKwNFMIhEkj//t7MYn+jhLL0Mf3PSwZU50Vidc1To1IHkbFSGBGIFHFFEzl8QnXEZS4hr/y3o/teezj0c6HAn8nlDRUzRVBEDXWMdV6kCcGpCccTIrqHzpqTY0vV0UkOTQFnDQKBgAxSEhm/gtCYJIMCBe+KBJT9uECV5xDQopTTjsGOkd4306EN2dyPOIlAfwM6K/0qWisa0Ei5i8TbRRuBeTTdLEYLqXCJ7fj5tdD1begBdSVtHQ2WHqzPJSuImTkFi9NXxd1XUyZFM3y6YQvlssSuL7QSxUIEtZHnrJTt3QDd10dj",
		"refreshLockInterval": "10m"
	},
	"tenants": {
		"baseDir": "",
		"baseDomain": "",
		"filenameSecret": "secret.key",
		"filenameLicense": "license.lic",
		"defaultTenant": "localhost",
		"cache" : {
			"stdTTL": 300,
			"checkperiod": 60,
			"useClones": false
		}
	},
	"services": {
		"CoAuthoring": {
			"server": {
				"port": 8000,
				"workerpercpu": 1,
				"mode": "development",
				"limits_tempfile_upload": 104857600,
				"limits_image_size": 26214400,
				"limits_image_download_timeout": {
					"connectionAndInactivity": "2m",
					"wholeCycle": "2m"
				},
				"callbackRequestTimeout": {
					"connectionAndInactivity": "10m",
					"wholeCycle": "10m"
				},
				"healthcheckfilepath": "../public/healthcheck.docx",
				"savetimeoutdelay": 5000,
				"edit_singleton": false,
				"forgottenfiles": "forgotten",
				"forgottenfilesname": "output",
				"maxRequestChanges": 20000,
				"openProtectedFile": true,
				"editorDataStorage": "editorDataMemory",
				"assemblyFormatAsOrigin": true,
				"newFileTemplate" : "../../document-templates/new",
				"downloadFileAllowExt": ["pdf", "xlsx"],
				"tokenRequiredParams": true
			},
			"requestDefaults": {
				"headers": {
					"User-Agent": "Node.js/6.13",
					"Connection": "Keep-Alive"
				},
				"gzip": true,
				"rejectUnauthorized": true
			},
			"autoAssembly": {
				"enable": false,
				"interval": "5m",
				"step": "1m"
			},
			"utils": {
				"utils_common_fontdir": "null",
				"utils_fonts_search_patterns": "*.ttf;*.ttc;*.otf",
				"limits_image_types_upload": "jpg;jpeg;jpe;png;gif;bmp"
			},
			"sql": {
				"type": "postgres",
				"tableChanges": "doc_changes",
				"tableResult": "task_result",
				"dbHost": "localhost",
				"dbPort": 5432,
				"dbName": "onlyoffice",
				"dbUser": "onlyoffice",
				"dbPass": "onlyoffice",
				"charset": "utf8",
				"connectionlimit": 10,
				"max_allowed_packet": 1048575,
				"pgPoolExtraOptions": {}
			},
			"redis": {
				"name": "redis",
				"prefix": "ds:",
				"host": "localhost",
				"port": 6379,
				"options": {}
			},
			"pubsub": {
				"maxChanges": 1000
			},
			"expire": {
				"saveLock": 60,
				"presence": 300,
				"locks": 604800,
				"changeindex": 86400,
				"lockDoc": 30,
				"message": 86400,
				"lastsave": 604800,
				"forcesave": 604800,
				"saved": 3600,
				"documentsCron": "0 */2 * * * *",
				"files": 86400,
				"filesCron": "00 00 */1 * * *",
				"filesremovedatonce": 100,
				"sessionidle": "1h",
				"sessionabsolute": "30d",
				"sessionclosecommand": "2m",
				"pemStdTTL": "1h",
				"pemCheckPeriod": "10m",
				"updateVersionStatus": "5m",
				"monthUniqueUsers": "1y"
			},
			"ipfilter": {
				"rules": [{"address": "*", "allowed": true}],
				"useforrequest": false,
				"errorcode": 403
			},
			"request-filtering-agent" : {
				"allowPrivateIPAddress": true,
				"allowMetaIPAddress": true
			},
			"secret": {
				"browser": {"string": "secret", "file": ""},
				"inbox": {"string": "secret", "file": ""},
				"outbox": {"string": "secret", "file": ""},
				"session": {"string": "secret", "file": ""}
			},
			"token": {
				"enable": {
					"browser": false,
					"request": {
						"inbox": false,
						"outbox": false
					}
				},
				"browser": {
					"secretFromInbox": true
				},
				"inbox": {
					"header": "Authorization",
					"prefix": "Bearer ",
					"inBody": false
				},
				"outbox": {
					"header": "Authorization",
					"prefix": "Bearer ",
					"algorithm": "HS256",
					"expires": "5m",
					"inBody": false,
					"urlExclusionRegex": ""
				},
				"session": {
					"algorithm": "HS256",
					"expires": "30d"
				},
				"verifyOptions": {
					"clockTolerance": 60
				}
			},
			"plugins": {
				"uri": "/sdkjs-plugins",
				"autostart": []
			},
			"themes": {
				"uri": "/web-apps/apps/common/main/resources/themes"
			},
			"editor":{
				"spellcheckerUrl": "",
				"reconnection":{
					"attempts": 50,
					"delay": "2s"
				},
				"binaryChanges": false,
				"websocketMaxPayloadSize": "1.5MB",
				"maxChangesSize": "0mb"
			},
			"sockjs": {
				"sockjs_url": "",
				"disable_cors": true,
				"websocket": true
			},
			"socketio": {
				"connection": {
					"path": "/doc/",
					"serveClient": false,
					"pingTimeout": 20000,
					"pingInterval": 25000,
					"maxHttpBufferSize": 1e8
				}
			},
			"callbackBackoffOptions": {
				"retries": 0,
				"timeout":{
					"factor": 2,
					"minTimeout": 1000,
					"maxTimeout": 2147483647,
					"randomize": false
				},
				"httpStatus": "429,500-599"
			}
		}
	},
	"license" : {
		"license_file": "",
		"warning_limit_percents": 70,
		"packageType": 0
	},
	"FileConverter": {
		"converter": {
			"maxDownloadBytes": 104857600,
			"downloadTimeout": {
				"connectionAndInactivity": "2m",
				"wholeCycle": "2m"
			},
			"downloadAttemptMaxCount": 3,
			"downloadAttemptDelay": 1000,
			"maxprocesscount": 1,
			"fontDir": "null",
			"presentationThemesDir": "null",
			"x2tPath": "null",
			"docbuilderPath": "null",
			"args": "",
			"spawnOptions": {},
			"errorfiles": "",
			"streamWriterBufferSize": 8388608,
			"maxRedeliveredCount": 2,
			"inputLimits": [
				{
				"type": "docx;dotx;docm;dotm",
				"zip": {
					"uncompressed": "50MB",
					"template": "*.xml"
				}
				},
				{
				"type": "xlsx;xltx;xlsm;xltm",
				"zip": {
					"uncompressed": "300MB",
					"template": "*.xml"
				}
				},
				{
				"type": "pptx;ppsx;potx;pptm;ppsm;potm",
				"zip": {
					"uncompressed": "50MB",
					"template": "*.xml"
				}
				}
			]
		}
	}
}

{
“statsd”: {
“useMetrics”: false,
“host”: “localhost”,
“port”: “8125”,
“prefix”: “ds.”
},
“log”: {
“filePath”: “”,
“options”: {
“replaceConsole”: true
}
},
“queue”: {
“type”: “rabbitmq”,
“visibilityTimeout”: 300,
“retentionPeriod”: 900
},
“storage”: {
“name”: “storage-fs”,
“fs”: {
“folderPath”: “”,
“urlExpires”: 900,
“secretString”: “verysecretstring”
},
“region”: “”,
“endpoint”: “http://localhost/s3”,
“bucketName”: “cache”,
“storageFolderName”: “files”,
“cacheFolderName”: “data”,
“urlExpires”: 604800,
“accessKeyId”: “AKID”,
“secretAccessKey”: “SECRET”,
“sslEnabled”: false,
“s3ForcePathStyle”: true,
“externalHost”: “”
},
“rabbitmq”: {
“url”: “amqp://guest:guest@localhost:5672”,
“socketOptions”: {},
“exchangepubsub”: “ds.pubsub”,
“queueconverttask”: “ds.converttask”,
“queueconvertresponse”: “ds.convertresponse”,
“exchangeconvertdead”: “ds.exchangeconvertdead”,
“queueconvertdead”: “ds.convertdead”,
“queuedelayed”: “ds.delayed”
},
“activemq”: {
“connectOptions”: {
“port”: 5672,
“host”: “localhost”,
“name”: “admin”,
“reconnect”: false
},
“queueconverttask”: “ds.converttask”,
“queueconvertresponse”: “ds.convertresponse”,
“queueconvertdead”: “ActiveMQ.DLQ”,
“queuedelayed”: “ds.delayed”,
“topicpubsub”: “ds.pubsub”
},
“dnscache”: {
“enable” : true,
“ttl” : 300,
“cachesize” : 1000
},
“openpgpjs”: {
“config”: {
},
“encrypt”: {
“passwords”: [“verysecretstring”]
},
“decrypt”: {
“passwords”: [“verysecretstring”]
}
},
“bottleneck”: {
“getChanges”: {
}
},
“wopi”: {
“enable”: false,
“host” : “”,
“htmlTemplate” : “…/…/web-apps/apps/api/wopi”,
“wopiZone” : “external-http”,
“favIconUrlWord” : “/web-apps/apps/documenteditor/main/resources/img/favicon.ico”,
“favIconUrlCell” : “/web-apps/apps/spreadsheeteditor/main/resources/img/favicon.ico”,
“favIconUrlSlide” : “/web-apps/apps/presentationeditor/main/resources/img/favicon.ico”,
“fileInfoBlockList” : [“FileUrl”],
“pdfView”: [“pdf”, “djvu”, “xps”, “oxps”],
“wordView”: [“doc”, “dotx”, “dotm”, “dot”, “fodt”, “ott”, “rtf”, “mht”, “html”, “htm”, “xml”, “epub”, “fb2”],
“wordEdit”: [“docx”, “docm”, “docxf”, “oform”, “odt”, “txt”],
“cellView”: [“xls”, “xlsb”, “xltx”, “xltm”, “xlt”, “fods”, “ots”],
“cellEdit”: [“xlsx”, “xlsm”, “ods”, “csv”],
“slideView”: [“ppt”, “ppsx”, “ppsm”, “pps”, “potx”, “potm”, “pot”, “fodp”, “otp”],
“slideEdit”: [“pptx”, “pptm”, “odp”],
“publicKey”: "BgIAAACkAABSU0ExAAgAAAEAAQD/NVqekFNi8X3p6Bvdlaxm0GGuggW5kKfVEQzPGuOkGVrz6DrOMNR+k7Pq8tONY+1NHgS6Z+v3959em78qclVDuQX77Tkml0xMHAQHN4sAHF9iQJS8gOBUKSVKaHD7Z8YXch6F212YSUSc8QphpDSHWVSh>
“modulus”: "qnro3nUUjvZK1i7UqeOlXmCrVPiDtHlRgIPReAjt2nKL1GG3SBXO6N0aPbiM5rtK0XRPUoLmKu2rYvSJ/Kmkdp14a/3uiEl788VVn0hb/l9OuQtH3HBjmM0/LKRgJQuU3LgHI67uRVZYtSJ/n9fYdZqnLfveLsrgZpgRCoabrp+H5Uem9N+x0O>
“exponent”: “AQAB”,
“privateKey”: "MIIEowIBAAKCAQEAqnro3nUUjvZK1i7UqeOlXmCrVPiDtHlRgIPReAjt2nKL1GG3SBXO6N0aPbiM5rtK0XRPUoLmKu2rYvSJ/Kmkdp14a/3uiEl788VVn0hb/l9OuQtH3HBjmM0/LKRgJQuU3LgHI67uRVZYtSJ/n9fYdZqnLfveLsrgZpg>
“publicKeyOld”: "BgIAAACkAABSU0ExAAgAAAEAAQD/NVqekFNi8X3p6Bvdlaxm0GGuggW5kKfVEQzPGuOkGVrz6DrOMNR+k7Pq8tONY+1NHgS6Z+v3959em78qclVDuQX77Tkml0xMHAQHN4sAHF9iQJS8gOBUKSVKaHD7Z8YXch6F212YSUSc8QphpDSHW>
“modulusOld”: "qnro3nUUjvZK1i7UqeOlXmCrVPiDtHlRgIPReAjt2nKL1GG3SBXO6N0aPbiM5rtK0XRPUoLmKu2rYvSJ/Kmkdp14a/3uiEl788VVn0hb/l9OuQtH3HBjmM0/LKRgJQuU3LgHI67uRVZYtSJ/n9fYdZqnLfveLsrgZpgRCoabrp+H5Uem9N+>
“exponentOld”: “AQAB”,
“privateKeyOld”: "MIIEowIBAAKCAQEAqnro3nUUjvZK1i7UqeOlXmCrVPiDtHlRgIPReAjt2nKL1GG3SBXO6N0aPbiM5rtK0XRPUoLmKu2rYvSJ/Kmkdp14a/3uiEl788VVn0hb/l9OuQtH3HBjmM0/LKRgJQuU3LgHI67uRVZYtSJ/n9fYdZqnLfveLsrg>
“refreshLockInterval”: “10m”
},
“tenants”: {
“baseDir”: “”,
“baseDomain”: “”,
“filenameSecret”: “secret.key”,
“filenameLicense”: “license.lic”,
“defaultTenant”: “localhost”,
“cache” : {
“stdTTL”: 300,
“checkperiod”: 60,
“useClones”: false
}
},
“services”: {
“CoAuthoring”: {
“server”: {
“port”: 8000,
“workerpercpu”: 1,
“mode”: “development”,
“limits_tempfile_upload”: 104857600,
“limits_image_size”: 26214400,
“limits_image_download_timeout”: {
“connectionAndInactivity”: “2m”,
“wholeCycle”: “2m”
},
“callbackRequestTimeout”: {
“connectionAndInactivity”: “10m”,
“wholeCycle”: “10m”
},
“healthcheckfilepath”: “…/public/healthcheck.docx”,
“savetimeoutdelay”: 5000,
“edit_singleton”: false,
“forgottenfiles”: “forgotten”,
“forgottenfilesname”: “output”,
“maxRequestChanges”: 20000,
“openProtectedFile”: true,
“editorDataStorage”: “editorDataMemory”,
“assemblyFormatAsOrigin”: true,
“newFileTemplate” : “…/…/document-templates/new”,
“downloadFileAllowExt”: [“pdf”, “xlsx”],
“tokenRequiredParams”: true
},
“requestDefaults”: {
“headers”: {
“User-Agent”: “Node.js/6.13”,
“Connection”: “Keep-Alive”
},
“gzip”: true,
“rejectUnauthorized”: true
},
“autoAssembly”: {
“enable”: false,
“interval”: “5m”,
“step”: “1m”
},
“utils”: {
“utils_common_fontdir”: “null”,
“utils_fonts_search_patterns”: “.ttf;.ttc;*.otf”,
“limits_image_types_upload”: “jpg;jpeg;jpe;png;gif;bmp”
},
“sql”: {
“type”: “postgres”,
“tableChanges”: “doc_changes”,
“tableResult”: “task_result”,
“dbHost”: “localhost”,
“dbPort”: 5432,
“dbName”: “onlyoffice”,
“dbUser”: “onlyoffice”,
“dbPass”: “onlyoffice”,
“charset”: “utf8”,
“connectionlimit”: 10,
“max_allowed_packet”: 1048575,
“pgPoolExtraOptions”: {}
},
“redis”: {
“name”: “redis”,
“prefix”: “ds:”,
“host”: “localhost”,
“port”: 6379,
“options”: {}
},
“pubsub”: {
“maxChanges”: 1000
},
“expire”: {
“saveLock”: 60,
“presence”: 300,
“locks”: 604800,
“changeindex”: 86400,
“lockDoc”: 30,
“message”: 86400,
“lastsave”: 604800,
“forcesave”: 604800,
“saved”: 3600,
“documentsCron”: “0 /2 * * * ",
“files”: 86400,
“filesCron”: “00 00 /1 * * ",
“filesremovedatonce”: 100,
“sessionidle”: “1h”,
“sessionabsolute”: “30d”,
“sessionclosecommand”: “2m”,
“pemStdTTL”: “1h”,
“pemCheckPeriod”: “10m”,
“updateVersionStatus”: “5m”,
“monthUniqueUsers”: “1y”
},
“ipfilter”: {
“rules”: [{“address”: "
", “allowed”: true}],
“useforrequest”: false,
“errorcode”: 403
},
“request-filtering-agent” : {
“allowPrivateIPAddress”: true,
“allowMetaIPAddress”: true
},
“secret”: {
“browser”: {“string”: “secret”, “file”: “”},
“inbox”: {“string”: “secret”, “file”: “”},
“outbox”: {“string”: “secret”, “file”: “”},
“session”: {“string”: “secret”, “file”: “”}
},
“token”: {
“enable”: {
“browser”: false,
“request”: {
“inbox”: false,
“outbox”: false
}
},
“browser”: {
“secretFromInbox”: true
},
“inbox”: {
“header”: “Authorization”,
“prefix”: "Bearer ",
“inBody”: false
},
“outbox”: {
“header”: “Authorization”,
“prefix”: "Bearer ",
“algorithm”: “HS256”,
“expires”: “5m”,
“inBody”: false,
“urlExclusionRegex”: “”
},
“session”: {
“algorithm”: “HS256”,
“expires”: “30d”
},
“verifyOptions”: {
“clockTolerance”: 60
}
},
“plugins”: {
“uri”: “/sdkjs-plugins”,
“autostart”: []
},
“themes”: {
“uri”: “/web-apps/apps/common/main/resources/themes”
},
“editor”:{
“spellcheckerUrl”: “”,
“reconnection”:{
“attempts”: 50,
“delay”: “2s”
},
“binaryChanges”: false,
“websocketMaxPayloadSize”: “1.5MB”,
“maxChangesSize”: “0mb”
},
“sockjs”: {
“sockjs_url”: “”,
“disable_cors”: true,
“websocket”: true
},
“socketio”: {
“connection”: {
“path”: “/doc/”,
“serveClient”: false,
“pingTimeout”: 20000,
“pingInterval”: 25000,
“maxHttpBufferSize”: 1e8
}
},
“callbackBackoffOptions”: {
“retries”: 0,
“timeout”:{
“factor”: 2,
“minTimeout”: 1000,
“maxTimeout”: 2147483647,
“randomize”: false
},
“httpStatus”: “429,500-599”
}
}
},
“license” : {
“license_file”: “”,
“warning_limit_percents”: 70,
“packageType”: 0
},
“FileConverter”: {
“converter”: {
“maxDownloadBytes”: 104857600,
“downloadTimeout”: {
“connectionAndInactivity”: “2m”,
“wholeCycle”: “2m”
},
“downloadAttemptMaxCount”: 3,
“downloadAttemptDelay”: 1000,
“maxprocesscount”: 1,
“fontDir”: “null”,
“presentationThemesDir”: “null”,
“x2tPath”: “null”,
“docbuilderPath”: “null”,
“args”: “”,
“spawnOptions”: {},
“errorfiles”: “”,
“streamWriterBufferSize”: 8388608,
“maxRedeliveredCount”: 2,
“inputLimits”: [
{
“type”: “docx;dotx;docm;dotm”,
“zip”: {
“uncompressed”: “50MB”,
“template”: "
.xml”
}
},
{
“type”: “xlsx;xltx;xlsm;xltm”,
“zip”: {
“uncompressed”: “300MB”,
“template”: "
.xml"
}
},
{
“type”: “pptx;ppsx;potx;pptm;ppsm;potm”,
“zip”: {
“uncompressed”: “50MB”,
“template”: "
.xml”
}
}
]
}
}
}

Hello, the following has been changed. Please make a copy of the default.json before, in case of problems.

“lastsave”: 10,
“forcesave”: 10,
“saved”: 10,
“documentsCron”: " * * * * * *",
“files”: 10,
“filesCron”: " * * * * *",

Here I am not sure: Delete this:

“socketio”: {
“connection”: {
“path”: “/doc/”,
“serveClient”: false,
“pingTimeout”: 20000,
“pingInterval”: 25000,
“maxHttpBufferSize”: 1e8
}

Hope it helps! Regards Marco

@a.maltsev can you try out this solution and provide a feedback?
Please make copy of default.json before taking actions as @marco says.
Remember that to apply changes to default.json you have to restart Document Server services.

thanks a lot!! You are my savior!
This is what helped:

“lastsave”: 10,
“forcesave”: 10,
“saved”: 10,
“documentsCron”: " * * * * * *",
“files”: 10,
“filesCron”: " * * * * * *",

The solution works! Is there a native solution for making changes to default.json for docker container?

Hello @a.maltsev

I don’t quite understand what do you mean by “native solution”.
If you want directly edit config, you can connect to Docker container with Document Server with command docker exec -it <ID> bash and then locate config and edit it with nano.
<ID> of the container you can find by enlisting all running containers with docker ps.

I mean a way that will allow me to update the container without additional manipulations. maybe i can set parameters in docker-compose.yml or something similar?

Unfortunately, for these parameters we don’t have environment variables that can be set to run the container.
As an alternative, you can mount a custom config to the container. Create on host config with name local-production-linux.json and add desired parameters and their values. Note that the whole object structure for the necessary parameters must be retained.
In your case parameters are:

{
        "services": {
                "CoAuthoring": {
                        "expire": {
                                "lastsave": 10,
                                "forcesave": 10,
                                "saved": 10,
                                "documentsCron": "* * * * *",
                                "files": 10,
                                "filesCron": "* * * * * *"
                        }
                }
        }
}

After that mount this config to the container. For example, to run a container with docker run example of the command will look like this:

docker run -i -t -d -p 80:80 --restart=always \
-v <absolute_path_to_config>/local-production-linux.json:/etc/onlyoffice/documentserver/local-production-linux.json onlyoffice/documentserver

Please do not mount any of the default configs to the host, it may cause various issues after the update.