title: Plotly: unable to communicate with the local orca server process, even though the server process seems to be running
body: <p>When I render a plotly figure to a file as follows:</p>
  
  <pre><code>import plotly.graph_objects as go
  
  def produce_graph(graph, data_dir):
      figure = go.Figure()
      [...]
      figure.write_image("output_file.png")
  </code></pre>
  
  <p>I get the following error:</p>
  
  <pre><code>Traceback (most recent call last):
    File "/Users/brunorijsman/cascade-python/env/lib/python3.7/site-packages/plotly/io/_orca.py", line 1559, in to_image
      figure=fig_dict, format=format, scale=scale, width=width, height=height
    File "/Users/brunorijsman/cascade-python/env/lib/python3.7/site-packages/retrying.py", line 49, in wrapped_f
      return Retrying(*dargs, **dkw).call(f, *args, **kw)
    File "/Users/brunorijsman/cascade-python/env/lib/python3.7/site-packages/retrying.py", line 212, in call
      raise attempt.get()
    File "/Users/brunorijsman/cascade-python/env/lib/python3.7/site-packages/retrying.py", line 247, in get
      six.reraise(self.value[0], self.value[1], self.value[2])
    File "/Users/brunorijsman/cascade-python/env/lib/python3.7/site-packages/six.py", line 696, in reraise
      raise value
    File "/Users/brunorijsman/cascade-python/env/lib/python3.7/site-packages/retrying.py", line 200, in call
      attempt = Attempt(fn(*args, **kwargs), attempt_number, False)
    File "/Users/brunorijsman/cascade-python/env/lib/python3.7/site-packages/plotly/io/_orca.py", line 1474, in request_image_with_retrying
      raise OSError("522: client socket timeout")
  OSError: 522: client socket timeout
  
  During handling of the above exception, another exception occurred:
  
  Traceback (most recent call last):
    File "study/make_graphs.py", line 169, in &lt;module&gt;
      main()
    File "study/make_graphs.py", line 166, in main
      produce_graph(graph, args.data_dir)
    File "study/make_graphs.py", line 70, in produce_graph
      figure.write_image(output_file_name)
    File "/Users/brunorijsman/cascade-python/env/lib/python3.7/site-packages/plotly/basedatatypes.py", line 2824, in write_image
      return pio.write_image(self, *args, **kwargs)
    File "/Users/brunorijsman/cascade-python/env/lib/python3.7/site-packages/plotly/io/_orca.py", line 1767, in write_image
      fig, format=format, scale=scale, width=width, height=height, validate=validate
    File "/Users/brunorijsman/cascade-python/env/lib/python3.7/site-packages/plotly/io/_orca.py", line 1591, in to_image
      info=status_str
  ValueError: 
  For some reason plotly.py was unable to communicate with the
  local orca server process, even though the server process seems to be running.
  
  Please review the process and connection information below:
  
  orca status
  -----------
      state: running
      executable: /usr/local/bin/orca
      version: 1.2.1
      port: 65465
      pid: 90478
      command: ['/usr/local/bin/orca', 'serve', '-p', '65465', '--plotly', '/Users/brunorijsman/cascade-python/env/lib/python3.7/site-packages/plotly/package_data/plotly.min.js', '--graph-only', '--mathjax', 'https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js']
  </code></pre>
  
  <p>I also tried rendering to a .png file and to a .jpeg file and I get the exact same error in those cases as well.</p>
  
  <p>Rendering the figure to a browser works fine:</p>
  
  <pre><code>figure.show()
  </code></pre>
  
  <p>I already tried adding the following, but it made no difference:</p>
  
  <pre><code>plotly.io.orca.ensure_server()
  time.sleep(10)
  </code></pre>