We are trying to run Geonode Generic from Rancher (using your master branch). I have tried with a few different host configurations of the agent side (Ubuntu 16.04, 18.04 Centos 7, Rancher installed docker via host deployment, manually installed docker). Always we get the same result- all services except the geonode container start fine. The Geonode container starts for a few seconds and then goes to an unhealthy state.
Looking at the logs from the container it seems to me like maybe your geonode container is using the python docker library to fetch some IP address/ports from other containers and that library version is not compatible with the docker daemon running on the deployed hosts. For info we are using as standard:
On the rancher server:
Docker version 17.12.1-ce, build 7390fc6
On the host running rancher agent:
Docker version 1.12.6, build 78d1802
6/1/2018 3:59:32 PMdocker.errors.APIError: 400 Client Error: Bad Request ("client is newer than server (client API version: 1.35, server API version: 1.24)")
6/1/2018 3:59:46 PM***************************initial*********************************
6/1/2018 3:59:46 PMTraceback (most recent call last):
6/1/2018 3:59:46 PM File "/usr/local/bin/invoke", line 11, in <module>
6/1/2018 3:59:46 PM sys.exit(program.run())
6/1/2018 3:59:46 PM File "/usr/local/lib/python2.7/site-packages/invoke/program.py", line 293, in run
6/1/2018 3:59:46 PM self.execute()
6/1/2018 3:59:46 PM File "/usr/local/lib/python2.7/site-packages/invoke/program.py", line 414, in execute
6/1/2018 3:59:46 PM executor.execute(*self.tasks)
6/1/2018 3:59:46 PM File "/usr/local/lib/python2.7/site-packages/invoke/executor.py", line 129, in execute
6/1/2018 3:59:46 PM result = call.task(*args, **call.kwargs)
6/1/2018 3:59:46 PM File "/usr/local/lib/python2.7/site-packages/invoke/tasks.py", line 115, in __call__
6/1/2018 3:59:46 PM result = self.body(*args, **kwargs)
6/1/2018 3:59:46 PM File "/usr/src/app/tasks.py", line 23, in update
6/1/2018 3:59:46 PM pub_ip = _geonode_public_host_ip()
6/1/2018 3:59:46 PM File "/usr/src/app/tasks.py", line 172, in _geonode_public_host_ip
6/1/2018 3:59:46 PM gn_pub_hostip = _docker_host_ip()
6/1/2018 3:59:46 PM File "/usr/src/app/tasks.py", line 112, in _docker_host_ip
6/1/2018 3:59:46 PM network_mode='host'
6/1/2018 3:59:46 PM File "/usr/local/lib/python2.7/site-packages/docker/models/containers.py", line 756, in run
6/1/2018 3:59:46 PM detach=detach, **kwargs)
6/1/2018 3:59:46 PM File "/usr/local/lib/python2.7/site-packages/docker/models/containers.py", line 814, in create
6/1/2018 3:59:46 PM resp = self.client.api.create_container(**create_kwargs)
6/1/2018 3:59:46 PM File "/usr/local/lib/python2.7/site-packages/docker/api/container.py", line 404, in create_container
6/1/2018 3:59:46 PM return self.create_container_from_config(config, name)
6/1/2018 3:59:46 PM File "/usr/local/lib/python2.7/site-packages/docker/api/container.py", line 415, in create_container_from_config
6/1/2018 3:59:46 PM return self._result(res, True)
6/1/2018 3:59:46 PM File "/usr/local/lib/python2.7/site-packages/docker/api/client.py", line 231, in _result
6/1/2018 3:59:46 PM self._raise_for_status(response)
6/1/2018 3:59:46 PM File "/usr/local/lib/python2.7/site-packages/docker/api/client.py", line 227, in _raise_for_status
6/1/2018 3:59:46 PM raise create_api_error_from_http_exception(e)
6/1/2018 3:59:46 PM File "/usr/local/lib/python2.7/site-packages/docker/errors.py", line 31, in create_api_error_from_http_exception
6/1/2018 3:59:46 PM raise cls(e, response=response, explanation=explanation)
6/1/2018 3:59:46 PMdocker.errors.APIError: 400 Client Error: Bad Request ("client is newer than server (client API version: 1.35, server API version: 1.24)")
6/1/2018 4:00:01 PM***************************initial*********************************
6/1/2018 4:00:01 PMTraceback (most recent call last):
6/1/2018 4:00:01 PM File "/usr/local/bin/invoke", line 11, in <module>
6/1/2018 4:00:01 PM sys.exit(program.run())
6/1/2018 4:00:01 PM File "/usr/local/lib/python2.7/site-packages/invoke/program.py", line 293, in run
6/1/2018 4:00:01 PM self.execute()
6/1/2018 4:00:01 PM File "/usr/local/lib/python2.7/site-packages/invoke/program.py", line 414, in execute
6/1/2018 4:00:01 PM executor.execute(*self.tasks)
6/1/2018 4:00:01 PM File "/usr/local/lib/python2.7/site-packages/invoke/executor.py", line 129, in execute
6/1/2018 4:00:01 PM result = call.task(*args, **call.kwargs)
6/1/2018 4:00:01 PM File "/usr/local/lib/python2.7/site-packages/invoke/tasks.py", line 115, in __call__
6/1/2018 4:00:01 PM result = self.body(*args, **kwargs)
6/1/2018 4:00:01 PM File "/usr/src/app/tasks.py", line 23, in update
6/1/2018 4:00:01 PM pub_ip = _geonode_public_host_ip()
6/1/2018 4:00:01 PM File "/usr/src/app/tasks.py", line 172, in _geonode_public_host_ip
6/1/2018 4:00:01 PM gn_pub_hostip = _docker_host_ip()
6/1/2018 4:00:01 PM File "/usr/src/app/tasks.py", line 112, in _docker_host_ip
6/1/2018 4:00:01 PM network_mode='host'
6/1/2018 4:00:01 PM File "/usr/local/lib/python2.7/site-packages/docker/models/containers.py", line 756, in run
6/1/2018 4:00:01 PM detach=detach, **kwargs)
6/1/2018 4:00:01 PM File "/usr/local/lib/python2.7/site-packages/docker/models/containers.py", line 814, in create
6/1/2018 4:00:01 PM resp = self.client.api.create_container(**create_kwargs)
6/1/2018 4:00:01 PM File "/usr/local/lib/python2.7/site-packages/docker/api/container.py", line 404, in create_container
6/1/2018 4:00:01 PM return self.create_container_from_config(config, name)
6/1/2018 4:00:01 PM File "/usr/local/lib/python2.7/site-packages/docker/api/container.py", line 415, in create_container_from_config
6/1/2018 4:00:01 PM return self._result(res, True)
6/1/2018 4:00:01 PM File "/usr/local/lib/python2.7/site-packages/docker/api/client.py", line 231, in _result
6/1/2018 4:00:01 PM self._raise_for_status(response)
6/1/2018 4:00:01 PM File "/usr/local/lib/python2.7/site-packages/docker/api/client.py", line 227, in _raise_for_status
6/1/2018 4:00:01 PM raise create_api_error_from_http_exception(e)
6/1/2018 4:00:01 PM File "/usr/local/lib/python2.7/site-packages/docker/errors.py", line 31, in create_api_error_from_http_exception
6/1/2018 4:00:01 PM raise cls(e, response=response, explanation=explanation)
6/1/2018 4:00:01 PMdocker.errors.APIError: 400 Client Error: Bad Request ("client is newer than server (client API version: 1.35, server API version: 1.24)")
6/1/2018 4:00:16 PMTraceback (most recent call last):
6/1/2018 4:00:16 PM File "/usr/local/bin/invoke", line 11, in <module>
6/1/2018 4:00:16 PM sys.exit(program.run())
6/1/2018 4:00:16 PM File "/usr/local/lib/python2.7/site-packages/invoke/program.py", line 293, in run
6/1/2018 4:00:16 PM self.execute()
6/1/2018 4:00:16 PM File "/usr/local/lib/python2.7/site-packages/invoke/program.py", line 414, in execute
6/1/2018 4:00:16 PM executor.execute(*self.tasks)
6/1/2018 4:00:16 PM File "/usr/local/lib/python2.7/site-packages/invoke/executor.py", line 129, in execute
6/1/2018 4:00:16 PM***************************initial*********************************
6/1/2018 4:00:16 PM result = call.task(*args, **call.kwargs)
6/1/2018 4:00:16 PM File "/usr/local/lib/python2.7/site-packages/invoke/tasks.py", line 115, in __call__
6/1/2018 4:00:16 PM result = self.body(*args, **kwargs)
6/1/2018 4:00:16 PM File "/usr/src/app/tasks.py", line 23, in update
6/1/2018 4:00:16 PM pub_ip = _geonode_public_host_ip()
6/1/2018 4:00:16 PM File "/usr/src/app/tasks.py", line 172, in _geonode_public_host_ip
6/1/2018 4:00:16 PM gn_pub_hostip = _docker_host_ip()
6/1/2018 4:00:16 PM File "/usr/src/app/tasks.py", line 112, in _docker_host_ip
6/1/2018 4:00:16 PM network_mode='host'
6/1/2018 4:00:16 PM File "/usr/local/lib/python2.7/site-packages/docker/models/containers.py", line 756, in run
6/1/2018 4:00:16 PM detach=detach, **kwargs)
6/1/2018 4:00:16 PM File "/usr/local/lib/python2.7/site-packages/docker/models/containers.py", line 814, in create
6/1/2018 4:00:16 PM resp = self.client.api.create_container(**create_kwargs)
6/1/2018 4:00:16 PM File "/usr/local/lib/python2.7/site-packages/docker/api/container.py", line 404, in create_container
6/1/2018 4:00:16 PM return self.create_container_from_config(config, name)
6/1/2018 4:00:16 PM File "/usr/local/lib/python2.7/site-packages/docker/api/container.py", line 415, in create_container_from_config
6/1/2018 4:00:16 PM return self._result(res, True)
6/1/2018 4:00:16 PM File "/usr/local/lib/python2.7/site-packages/docker/api/client.py", line 231, in _result
6/1/2018 4:00:16 PM self._raise_for_status(response)
6/1/2018 4:00:16 PM File "/usr/local/lib/python2.7/site-packages/docker/api/client.py", line 227, in _raise_for_status
6/1/2018 4:00:16 PM raise create_api_error_from_http_exception(e)
6/1/2018 4:00:16 PM File "/usr/local/lib/python2.7/site-packages/docker/errors.py", line 31, in create_api_error_from_http_exception
6/1/2018 4:00:16 PM raise cls(e, response=response, explanation=explanation)
6/1/2018 4:00:16 PMdocker.errors.APIError: 400 Client Error: Bad Request ("client is newer than server (client API version: 1.35, server API version: 1.24)")
We are trying to run Geonode Generic from Rancher (using your master branch). I have tried with a few different host configurations of the agent side (Ubuntu 16.04, 18.04 Centos 7, Rancher installed docker via host deployment, manually installed docker). Always we get the same result- all services except the geonode container start fine. The Geonode container starts for a few seconds and then goes to an unhealthy state.
Looking at the logs from the container it seems to me like maybe your geonode container is using the python docker library to fetch some IP address/ports from other containers and that library version is not compatible with the docker daemon running on the deployed hosts. For info we are using as standard:
On the rancher server: Docker version 17.12.1-ce, build 7390fc6
On the host running rancher agent: Docker version 1.12.6, build 78d1802