app_versions.json 51 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878
  1. {
  2. "1.1.4": {
  3. "healthy": true,
  4. "supported": true,
  5. "healthy_error": null,
  6. "location": "/__w/charts/charts/community/sftpgo/1.1.4",
  7. "last_update": "2023-11-23 22:48:53",
  8. "required_features": [
  9. "normalize/ixVolume",
  10. "definitions/certificate"
  11. ],
  12. "human_version": "2.5.5_1.1.4",
  13. "version": "1.1.4",
  14. "chart_metadata": {
  15. "name": "sftpgo",
  16. "description": "SFTPGo is a fully featured and highly configurable SFTP server with optional HTTP/S, FTP/S and WebDAV support - S3, Google Cloud Storage, Azure Blob",
  17. "annotations": {
  18. "title": "SFTPGo"
  19. },
  20. "type": "application",
  21. "version": "1.1.4",
  22. "apiVersion": "v2",
  23. "appVersion": "2.5.5",
  24. "kubeVersion": ">=1.16.0-0",
  25. "maintainers": [
  26. {
  27. "name": "truenas",
  28. "url": "https://www.truenas.com/",
  29. "email": "dev@ixsystems.com"
  30. }
  31. ],
  32. "dependencies": [
  33. {
  34. "name": "common",
  35. "repository": "file://../../../common",
  36. "version": "1.2.3"
  37. }
  38. ],
  39. "home": "https://github.com/drakkan/sftpgo",
  40. "icon": "https://media.sys.truenas.net/apps/sftpgo/icons/icon.png",
  41. "sources": [
  42. "https://hub.docker.com/r/drakkan/sftpgo",
  43. "https://github.com/truenas/charts/tree/master/library/ix-dev/community/sftpgo",
  44. "https://github.com/drakkan/sftpgo"
  45. ],
  46. "keywords": [
  47. "sftpgo"
  48. ]
  49. },
  50. "app_metadata": {
  51. "runAsContext": [
  52. {
  53. "userName": "sftpgo",
  54. "groupName": "sftpgo",
  55. "gid": 568,
  56. "uid": 568,
  57. "description": "SFTPGo can run as any non-root user."
  58. }
  59. ],
  60. "capabilities": [],
  61. "hostMounts": []
  62. },
  63. "schema": {
  64. "groups": [
  65. {
  66. "name": "SFTPGo Configuration",
  67. "description": "Configure SFTPGo"
  68. },
  69. {
  70. "name": "User and Group Configuration",
  71. "description": "Configure User and Group for SFTPGo"
  72. },
  73. {
  74. "name": "Network Configuration",
  75. "description": "Configure Network for SFTPGo"
  76. },
  77. {
  78. "name": "Storage Configuration",
  79. "description": "Configure Storage for SFTPGo"
  80. },
  81. {
  82. "name": "Resources Configuration",
  83. "description": "Configure Resources for SFTPGo"
  84. }
  85. ],
  86. "portals": {
  87. "web_portal": {
  88. "protocols": [
  89. "$kubernetes-resource_configmap_portal_protocol"
  90. ],
  91. "host": [
  92. "$kubernetes-resource_configmap_portal_host"
  93. ],
  94. "ports": [
  95. "$kubernetes-resource_configmap_portal_port"
  96. ],
  97. "path": "$kubernetes-resource_configmap_portal_path"
  98. }
  99. },
  100. "questions": [
  101. {
  102. "variable": "sftpgoConfig",
  103. "label": "",
  104. "group": "SFTPGo Configuration",
  105. "schema": {
  106. "type": "dict",
  107. "attrs": [
  108. {
  109. "variable": "imageSelector",
  110. "label": "Image Selector",
  111. "description": "The image to use for SFTPGo.",
  112. "schema": {
  113. "type": "string",
  114. "default": "image",
  115. "required": true,
  116. "enum": [
  117. {
  118. "value": "image",
  119. "description": "Default Image"
  120. },
  121. {
  122. "value": "pluginsImage",
  123. "description": "Plugins Image"
  124. }
  125. ]
  126. }
  127. },
  128. {
  129. "variable": "graceTime",
  130. "label": "Grace Time",
  131. "description": "The time in seconds to wait for connections to close before shutting down.",
  132. "schema": {
  133. "type": "int",
  134. "default": 60,
  135. "min": 1,
  136. "required": true
  137. }
  138. },
  139. {
  140. "variable": "additionalEnvs",
  141. "label": "Additional Environment Variables",
  142. "description": "Configure additional environment variables for SFTPGo.",
  143. "schema": {
  144. "type": "list",
  145. "default": [],
  146. "items": [
  147. {
  148. "variable": "env",
  149. "label": "Environment Variable",
  150. "schema": {
  151. "type": "dict",
  152. "attrs": [
  153. {
  154. "variable": "name",
  155. "label": "Name",
  156. "schema": {
  157. "type": "string",
  158. "required": true
  159. }
  160. },
  161. {
  162. "variable": "value",
  163. "label": "Value",
  164. "schema": {
  165. "type": "string",
  166. "required": true
  167. }
  168. }
  169. ]
  170. }
  171. }
  172. ]
  173. }
  174. }
  175. ]
  176. }
  177. },
  178. {
  179. "variable": "sftpgoRunAs",
  180. "label": "",
  181. "group": "User and Group Configuration",
  182. "schema": {
  183. "type": "dict",
  184. "attrs": [
  185. {
  186. "variable": "user",
  187. "label": "User ID",
  188. "description": "The user id that SFTPGo will run as.",
  189. "schema": {
  190. "type": "int",
  191. "min": 2,
  192. "default": 568,
  193. "required": true
  194. }
  195. },
  196. {
  197. "variable": "group",
  198. "label": "Group ID",
  199. "description": "The group id that SFTPGo will run as.",
  200. "schema": {
  201. "type": "int",
  202. "min": 2,
  203. "default": 568,
  204. "required": true
  205. }
  206. }
  207. ]
  208. }
  209. },
  210. {
  211. "variable": "sftpgoNetwork",
  212. "label": "",
  213. "group": "Network Configuration",
  214. "schema": {
  215. "type": "dict",
  216. "attrs": [
  217. {
  218. "variable": "hostNetwork",
  219. "label": "Host Network",
  220. "description": "Bind to the host network. It's recommended to keep this disabled.</br>\n",
  221. "schema": {
  222. "type": "boolean",
  223. "default": false
  224. }
  225. },
  226. {
  227. "variable": "certificateID",
  228. "label": "Certificate",
  229. "description": "The certificate to use for SFTPGo WebUI",
  230. "schema": {
  231. "type": "int",
  232. "null": true,
  233. "$ref": [
  234. "definitions/certificate"
  235. ],
  236. "enum": [
  237. {
  238. "value": null,
  239. "description": "No Certificate"
  240. }
  241. ],
  242. "default": null
  243. }
  244. },
  245. {
  246. "variable": "webPort",
  247. "label": "Web Port",
  248. "description": "The port for the SFTPGo Web UI.",
  249. "schema": {
  250. "type": "int",
  251. "default": 30086,
  252. "min": 9000,
  253. "max": 65535,
  254. "required": true
  255. }
  256. },
  257. {
  258. "variable": "webdavdServices",
  259. "label": "WebDAVd Services",
  260. "description": "Enable one or more WebDAVd services.",
  261. "schema": {
  262. "type": "list",
  263. "default": [],
  264. "items": [
  265. {
  266. "variable": "webdavdServiceEntry",
  267. "label": "WebDAVd Service Entry",
  268. "schema": {
  269. "type": "dict",
  270. "attrs": [
  271. {
  272. "variable": "enabled",
  273. "label": "Enabled",
  274. "description": "Enable this WebDAVd service.",
  275. "schema": {
  276. "type": "boolean",
  277. "default": false
  278. }
  279. },
  280. {
  281. "variable": "port",
  282. "label": "Port",
  283. "description": "The port for WebDAVd.",
  284. "schema": {
  285. "type": "int",
  286. "default": 30089,
  287. "min": 9000,
  288. "max": 65535,
  289. "required": true
  290. }
  291. }
  292. ]
  293. }
  294. }
  295. ]
  296. }
  297. },
  298. {
  299. "variable": "sftpdServices",
  300. "label": "SFTPd Services",
  301. "description": "Enable one or more SFTPd services.",
  302. "schema": {
  303. "type": "list",
  304. "default": [],
  305. "items": [
  306. {
  307. "variable": "sftpdServiceEntry",
  308. "label": "SFTPd Service Entry",
  309. "schema": {
  310. "type": "dict",
  311. "attrs": [
  312. {
  313. "variable": "enabled",
  314. "label": "Enabled",
  315. "description": "Enable this SFTPd service.",
  316. "schema": {
  317. "type": "boolean",
  318. "default": false
  319. }
  320. },
  321. {
  322. "variable": "port",
  323. "label": "Port",
  324. "description": "The port for SFTPd.",
  325. "schema": {
  326. "type": "int",
  327. "default": 30087,
  328. "min": 9000,
  329. "max": 65535,
  330. "required": true
  331. }
  332. }
  333. ]
  334. }
  335. }
  336. ]
  337. }
  338. },
  339. {
  340. "variable": "ftpdServices",
  341. "label": "FTPd Services",
  342. "description": "Enable one or more FTPd services.",
  343. "schema": {
  344. "type": "list",
  345. "default": [],
  346. "items": [
  347. {
  348. "variable": "ftpdServiceEntry",
  349. "label": "FTPd Service Entry",
  350. "schema": {
  351. "type": "dict",
  352. "attrs": [
  353. {
  354. "variable": "enabled",
  355. "label": "Enabled",
  356. "description": "Enable this FTPd service.",
  357. "schema": {
  358. "type": "boolean",
  359. "default": false
  360. }
  361. },
  362. {
  363. "variable": "port",
  364. "label": "Port",
  365. "description": "The port for FTPd.",
  366. "schema": {
  367. "type": "int",
  368. "default": 30088,
  369. "min": 9000,
  370. "max": 65535,
  371. "required": true
  372. }
  373. }
  374. ]
  375. }
  376. }
  377. ]
  378. }
  379. },
  380. {
  381. "variable": "ftpdPassivePortRange",
  382. "label": "FTPd Passive Port Range",
  383. "description": "The port range for FTPd passive connections.",
  384. "schema": {
  385. "type": "dict",
  386. "show_if": [
  387. [
  388. "ftpdServices",
  389. "!=",
  390. []
  391. ]
  392. ],
  393. "attrs": [
  394. {
  395. "variable": "start",
  396. "label": "Start",
  397. "description": "The start of the port range.",
  398. "schema": {
  399. "type": "int",
  400. "default": 50000,
  401. "min": 9000,
  402. "max": 65535,
  403. "required": true
  404. }
  405. },
  406. {
  407. "variable": "end",
  408. "label": "End",
  409. "description": "The end of the port range.",
  410. "schema": {
  411. "type": "int",
  412. "default": 50001,
  413. "min": 9000,
  414. "max": 65535,
  415. "required": true
  416. }
  417. }
  418. ]
  419. }
  420. }
  421. ]
  422. }
  423. },
  424. {
  425. "variable": "sftpgoStorage",
  426. "label": "",
  427. "group": "Storage Configuration",
  428. "schema": {
  429. "type": "dict",
  430. "attrs": [
  431. {
  432. "variable": "config",
  433. "label": "SFTPGo Config Storage",
  434. "description": "The path to store SFTPGo Configuration.",
  435. "schema": {
  436. "type": "dict",
  437. "attrs": [
  438. {
  439. "variable": "type",
  440. "label": "Type",
  441. "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.\n",
  442. "schema": {
  443. "type": "string",
  444. "required": true,
  445. "immutable": true,
  446. "default": "ixVolume",
  447. "enum": [
  448. {
  449. "value": "hostPath",
  450. "description": "Host Path (Path that already exists on the system)"
  451. },
  452. {
  453. "value": "ixVolume",
  454. "description": "ixVolume (Dataset created automatically by the system)"
  455. }
  456. ]
  457. }
  458. },
  459. {
  460. "variable": "datasetName",
  461. "label": "Dataset Name",
  462. "schema": {
  463. "type": "string",
  464. "show_if": [
  465. [
  466. "type",
  467. "=",
  468. "ixVolume"
  469. ]
  470. ],
  471. "required": true,
  472. "hidden": true,
  473. "immutable": true,
  474. "default": "config",
  475. "$ref": [
  476. "normalize/ixVolume"
  477. ]
  478. }
  479. },
  480. {
  481. "variable": "hostPath",
  482. "label": "Host Path",
  483. "schema": {
  484. "type": "hostpath",
  485. "show_if": [
  486. [
  487. "type",
  488. "=",
  489. "hostPath"
  490. ]
  491. ],
  492. "immutable": true,
  493. "required": true
  494. }
  495. }
  496. ]
  497. }
  498. },
  499. {
  500. "variable": "data",
  501. "label": "SFTPGo Data Storage",
  502. "description": "The path to store SFTPGo Data.",
  503. "schema": {
  504. "type": "dict",
  505. "attrs": [
  506. {
  507. "variable": "type",
  508. "label": "Type",
  509. "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.\n",
  510. "schema": {
  511. "type": "string",
  512. "required": true,
  513. "immutable": true,
  514. "default": "ixVolume",
  515. "enum": [
  516. {
  517. "value": "hostPath",
  518. "description": "Host Path (Path that already exists on the system)"
  519. },
  520. {
  521. "value": "ixVolume",
  522. "description": "ixVolume (Dataset created automatically by the system)"
  523. }
  524. ]
  525. }
  526. },
  527. {
  528. "variable": "datasetName",
  529. "label": "Dataset Name",
  530. "schema": {
  531. "type": "string",
  532. "show_if": [
  533. [
  534. "type",
  535. "=",
  536. "ixVolume"
  537. ]
  538. ],
  539. "required": true,
  540. "hidden": true,
  541. "immutable": true,
  542. "default": "data",
  543. "$ref": [
  544. "normalize/ixVolume"
  545. ]
  546. }
  547. },
  548. {
  549. "variable": "hostPath",
  550. "label": "Host Path",
  551. "schema": {
  552. "type": "hostpath",
  553. "show_if": [
  554. [
  555. "type",
  556. "=",
  557. "hostPath"
  558. ]
  559. ],
  560. "immutable": true,
  561. "required": true
  562. }
  563. }
  564. ]
  565. }
  566. },
  567. {
  568. "variable": "backups",
  569. "label": "SFTPGo Backups Storage",
  570. "description": "The path to store SFTPGo Backups.",
  571. "schema": {
  572. "type": "dict",
  573. "attrs": [
  574. {
  575. "variable": "type",
  576. "label": "Type",
  577. "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.\n",
  578. "schema": {
  579. "type": "string",
  580. "required": true,
  581. "immutable": true,
  582. "default": "ixVolume",
  583. "enum": [
  584. {
  585. "value": "hostPath",
  586. "description": "Host Path (Path that already exists on the system)"
  587. },
  588. {
  589. "value": "ixVolume",
  590. "description": "ixVolume (Dataset created automatically by the system)"
  591. }
  592. ]
  593. }
  594. },
  595. {
  596. "variable": "datasetName",
  597. "label": "Dataset Name",
  598. "schema": {
  599. "type": "string",
  600. "show_if": [
  601. [
  602. "type",
  603. "=",
  604. "ixVolume"
  605. ]
  606. ],
  607. "required": true,
  608. "hidden": true,
  609. "immutable": true,
  610. "default": "backups",
  611. "$ref": [
  612. "normalize/ixVolume"
  613. ]
  614. }
  615. },
  616. {
  617. "variable": "hostPath",
  618. "label": "Host Path",
  619. "schema": {
  620. "type": "hostpath",
  621. "show_if": [
  622. [
  623. "type",
  624. "=",
  625. "hostPath"
  626. ]
  627. ],
  628. "immutable": true,
  629. "required": true
  630. }
  631. }
  632. ]
  633. }
  634. },
  635. {
  636. "variable": "additionalStorages",
  637. "label": "Additional Storage",
  638. "description": "Additional storage for SFTPGo.",
  639. "schema": {
  640. "type": "list",
  641. "default": [],
  642. "items": [
  643. {
  644. "variable": "storageEntry",
  645. "label": "Storage Entry",
  646. "schema": {
  647. "type": "dict",
  648. "attrs": [
  649. {
  650. "variable": "type",
  651. "label": "Type",
  652. "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.</br>\nSMB Share: Is a SMB share that is mounted to a persistent volume claim.\n",
  653. "schema": {
  654. "type": "string",
  655. "required": true,
  656. "default": "ixVolume",
  657. "immutable": true,
  658. "enum": [
  659. {
  660. "value": "hostPath",
  661. "description": "Host Path (Path that already exists on the system)"
  662. },
  663. {
  664. "value": "ixVolume",
  665. "description": "ixVolume (Dataset created automatically by the system)"
  666. },
  667. {
  668. "value": "smb-pv-pvc",
  669. "description": "SMB Share (Mounts a persistent volume claim to a SMB share)"
  670. }
  671. ]
  672. }
  673. },
  674. {
  675. "variable": "mountPath",
  676. "label": "Mount Path",
  677. "description": "The path inside the container to mount the storage.",
  678. "schema": {
  679. "type": "path",
  680. "required": true
  681. }
  682. },
  683. {
  684. "variable": "hostPath",
  685. "label": "Host Path",
  686. "description": "The host path to use for storage.",
  687. "schema": {
  688. "type": "hostpath",
  689. "show_if": [
  690. [
  691. "type",
  692. "=",
  693. "hostPath"
  694. ]
  695. ],
  696. "required": true
  697. }
  698. },
  699. {
  700. "variable": "datasetName",
  701. "label": "Dataset Name",
  702. "description": "The name of the dataset to use for storage.",
  703. "schema": {
  704. "type": "string",
  705. "show_if": [
  706. [
  707. "type",
  708. "=",
  709. "ixVolume"
  710. ]
  711. ],
  712. "required": true,
  713. "immutable": true,
  714. "default": "storage_entry",
  715. "$ref": [
  716. "normalize/ixVolume"
  717. ]
  718. }
  719. },
  720. {
  721. "variable": "server",
  722. "label": "Server",
  723. "description": "The server for the SMB share.",
  724. "schema": {
  725. "type": "string",
  726. "show_if": [
  727. [
  728. "type",
  729. "=",
  730. "smb-pv-pvc"
  731. ]
  732. ],
  733. "required": true
  734. }
  735. },
  736. {
  737. "variable": "share",
  738. "label": "Share",
  739. "description": "The share name for the SMB share.",
  740. "schema": {
  741. "type": "string",
  742. "show_if": [
  743. [
  744. "type",
  745. "=",
  746. "smb-pv-pvc"
  747. ]
  748. ],
  749. "required": true
  750. }
  751. },
  752. {
  753. "variable": "domain",
  754. "label": "Domain (Optional)",
  755. "description": "The domain for the SMB share.",
  756. "schema": {
  757. "type": "string",
  758. "show_if": [
  759. [
  760. "type",
  761. "=",
  762. "smb-pv-pvc"
  763. ]
  764. ]
  765. }
  766. },
  767. {
  768. "variable": "username",
  769. "label": "Username",
  770. "description": "The username for the SMB share.",
  771. "schema": {
  772. "type": "string",
  773. "show_if": [
  774. [
  775. "type",
  776. "=",
  777. "smb-pv-pvc"
  778. ]
  779. ],
  780. "required": true
  781. }
  782. },
  783. {
  784. "variable": "password",
  785. "label": "Password",
  786. "description": "The password for the SMB share.",
  787. "schema": {
  788. "type": "string",
  789. "show_if": [
  790. [
  791. "type",
  792. "=",
  793. "smb-pv-pvc"
  794. ]
  795. ],
  796. "required": true,
  797. "private": true
  798. }
  799. },
  800. {
  801. "variable": "size",
  802. "label": "Size (in Gi)",
  803. "description": "The size of the volume quota.",
  804. "schema": {
  805. "type": "int",
  806. "show_if": [
  807. [
  808. "type",
  809. "=",
  810. "smb-pv-pvc"
  811. ]
  812. ],
  813. "required": true,
  814. "min": 1,
  815. "default": 1
  816. }
  817. }
  818. ]
  819. }
  820. }
  821. ]
  822. }
  823. }
  824. ]
  825. }
  826. },
  827. {
  828. "variable": "resources",
  829. "group": "Resources Configuration",
  830. "label": "",
  831. "schema": {
  832. "type": "dict",
  833. "attrs": [
  834. {
  835. "variable": "limits",
  836. "label": "Limits",
  837. "schema": {
  838. "type": "dict",
  839. "attrs": [
  840. {
  841. "variable": "cpu",
  842. "label": "CPU",
  843. "description": "CPU limit for SFTPGo.",
  844. "schema": {
  845. "type": "string",
  846. "max_length": 6,
  847. "valid_chars": "^(0\\.[1-9]|[1-9][0-9]*)(\\.[0-9]|m?)$",
  848. "valid_chars_error": "Valid CPU limit formats are</br>\n- Plain Integer - eg. 1</br>\n- Float - eg. 0.5</br>\n- Milicpu - eg. 500m\n",
  849. "default": "4000m",
  850. "required": true
  851. }
  852. },
  853. {
  854. "variable": "memory",
  855. "label": "Memory",
  856. "description": "Memory limit for SFTPGo.",
  857. "schema": {
  858. "type": "string",
  859. "max_length": 12,
  860. "valid_chars": "^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$",
  861. "valid_chars_error": "Valid Memory limit formats are</br>\n- Suffixed with E/P/T/G/M/K - eg. 1G</br>\n- Suffixed with Ei/Pi/Ti/Gi/Mi/Ki - eg. 1Gi</br>\n- Plain Integer in bytes - eg. 1024</br>\n- Exponent - eg. 134e6\n",
  862. "default": "8Gi",
  863. "required": true
  864. }
  865. }
  866. ]
  867. }
  868. }
  869. ]
  870. }
  871. }
  872. ]
  873. },
  874. "app_readme": "<h1>SFTPGo</h1>\n<p><a href=\"https://github.com/drakkan/sftpgo\">SFTPGo</a> is a fully featured and highly configurable SFTP server with optional HTTP/S, FTP/S and WebDAV support - S3, Google Cloud Storage, Azure Blob</p>\n<blockquote>\n<p>When application is installed, a container will be launched with <strong>root</strong> privileges.\nThis is required in order to apply the correct permissions to the <code>SFTPGo</code> directories.\nAfterward, the <code>SFTPGo</code> container will run as a <strong>non</strong>-root user (Default: <code>568</code>).\nAll mounted storage(s) will be <code>chown</code>ed only if the parent directory does not match the configured user.</p>\n</blockquote>",
  875. "detailed_readme": "<h1>SFTPGo</h1>\n<p><a href=\"https://github.com/drakkan/sftpgo\">SFTPGo</a> is a fully featured and highly configurable SFTP server with optional HTTP/S, FTP/S and WebDAV support - S3, Google Cloud Storage, Azure Blob</p>\n<blockquote>\n<p>When application is installed, a container will be launched with <strong>root</strong> privileges.\nThis is required in order to apply the correct permissions to the <code>SFTPGo</code> directories.\nAfterward, the <code>SFTPGo</code> container will run as a <strong>non</strong>-root user (Default: <code>568</code>).\nAll mounted storage(s) will be <code>chown</code>ed only if the parent directory does not match the configured user.</p>\n</blockquote>",
  876. "changelog": null
  877. }
  878. }