Display apps that are not created with truenas interface

Problem/Justification

We not see apps created from portainer or tools like this (these tools are massively used on truenas scale)
For complex configurations, tools like portainer allow better management, I find it a shame not to display the stacks directly on the Truenas interface

Impact

It allow users to see custom docker stacks created from some tools like portainer or just with a simple docker-compose.yaml file.
The only thing to do would be to edit a very simple configuration file.
There is no negative point because if the user does not need the functionality, he just has to not modify the configuration file and the behavior will remain the same as without this functionality

User Story

Currently truenas only lists stacks that come from truenas (projects that start with ix-…). An easy to implement method would list any stack.

In the list of apps it would be enough to add the stacks which are referenced in a file (eg: /mnt/.ix-apps/external_apps.yaml)
It would also be necessary to hide the delete and modify buttons from the Truenas interface for these stacks

Example of file formatting (to match current configuration files and facilitate development):

compose_project_name:
  metadata:
    description: Description of the project #optional
    home: https://projecturl.com/ #optional
    icon: https://iconurl.png #optional
    name: Displayed name of project
    sources: #optional
      - https://github.com/
  notes: 'Custom note' #optional
  template: path of the docker-compose.yaml file
  portals: #optional
    Name Of Portal (eg: Web UI): https://webui.local/

Limitations

Volumes mounted need to have same path in your container and in the host (if you use portainer or dockge apps for exemple), this feature remains a feature for experienced users

Currently, for an application to be listed and to make the start and stop buttons functional, it needs to:

  • Have a name formated like “ix-yourprojectname” (ix- prefix)
  • Be in metadata without the ix- prefix
  • Have a user_config.yaml in /mnt/.ix-apps/app_configs/namewithoutprefix/versions/versioninmetadata
  • Compose file need to be located in /mnt/.ix-apps/app_configs/namewithoutprefix/versions/versioninmetadata/templates/rendered/docker-compose.yaml (if you want start and stop it from Truenas Scale UI)

If you don’t want to use the start and stop buttons, it need to:

  • Have a name formated like “ix-yourprojectname” (ix- prefix)
  • Be in metadata without the ix- prefix
  • Have a user_config.yaml in /mnt/.ix-apps/app_configs/namewithoutprefix/versions/versioninmetadata

I think this is the same as this feature request:

1 Like

Not exactly, my proposal is to put the stacks you want with a personalized configuration (links, icons, description…), the fact of wanting to do something generic prevents personalization