NCAR / lrose-core

Core C/C++ code for LROSE.
https://www.eol.ucar.edu/content/lidar-radar-open-software-environment
Other
92 stars 51 forks source link

Docker install #80

Closed nguy closed 4 years ago

nguy commented 5 years ago

I followed the docker install instructions on the new website. To allow Hawkeye to run with lrose -- HawkEye -f ~/data/nexrad/20180515/* I had to do two things to avoid the following error

xhost:  bad hostname "3(NXDOMAIN)"
QXcbConnection: Could not connect to display 3(NXDOMAIN):0

I had to do the following, which might be useful for install instructions.

  1. Start XQuartz and ensure that Allow connections from network Clients was selected (close and restart to enable)
  2. A modification for obtaining the IP address of my machine [I am running MacOS 10.13.6] beginning at Line 93. I commented out the lines replaced.
    
    # Common docker options

my_os=uname case $my_os in Linux) DISPLAY_OPT="--env=DISPLAY --env QT_X11_NO_MITSHM=1" ;; Darwin) my_host=hostname

my_ip=host $my_host

my_ip=${my_ip##* }

my_ip=$(ifconfig en0 | grep inet | awk '$1=="inet" {print $2}')
DISPLAY_OPT="-e DISPLAY=$my_ip:0"
xhost +$my_ip > /dev/null
;;
*)
echo "Unknown OS '$my_os'. I don't know how to set up DISPLAY. Using Linux"
DISPLAY_OPT="--env=\"DISPLAY\" --env QT_X11_NO_MITSHM=1"
;;

esac



This information was found [on this blog](https://sourabhbajaj.com/blog/2017/02/07/gui-applications-docker-mac/). Not sure if this is applicable for others, but in case others have issues with this method as well.
leavesntwigs commented 4 years ago

Thank you! I added your fix for my_ip to the lrose script in release-tools/elle/lrose-docker-scripts.