diff --git a/lib/manager/circleci/extract.js b/lib/manager/circleci/extract.js
index c57f8230b5149227e14391edb747761588e54abe..d9c77c2ba6556ac7e59924c1f276f14459981c18 100644
--- a/lib/manager/circleci/extract.js
+++ b/lib/manager/circleci/extract.js
@@ -1,4 +1,4 @@
-const { splitImageParts, getPurl } = require('../docker/extract');
+const { getDep } = require('../docker/extract');
 
 module.exports = {
   extractDependencies,
@@ -12,39 +12,17 @@ function extractDependencies(content) {
     const match = line.match(/^\s*- image:\s*'?"?([^\s'"]+)'?"?\s*$/);
     if (match) {
       const currentFrom = match[1];
-      const {
-        dockerRegistry,
-        depName,
-        currentTag,
-        currentDigest,
-        currentDepTagDigest,
-        currentDepTag,
-        currentValue,
-        tagSuffix,
-      } = splitImageParts(currentFrom);
+      const dep = getDep(currentFrom);
       logger.info(
-        { dockerRegistry, depName, currentTag, currentDigest },
+        {
+          dockerRegistry: dep.dockerRegistry,
+          depName: dep.depName,
+          currentTag: dep.currentTag,
+          currentDigest: dep.currentDigest,
+        },
         'CircleCI docker image'
       );
-      const purl = getPurl(dockerRegistry, depName, tagSuffix);
-      const dep = {
-        lineNumber,
-        currentFrom,
-        fromVersion: currentFrom,
-        currentDepTagDigest,
-        dockerRegistry,
-        currentDepTag,
-        currentDigest,
-        depName,
-        currentTag,
-        currentValue,
-        tagSuffix,
-        purl,
-        versionScheme: 'docker',
-      };
-      if (depName === 'node' || depName.endsWith('/node')) {
-        dep.commitMessageTopic = 'Node.js';
-      }
+      dep.lineNumber = lineNumber;
       deps.push(dep);
     }
     lineNumber += 1;
diff --git a/test/manager/circleci/__snapshots__/extract.spec.js.snap b/test/manager/circleci/__snapshots__/extract.spec.js.snap
index ff66f0033f63f561a98b9f810097f83aae4512ed..98589cb2def7ae0777812ad344f98172c8f200b4 100644
--- a/test/manager/circleci/__snapshots__/extract.spec.js.snap
+++ b/test/manager/circleci/__snapshots__/extract.spec.js.snap
@@ -12,7 +12,7 @@ Array [
     "currentValue": undefined,
     "depName": "node",
     "dockerRegistry": undefined,
-    "fromVersion": "node",
+    "language": "docker",
     "lineNumber": 12,
     "purl": "pkg:docker/node",
     "tagSuffix": undefined,
@@ -28,7 +28,7 @@ Array [
     "currentValue": "4",
     "depName": "node",
     "dockerRegistry": undefined,
-    "fromVersion": "node:4",
+    "language": "docker",
     "lineNumber": 57,
     "purl": "pkg:docker/node",
     "tagSuffix": undefined,
@@ -44,7 +44,7 @@ Array [
     "currentValue": "6",
     "depName": "node",
     "dockerRegistry": undefined,
-    "fromVersion": "node:6",
+    "language": "docker",
     "lineNumber": 61,
     "purl": "pkg:docker/node",
     "tagSuffix": undefined,
@@ -60,7 +60,7 @@ Array [
     "currentValue": "8.9.0",
     "depName": "node",
     "dockerRegistry": undefined,
-    "fromVersion": "node:8.9.0",
+    "language": "docker",
     "lineNumber": 65,
     "purl": "pkg:docker/node",
     "tagSuffix": undefined,