-3

I am trying to setup Jaeger using a CentOS base image instead of Alpine. The agent, collector, and Cassandra containers all work fine except for the query container. The Jaeger repository is here. After changing the base image to CentOS 7, commenting out the sections that apply to copying ca-certificates.crt and running docker-compose, I get the following nil pointer error message when tailing the query container

panic: runtime error: invalid memory address or nil pointer dereference

I ran the makefile with the necessary flags to compile the code in the app directory. Has anyone ever setup Jaeger using CentOS as a base image?

Below is the full stack error from the container

goroutine 1 [running]:
github.com/jaegertracing/jaeger/cmd/query/app.NewStaticAssetsHandler(0x0, 0x0, 0xe6cb85, 0x1, 0x0, 0x0, 0xc0000397a0, 0xc0000397b0, 0xc000137098)
    /Users/myusername/Go/src/github.com/jaegertracing/jaeger/cmd/query/app/static_handler.go:74 +0x5e
github.com/jaegertracing/jaeger/cmd/query/app.RegisterStaticHandler(0xc0000a7bd0, 0xc00009d080, 0xc0001eec80)
    /Users/myusername/Go/src/github.com/jaegertracing/jaeger/cmd/query/app/static_handler.go:45 +0x74
main.main.func1(0xc0001746c0, 0xc000184f60, 0x0, 0x2, 0x0, 0x0)
    /Users/myusername/Go/src/github.com/jaegertracing/jaeger/cmd/query/main.go:131 +0x14eb
github.com/jaegertracing/jaeger/vendor/github.com/spf13/cobra.(*Command).execute(0xc0001746c0, 0xc00008e0a0, 0x2, 0x2, 0xc0001746c0, 0xc00008e0a0)
    /Users/myusername/Go/src/github.com/jaegertracing/jaeger/vendor/github.com/spf13/cobra/command.go:698 +0x47a
github.com/jaegertracing/jaeger/vendor/github.com/spf13/cobra.(*Command).ExecuteC(0xc0001746c0, 0x0, 0x4, 0xc00009cfc0)
    /Users/myusername/Go/src/github.com/jaegertracing/jaeger/vendor/github.com/spf13/cobra/command.go:783 +0x2dc
github.com/jaegertracing/jaeger/vendor/github.com/spf13/cobra.(*Command).Execute(0xc0001746c0, 0xc0001746c0, 0xc000137f28)
    /Users/myusername/Go/src/github.com/jaegertracing/jaeger/vendor/github.com/spf13/cobra/command.go:736 +0x2b
main.main()
    /Users/myusername/Go/src/github.com/jaegertracing/jaeger/cmd/query/main.go:172 +0x5a6
{"level":"info","ts":1539888666.5870771,"caller":"healthcheck/handler.go:99","msg":"Health Check server started","http-port":16687,"status":"unavailable"}
{"level":"info","ts":1539888666.6052766,"caller":"cassandra/factory.go:92","msg":"Cassandra archive storage configuration is empty, skipping"}
{"level":"info","ts":1539888666.6063912,"caller":"query/main.go:186","msg":"Archive storage not created","reason":"Archive storage not configured"}
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xbe2b9e
David Maze
  • 130,717
  • 29
  • 175
  • 215
crusadecoder
  • 651
  • 1
  • 11
  • 26

1 Answers1

0

This is most likely caused by the static assets not being included in the binary. You can try that out by running the binary you compiled.

Instead of compiling on your own, a better approach would be to get the official binaries from the releases page and build your Docker container using that.

https://github.com/jaegertracing/jaeger/releases/latest

jpkroehling
  • 13,881
  • 1
  • 37
  • 39