template.yaml 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. ---
  2. kind: compose
  3. metadata:
  4. icon:
  5. provider: selfh
  6. id: komodo
  7. name: Komodo
  8. description: |
  9. Build and deployment automation tool for managing software across multiple servers. Komodo provides
  10. unlimited server connections, flexible API access, and comprehensive management of Docker deployments,
  11. stacks, and builds. Features include real-time container monitoring, batch operations, and integration
  12. with Docker, Docker Compose, and build systems. Supports both MongoDB and FerretDB as database backends.
  13. ## Important Notes
  14. * Requires MongoDB or FerretDB for data storage (database not included in this template)
  15. * Requires Periphery agent on managed servers for remote operations
  16. * Web interface and API accessible through configured ports
  17. ## References
  18. * **Project:** https://github.com/moghtech/komodo
  19. * **Documentation:** https://github.com/moghtech/komodo/tree/main/docsite/docs
  20. * **Docker Hub:** https://hub.docker.com/r/moghtech/komodo
  21. draft: true
  22. version: latest
  23. author: Christian Lempa
  24. date: '2025-11-13'
  25. tags:
  26. - traefik
  27. - swarm
  28. - deployment
  29. - automation
  30. spec:
  31. general:
  32. vars:
  33. service_name:
  34. default: "komodo"
  35. container_name:
  36. default: "komodo"
  37. container_hostname:
  38. default: "komodo"
  39. traefik:
  40. vars:
  41. traefik_host:
  42. default: "komodo"
  43. network:
  44. vars:
  45. network_name:
  46. default: "komodo_network"
  47. ports:
  48. vars:
  49. ports_http:
  50. description: "External HTTP port (web interface and API)"
  51. type: int
  52. default: 9120
  53. needs: ["traefik_enabled=false", "network_mode=bridge"]
  54. volume:
  55. vars:
  56. volume_mount_path:
  57. default: "/mnt/storage/komodo"
  58. environment:
  59. title: "Environment Variables"
  60. toggle: environment_enabled
  61. required: true
  62. vars:
  63. environment_enabled:
  64. type: bool
  65. default: true
  66. description: "Configure environment variables (required)"
  67. environment_database_address:
  68. type: str
  69. default: "mongodb://mongo:27017"
  70. description: "Database connection address (MongoDB or FerretDB)"
  71. needs: "environment_enabled=true"
  72. environment_database_name:
  73. type: str
  74. default: "komodo"
  75. description: "Database name"
  76. needs: "environment_enabled=true"
  77. environment_database_username:
  78. type: str
  79. default: ""
  80. description: "Database username (optional)"
  81. needs: "environment_enabled=true"
  82. environment_database_password:
  83. type: secret
  84. default: ""
  85. description: "Database password (optional)"
  86. needs: "environment_enabled=true"
  87. environment_jwt_secret:
  88. type: secret
  89. default: ""
  90. config:
  91. autogenerated: true
  92. description: "JWT secret for authentication (auto-generated if empty)"
  93. needs: "environment_enabled=true"
  94. environment_log_level:
  95. type: enum
  96. default: "info"
  97. config:
  98. options: ["debug", "info", "warn", "error"]
  99. description: "Log level"
  100. needs: "environment_enabled=true"