diff --git a/gitlab_docker_autodep/deps.py b/gitlab_docker_autodep/deps.py
index 72fea3fb81ced77d65c2891dd1d0253b1e6eb313..c5ae360663b1ca229aec9aff88fa92708f9e847f 100644
--- a/gitlab_docker_autodep/deps.py
+++ b/gitlab_docker_autodep/deps.py
@@ -65,7 +65,7 @@ def build_dependency_tree(gl, search_pattern=None, filter_pattern=None):
         df = _fetch_dockerfile(gl, project, 'master')
         if not df:
             continue
-        base_image = _parse_dockerfile(df)
+        base_image = _parse_dockerfile(df.decode('utf-8'))
         if not base_image:
             logging.error('ERROR: could not find base image for %s',
                           project.path_with_namespace)
diff --git a/gitlab_docker_autodep/main.py b/gitlab_docker_autodep/main.py
index 6a22dcb643a5b28a106e354e974ef8c668545b0c..5c87ea4b86db49118a7b343e99b5bf557868d24d 100644
--- a/gitlab_docker_autodep/main.py
+++ b/gitlab_docker_autodep/main.py
@@ -2,7 +2,10 @@ import argparse
 import logging
 import os
 import time
-import urlparse
+try:
+    import urlparse
+except ImportError:
+    import urllib.parse as urlparse
 
 from .deps import rebuild_deps
 from .server import run_app
diff --git a/gitlab_docker_autodep/server.py b/gitlab_docker_autodep/server.py
index cadb961f9d17ad6a92654ec1f7bc03a10d9c053a..3d7b772b37ed8c974c6548681b4134eb3c1dae70 100644
--- a/gitlab_docker_autodep/server.py
+++ b/gitlab_docker_autodep/server.py
@@ -1,7 +1,10 @@
 import gitlab
-import Queue
 import threading
 import time
+try:
+    import Queue
+except ImportError:
+    import queue as Queue
 from flask import Flask, request, make_response
 from .deps import build_dependency_tree, rebuild