Add SigNoz to Coolify services
Is your feature request related to a problem?
Coolify is an all-in one PaaS aimed at simplifying the process of self-hosting services. As SigNoz already offers docker compose-based deployments, adding it to Coolify would simplify the setup process even more while making SigNoz available for a wider range of users looking for self-hosted observability platforms.
Describe the solution you'd like
SigNoz would be available as a ready-to-use service in Coolify, deployable in one click with ports and volumes already mapped. The minimal docker compose config would be used to have the service ready to use.
Doc page to contribute a service: https://coolify.io/docs/contribute/service
Describe alternatives you've considered
Using the Docker Compose deployment in Coolify and map the relevant ports / volumes by hand.
Thanks for opening this issue. A team member should give feedback soon. In the meantime, feel free to check out the contributing guidelines.
Hello
I tried to deploy SigNoz on a Coolify instance, but the self host solution they provide is quite tricky to use with coolify. I made an issue for this. Basically the nature of how the repo is organized is not really compatible with how Coolify computes its docker compose. The end solution on my side was to fork the SigNoz repo and adapt its structure with what Coolify would expect, which is putting the docker-compose file at the root, and adapt its content with the correct paths.
As a service, I think this would be quite tricky until SigNoz provides a better solution than just cloning their repository.
Hello
I tried to deploy SigNoz on a Coolify instance, but the self host solution they provide is quite tricky to use with coolify. I made an issue for this. Basically the nature of how the repo is organized is not really compatible with how Coolify computes its docker compose. The end solution on my side was to fork the SigNoz repo and adapt its structure with what Coolify would expect, which is putting the docker-compose file at the root, and adapt its content with the correct paths.
As a service, I think this would be quite tricky until SigNoz provides a better solution than just cloning their repository.
Thanks for sharing this @foyarash
Hi guys,
I was able to make an almost working template here: https://github.com/coollabsio/coolify/pull/5386 Any help is welcome to polish it / correctly configure the OTEL collector.
Hi guys,
I was able to make an almost working template here: coollabsio/coolify#5386 Any help is welcome to polish it / correctly configure the OTEL collector.
Thanks a lot for your contribution, Gauthier!
Adding @prashant-shahi / @grandwizard28 to review this. Also I have pinged you in slack community, please do check.
@GauthierPLM Reviewed the PR and it looks good to me! :shipit:
Hi @prashant-shahi
Thank you for the review! Before submitting the complete PR to Coolify, I have two questions:
- In the compose-like file, I embed most of the files that are mounted in the official version of Signoz (like here https://github.com/SigNoz/signoz/blob/main/deploy/docker/docker-compose.yaml#L103). Is any of these files optional / only repeat default settings that I could remove from the template? If not, I'll probably remove most of the comments in there to make them lighter and resolve the Git Guardian issue reported in the PR.
- Do you have any health checks I could include for the otel-collector, so Coolify can easily track the service' health?
Thank you for your help :)
In the compose-like file, I embed most of the files that are mounted in the official version of Signoz (like here https://github.com/SigNoz/signoz/blob/main/deploy/docker/docker-compose.yaml#L103). Is any of these files optional / only repeat default settings that I could remove from the template? If not, I'll probably remove most of the comments in there to make them lighter and resolve the Git Guardian issue reported in the PR.
I did notice the attached default clickhouse config. When compared to the default clickhouse setting, I don't see much change apart from the JSON logging settings, which we can move to cluster config.
I think it should work fine without it. However, it's best to test it properly before removing it from the SigNoz installation.
Do you have any health checks I could include for the otel-collector, so Coolify can easily track the service' health?
yes, we have 13133 port for just that. However, it is not exposed by default in the current installation compose.
+1
any news ?
@GauthierPLM Do let me know if there are any blockers or questions that I can help you with.
@prashant-shahi @CinquinAndy unfortunately, no news from Coolify' developers. The PR is still awaiting merge.
However, one thing I found unpractical while maintaining the PR is the lack of a label on Docker images pointing to the latest release. The latest tag always points to the latest published image, which includes RCs and other dev build (according to tag list here: https://hub.docker.com/r/signoz/signoz/tags), meaning I can't rely on it in my Coolify template to point to the latest release only.
Having such tag would be helpful to ensure the template remains up-to-date and no regular PRs are needed to update the versions used. I opened an issue on this a while ago: #7388
I'd also be interested.
+1
+1
Hi all!
Support for the latest tag is now live on Docker Hub:
- https://hub.docker.com/r/signoz/signoz-otel-collector/tags
- https://hub.docker.com/r/signoz/signoz/tags
- https://hub.docker.com/r/signoz/signoz-schema-migrator/tags
Feel free to let us know if you hit any issues!! cc: @GauthierPLM
Hi all :)
I updated the template to use the new tags + I simplified the template by trying to only specify the settings that are actually overwritten (logging, enabling macros, and specifying user_defined_executable_functions_config). Tests are more than welcome!
@prashant-shahi could you confirm I did not miss any settings?
Also, I'd suggest not storing the whole clickhouse config files in SigNoz' repo and instead overwriting the settings you need as recommended in their (doc)[https://clickhouse.com/docs/install/docker#volumes]. This would clarify which settings have been changed by SigNoz.
Comparing Clickhouse' defaults with the file stored in this repo, hundred of lines / settings were changed by Clickhouse since you copied the config.xml in this repo, which made it quite hard to know which settings I should keep in the template.
We are continuously following up with Coolify Folks, and we're waiting for it to get merged; it looks like it will take some time.
Eagerly awaiting for this PR to be merged.
Any update on this PR?
@premdasvm Please follow up with coolify on above PR - https://github.com/coollabsio/coolify/pull/5386#issuecomment-3274883533
We are waiting on them to review PR
The Coolify PR has been merged: https://github.com/coollabsio/coolify/pull/5386.
Thanks, @GauthierPLM for the contributions