hamstah / clouddream

Deepdreaming in the clouds: A Dockerized deepdream Guide
2 stars 1 forks source link

Docker build error #5

Open StevenGann opened 8 years ago

StevenGann commented 8 years ago

I'm pretty knew to Docker, so I'm not certain if this error message is significant or not. I do know that I can't get the system to work correctly (no errors or issues with the VISIONAI version).

docker build -t hamstah/deepdream-compute .

--2016-10-14 00:05:06--  https://google-glog.googlecode.com/files/glog-0.3.3.tar.gz
Resolving google-glog.googlecode.com (google-glog.googlecode.com)... 173.194.216.82, 2607:f8b0:400c:c12::52
Connecting to google-glog.googlecode.com (google-glog.googlecode.com)|173.194.216.82|:443... connected.
HTTP request sent, awaiting response... 404 Not Found
2016-10-14 00:05:06 ERROR 404: Not Found.
StevenGann commented 8 years ago

Looks like when you're downloading google-glog, you're trying to download from the defunct Google Code site. It's been moved to Github.

Investigating a fix.

StevenGann commented 8 years ago

Okay, it turns out the failure to download google-glog was stopping the whole docker build process. Updating the URL for downloading it help, though it still doesn't seem to be working and google-glog throws a compile error:

In file included from /usr/include/c++/4.6/ext/hash_set:61:0, from src/glog/stl_logging.h:54, from src/stl_logging_unittest.cc:34: /usr/include/c++/4.6/backward/backward_warning.h:33:2: warning: #warning This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date. Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated. [-Wcpp] In file included from src/utilities.h:73:0, from src/googletest.h:38, from src/stl_logging_unittest.cc:48: src/base/mutex.h:137:0: warning: "_XOPEN_SOURCE" redefined [enabled by default] /usr/include/features.h:162:0: note: this is the location of the previous definition

Sounds like a warning, but thought I'd document it anyway. It's the only highlighted error.

StevenGann commented 8 years ago

Looks like Cython is having trouble installing, specifically scikit.

Running setup.py (path:/tmp/pip_build_root/scikit-image/setup.py) egg_info for package scikit-image Unable to find pgen, not compiling formal grammar. No eggs found in /tmp/easy_install-PltZgq/Cython-0.24.1/egg-dist-tmp-uAWSGR (setup script problem?) Traceback (most recent call last): File "<string>", line 17, in <module> File "/tmp/pip_build_root/scikit-image/setup.py", line 146, in <module> **extra File "/usr/lib/python2.7/dist-packages/numpy/distutils/core.py", line 126, in setup dist = setup(**new_attr) File "/usr/lib/python2.7/dist-packages/numpy/distutils/core.py", line 169, in setup return old_setup(**new_attr) File "/usr/lib/python2.7/distutils/core.py", line 111, in setup _setup_distribution = dist = klass(attrs) File "/usr/lib/python2.7/dist-packages/numpy/distutils/numpy_distribution.py", line 16, in __init__ Distribution.__init__(self, attrs) File "/usr/lib/python2.7/dist-packages/setuptools/dist.py", line 239, in __init__ self.fetch_build_eggs(attrs.pop('setup_requires')) File "/usr/lib/python2.7/dist-packages/setuptools/dist.py", line 264, in fetch_build_eggs replace_conflicting=True File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 628, in resolve raise DistributionNotFound(req)

Continuing investigation.

StevenGann commented 8 years ago

Cython now installs correctly, and everything compiles/builds successfully.

Unfortunately, there's still no web server accessible.

hamstah commented 8 years ago

Hey Steven. Could you send a PR for the fix for the build step?

How did you start the services? What is the output of docker ps, do you have nginx running in there?

The issue could be that you already have a server running on the port used by the nginx container, see below for an example error message. "ERROR: for nginx driver failed programming external connectivity on endpoint clouddream_nginx_1 (378c34bc15828a7ed44b475c73b56c9d718d36b422e01036c16e72b66858c32e): Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use"

You can just edit the docker compose file to bind the nginx port to a different one, for example

nginx:
  image: nginx
  volumes:
    - ./deepdream:/opt/deepdream
    - ./deepdream/nginx.conf:/etc/nginx/nginx.conf
  links:
    - manager
  ports:
    - 8080:80

Hope this helps, sorry for the delay getting back to you

StevenGann commented 8 years ago

I'll definitely make a PR once I get it actually working.

How did you start the services?

The provided start.sh script.

What is the output of docker ps, do you have nginx running in there?

deepdream-nginx is present. I can't give you a full output because I had to clear everything out to change systems. I'll be starting fresh on a faster computer.

I'll try your suggestion for changing the port, but the instructions said to have Apache2 running. I'm not familiar with Nginx, but I did think it was odd to have two HTTP servers running at the same time.