Running Snowplow Micro without Docker

Hi everyone,

I’m trying to run Snowplow Micro directly from the JAR (without Docker) in a CI environment as part of our test pipeline, as Docker is not supported in our setup. However, I’ve encountered the following error:

snowplow-micro.jar!/reference.conf: 118: Document has trailing tokens after first object or array: '{'

It seems like the error is pointing to the reference.conf file inside the prebuilt JAR. I unarchived the JAR and looked inside the reference.conf, and it indeed contains two root-level objects, which seems to be the cause of the error.

  • Is running Snowplow Micro without Docker officially supported?
  • Has anyone come across this reference.conf issue when running outside of Docker?
  • Are there any specific configurations required to get it working without Docker?

I would really appreciate any advice or guidance on this.

Thanks in advance!

Hi dnedo!

It’s not just you, I can confirm the v2.1.0 version of micro has this error. It looks like the upgrade of the internal version of enrich from v3.8.0 > v4.2.0 makes the newly added reference.conf get merged with the reference.conf that already comes with the collector.

If you pin specifically to v2.0.0 it should work until this is fixed.
Looks like there’s also an issue with publishing the .jars for newer versions like v2.1.1 and v2.1.2 so that might be related.

1 Like

Thanks for flagging this, I’ve raised with the engineering teams as this is a known issue to see if we can get it fixed for you.

1 Like

Thanks, using v2.0.0 worked as a temporary solution while the engineering team looks into fixing the newer versions.