Blender2.82 Xvfb: virtual screen rendering with strange texture results (EEVEE)

I was trying to render some image in a Linux Docker with EEVEE render Engine. As I learnt EEVEE needs a display(Blender 2.8: "Unable to open a display" by the rendering on the background (Eevee)), i use Xvfb to create a virtual screen.
The command I used for create a virtual screen in Docker container is
Xvfb :0 -screen 0 3840x2160x16 -ac +extension GLX +render -noreset &
blender -b Panda.blend -P myscript.py -o out -f 1

After that I get a result with wrong texture and color. For the same file and script ran on my MacOs,I can get the correct on shown in the left img. I think the strange result might related to frame buffer/Rendering buffer, but I have no idea how to fix that.
WechatIMG4

I’d suspect the OpenGL implementation to be more likely the cause of problems than Xvfb itself. The Linux release build comes with blender-softwaregl which uses bundled Mesa libraries. It might be worth trying that in case the ones on your system are not new enough.