diff --git a/lib/config/definitions.js b/lib/config/definitions.js
index 964709adc10353c93f6edb426bdf5b73202bbd06..13366aaa74fc4033ad104a3f8149c8bf10c3294a 100644
--- a/lib/config/definitions.js
+++ b/lib/config/definitions.js
@@ -1109,6 +1109,8 @@ const options = [
       commitMessageTopic: '{{{depName}}} Docker tag',
       major: { enabled: false },
       rollbackPrs: false,
+      commitMessageExtra:
+        'to v{{#if isMajor}}{{{newMajor}}}{{else}}{{{newVersion}}}{{/if}}',
       digest: {
         branchTopic: '{{{depNameSanitized}}}-{{{currentValue}}}',
         commitMessageExtra: 'to {{newDigestShort}}',
diff --git a/lib/datasource/docker.js b/lib/datasource/docker.js
index 38bcc795427fe8fa58f72e1115bd88acdca176db..9a171e6a020b3b72e6e363c537abb4a4bd83e3a0 100644
--- a/lib/datasource/docker.js
+++ b/lib/datasource/docker.js
@@ -108,20 +108,16 @@ function extractDigestFromResponse(manifestResponse) {
  * The `newValue` supplied here should be a valid tag for the docker image.
  *
  * This function will:
- *  - Reconstruct the tag using newValue and tagSuffix
- *  - Look up a sha256 digest for that tag on its registry
+ *  - Look up a sha256 digest for a tag on its registry
  *  - Return the digest as a string
  */
 
 async function getDigest(config, newValue) {
-  const { dockerRegistry, depName, tagSuffix } = config;
+  const { dockerRegistry, depName } = config;
   logger.debug(`getDigest(${dockerRegistry}, ${depName}, ${newValue})`);
   const massagedRegistry = massageRegistry(config, dockerRegistry);
   const repository = getRepository(depName, dockerRegistry);
-  let newTag = newValue || 'latest';
-  if (tagSuffix) {
-    newTag += `-${tagSuffix}`;
-  }
+  const newTag = newValue || 'latest';
   try {
     const cacheNamespace = 'datasource-docker-digest';
     const cacheKey = `${massagedRegistry}:${repository}:${newTag}`;
diff --git a/lib/manager/circleci/extract.js b/lib/manager/circleci/extract.js
index ba691bdcf18dcdfa2fea68022067062fe605b70b..f60923ad9327fffb9f1fc9c6ceabb782259ef517 100644
--- a/lib/manager/circleci/extract.js
+++ b/lib/manager/circleci/extract.js
@@ -17,7 +17,7 @@ function extractPackageFile(content) {
         {
           dockerRegistry: dep.dockerRegistry,
           depName: dep.depName,
-          currentTag: dep.currentTag,
+          currentValue: dep.currentValue,
           currentDigest: dep.currentDigest,
         },
         'CircleCI docker image'
diff --git a/lib/manager/docker-compose/extract.js b/lib/manager/docker-compose/extract.js
index feaa2ae7d3aac42a45b255d5e5a0324d9e323200..e235d46c8aa89265dee80cf0645ae6cca6abbd19 100644
--- a/lib/manager/docker-compose/extract.js
+++ b/lib/manager/docker-compose/extract.js
@@ -17,7 +17,7 @@ function extractPackageFile(content) {
         {
           dockerRegistry: dep.dockerRegistry,
           depName: dep.depName,
-          currentTag: dep.currentTag,
+          currentValue: dep.currentValue,
           currentDigest: dep.currentDigest,
         },
         'Docker Compose image'
@@ -27,7 +27,9 @@ function extractPackageFile(content) {
     }
     lineNumber += 1;
   }
-  deps = deps.filter(dep => !(dep.currentTag && dep.currentTag.includes('${')));
+  deps = deps.filter(
+    dep => !(dep.currentValue && dep.currentValue.includes('${'))
+  );
   if (!deps.length) {
     return null;
   }
diff --git a/lib/manager/dockerfile/extract.js b/lib/manager/dockerfile/extract.js
index 0a62e2c09052a055165efa5ba90242b4728c8d28..91a1581f2e07d042f91384348c74d515a6516a7b 100644
--- a/lib/manager/dockerfile/extract.js
+++ b/lib/manager/dockerfile/extract.js
@@ -14,38 +14,22 @@ function splitImageParts(currentFrom) {
   }
   const currentDepTagDigest = split.join('/');
   const [currentDepTag, currentDigest] = currentDepTagDigest.split('@');
-  const [depName, currentTag] = currentDepTag.split(':');
-  let currentValue;
-  let tagSuffix;
-  if (currentTag) {
-    [currentValue, ...tagSuffix] = currentTag.split('-');
-    tagSuffix = tagSuffix && tagSuffix.length ? tagSuffix.join('-') : undefined;
-  }
+  const [depName, currentValue] = currentDepTag.split(':');
   return {
     dockerRegistry,
     depName,
-    currentTag,
     currentDigest,
     currentDepTagDigest,
     currentDepTag,
     currentValue,
-    tagSuffix,
   };
 }
 
-function getPurl(dockerRegistry, depName, tagSuffix) {
+function getPurl(dockerRegistry, depName) {
   let purl = `pkg:docker/${depName}`;
   if (dockerRegistry) {
     purl += `?registry=${dockerRegistry}`;
   }
-  if (tagSuffix) {
-    if (!purl.includes('?')) {
-      purl += '?';
-    } else {
-      purl += '&';
-    }
-    purl += `suffix=${tagSuffix}`;
-  }
   return purl;
 }
 
@@ -55,7 +39,7 @@ function getDep(currentFrom) {
     currentFrom,
     versionScheme: 'docker',
   };
-  const purl = getPurl(dep.dockerRegistry, dep.depName, dep.tagSuffix);
+  const purl = getPurl(dep.dockerRegistry, dep.depName);
   dep.purl = purl;
   if (
     (dep.depName === 'node' || dep.depName.endsWith('/node')) &&
@@ -89,7 +73,7 @@ function extractPackageFile(content) {
         logger.debug(
           {
             depName: dep.depName,
-            currentTag: dep.currentTag,
+            currentValue: dep.currentValue,
             currentDigest: dep.currentDigest,
           },
           'Dockerfile FROM'
@@ -114,7 +98,7 @@ function extractPackageFile(content) {
         logger.info(
           {
             depName: dep.depName,
-            currentTag: dep.currentTag,
+            currentValue: dep.currentValue,
             currentDigest: dep.currentDigest,
           },
           'Dockerfile COPY --from'
diff --git a/lib/manager/dockerfile/update.js b/lib/manager/dockerfile/update.js
index 7bdd89866a9791c946f2c33e4eca0b2e9e270f86..378155567947768ff0ee9a55f49c8cd0cd449fa4 100644
--- a/lib/manager/dockerfile/update.js
+++ b/lib/manager/dockerfile/update.js
@@ -4,14 +4,11 @@ module.exports = {
 };
 
 function getNewFrom(upgrade) {
-  const { dockerRegistry, depName, newValue, tagSuffix, newDigest } = upgrade;
+  const { dockerRegistry, depName, newValue, newDigest } = upgrade;
   let newFrom = dockerRegistry ? `${dockerRegistry}/` : '';
   newFrom += `${depName}`;
   if (newValue) {
     newFrom += `:${newValue}`;
-    if (tagSuffix) {
-      newFrom += `-${tagSuffix}`;
-    }
   }
   if (newDigest) {
     newFrom += `@${newDigest}`;
diff --git a/lib/manager/kubernetes/extract.js b/lib/manager/kubernetes/extract.js
index 1f02f81f719b4fb08fbe68d6910fd1aef0758765..ee6421550c1583c7a9a7163ba8c2ad4d84f69e25 100644
--- a/lib/manager/kubernetes/extract.js
+++ b/lib/manager/kubernetes/extract.js
@@ -24,7 +24,7 @@ function extractPackageFile(content) {
         {
           dockerRegistry: dep.dockerRegistry,
           depName: dep.depName,
-          currentTag: dep.currentTag,
+          currentValue: dep.currentValue,
           currentDigest: dep.currentDigest,
         },
         'Kubernetes image'
@@ -34,7 +34,9 @@ function extractPackageFile(content) {
     }
     lineNumber += 1;
   }
-  deps = deps.filter(dep => !(dep.currentTag && dep.currentTag.includes('${')));
+  deps = deps.filter(
+    dep => !(dep.currentValue && dep.currentValue.includes('${'))
+  );
   if (!deps.length) {
     return null;
   }
diff --git a/lib/versioning/docker/index.js b/lib/versioning/docker/index.js
index c2a07e9e02145ef2448bad476104bf92fa488778..aff7726004c31f4e632425a4163f2659c2bc6b88 100644
--- a/lib/versioning/docker/index.js
+++ b/lib/versioning/docker/index.js
@@ -9,6 +9,11 @@ function parse(version) {
   return { release, suffix: suffix || '' };
 }
 
+function valueToVersion(value) {
+  // Remove any suffix after '-', e.g. '-alpine'
+  return value ? value.split('-')[0] : value;
+}
+
 function compare(version1, vervion2) {
   const parsed1 = parse(version1);
   const parsed2 = parse(vervion2);
@@ -50,4 +55,5 @@ module.exports = {
     compare,
   }),
   isCompatible,
+  valueToVersion,
 };
diff --git a/lib/workers/branch/index.js b/lib/workers/branch/index.js
index 265b77330643e599eef46c83560d1b4145e6bda1..e0cddd84f21fc76509d8e138821d3b505795b5e3 100644
--- a/lib/workers/branch/index.js
+++ b/lib/workers/branch/index.js
@@ -63,7 +63,7 @@ async function processBranch(branchConfig, prHourlyLimitReached, packageFiles) {
           content = `As this PR has been closed unmerged, Renovate will ignore this upgrade updateType and you will not receive PRs for *any* future ${
             config.depName
           }:${
-            config.currentTag
+            config.currentValue
           } digest updates. Digest updates will resume if you update the specified tag at any time.`;
         } else {
           content = `As this PR has been closed unmerged, Renovate will now ignore this update (${
diff --git a/lib/workers/repository/process/lookup/index.js b/lib/workers/repository/process/lookup/index.js
index 26e20f11623376fb8ed5774a78b9d1477c531925..52f78026731d655e0e2bfa17d3753998b3fd6ec9 100644
--- a/lib/workers/repository/process/lookup/index.js
+++ b/lib/workers/repository/process/lookup/index.js
@@ -26,6 +26,7 @@ async function lookupUpdates(config) {
     isVersion,
     matches,
     getNewValue,
+    valueToVersion,
   } = versioning.get(config.versionScheme);
   const res = { updates: [], warnings: [] };
   if (isValid(currentValue)) {
@@ -202,6 +203,16 @@ async function lookupUpdates(config) {
         });
       }
     }
+    if (valueToVersion) {
+      for (const release of res.releases || []) {
+        release.version = valueToVersion(release.version);
+      }
+      for (const update of res.updates || []) {
+        update.newVersion = valueToVersion(update.newValue);
+        update.fromVersion = valueToVersion(update.fromVersion);
+        update.toVersion = valueToVersion(update.toVersion);
+      }
+    }
     // update digest for all
     for (const update of res.updates) {
       if (config.pinDigests || config.currentDigest) {
diff --git a/lib/workers/repository/updates/branchify.js b/lib/workers/repository/updates/branchify.js
index c482406865c2c56045755194fe6c29d6a3de9857..ebbce8261cf2a5c611faa6e395f7027c3146b174 100644
--- a/lib/workers/repository/updates/branchify.js
+++ b/lib/workers/repository/updates/branchify.js
@@ -36,7 +36,7 @@ function branchifyUpgrades(config, packageFiles) {
     const update = { ...u };
     // Massage legacy vars just in case
     update.currentVersion = update.currentValue;
-    update.newVersion = update.newValue;
+    update.newVersion = update.newVersion || update.newValue;
     // massage for handlebars
     const upper = str => str.charAt(0).toUpperCase() + str.substr(1);
     if (update.updateType) {
diff --git a/test/datasource/docker.spec.js b/test/datasource/docker.spec.js
index f283d23740a193d70cdc28d7ef9d484a82bfa5af..bb0f20bd4d30a3e362332a651f56b5f09a9759d1 100644
--- a/test/datasource/docker.spec.js
+++ b/test/datasource/docker.spec.js
@@ -136,8 +136,8 @@ describe('api/docker', () => {
         headers: { 'docker-content-digest': 'some-digest' },
       });
       const res = await docker.getDigest(
-        { depName: 'some-dep', tagSuffix: 'alpine' },
-        '8.0.0'
+        { depName: 'some-dep' },
+        '8.0.0-alpine'
       );
       expect(res).toBe('some-digest');
     });
diff --git a/test/manager/circleci/__snapshots__/extract.spec.js.snap b/test/manager/circleci/__snapshots__/extract.spec.js.snap
index 77a10b1d8ea4c8f4cbc4c4e66df4d76ee569c9ad..e5d8b7ed773a99a6a918e1dfabb16213ef9cc751 100644
--- a/test/manager/circleci/__snapshots__/extract.spec.js.snap
+++ b/test/manager/circleci/__snapshots__/extract.spec.js.snap
@@ -8,13 +8,11 @@ Array [
     "currentDepTagDigest": "node",
     "currentDigest": undefined,
     "currentFrom": "node",
-    "currentTag": undefined,
     "currentValue": undefined,
     "depName": "node",
     "dockerRegistry": undefined,
     "lineNumber": 12,
     "purl": "pkg:docker/node",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
   Object {
@@ -23,13 +21,11 @@ Array [
     "currentDepTagDigest": "node:4",
     "currentDigest": undefined,
     "currentFrom": "node:4",
-    "currentTag": "4",
     "currentValue": "4",
     "depName": "node",
     "dockerRegistry": undefined,
     "lineNumber": 57,
     "purl": "pkg:docker/node",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
   Object {
@@ -38,13 +34,11 @@ Array [
     "currentDepTagDigest": "node:6",
     "currentDigest": undefined,
     "currentFrom": "node:6",
-    "currentTag": "6",
     "currentValue": "6",
     "depName": "node",
     "dockerRegistry": undefined,
     "lineNumber": 61,
     "purl": "pkg:docker/node",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
   Object {
@@ -53,13 +47,11 @@ Array [
     "currentDepTagDigest": "node:8.9.0",
     "currentDigest": undefined,
     "currentFrom": "node:8.9.0",
-    "currentTag": "8.9.0",
     "currentValue": "8.9.0",
     "depName": "node",
     "dockerRegistry": undefined,
     "lineNumber": 65,
     "purl": "pkg:docker/node",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
diff --git a/test/manager/docker-compose/__snapshots__/extract.spec.js.snap b/test/manager/docker-compose/__snapshots__/extract.spec.js.snap
index 32fee42dfa8649e049b0e57bb555191379a44182..67168308988f48faa6c0b4f21464da21ac4cdbac 100644
--- a/test/manager/docker-compose/__snapshots__/extract.spec.js.snap
+++ b/test/manager/docker-compose/__snapshots__/extract.spec.js.snap
@@ -7,13 +7,11 @@ Array [
     "currentDepTagDigest": "something/redis:alpine",
     "currentDigest": undefined,
     "currentFrom": "quay.io/something/redis:alpine",
-    "currentTag": "alpine",
     "currentValue": "alpine",
     "depName": "something/redis",
     "dockerRegistry": "quay.io",
     "lineNumber": 4,
     "purl": "pkg:docker/something/redis?registry=quay.io",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
   Object {
@@ -22,13 +20,11 @@ Array [
     "currentDepTagDigest": "node:10.0.0",
     "currentDigest": undefined,
     "currentFrom": "node:10.0.0",
-    "currentTag": "10.0.0",
     "currentValue": "10.0.0",
     "depName": "node",
     "dockerRegistry": undefined,
     "lineNumber": 18,
     "purl": "pkg:docker/node",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
   Object {
@@ -36,13 +32,11 @@ Array [
     "currentDepTagDigest": "postgres:9.4.0",
     "currentDigest": undefined,
     "currentFrom": "postgres:9.4.0",
-    "currentTag": "9.4.0",
     "currentValue": "9.4.0",
     "depName": "postgres",
     "dockerRegistry": undefined,
     "lineNumber": 21,
     "purl": "pkg:docker/postgres",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
   Object {
@@ -50,13 +44,11 @@ Array [
     "currentDepTagDigest": "dockersamples/examplevotingapp_vote:before",
     "currentDigest": undefined,
     "currentFrom": "dockersamples/examplevotingapp_vote:before",
-    "currentTag": "before",
     "currentValue": "before",
     "depName": "dockersamples/examplevotingapp_vote",
     "dockerRegistry": undefined,
     "lineNumber": 31,
     "purl": "pkg:docker/dockersamples/examplevotingapp_vote",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
   Object {
@@ -64,13 +56,11 @@ Array [
     "currentDepTagDigest": "dockersamples/examplevotingapp_result:before",
     "currentDigest": undefined,
     "currentFrom": "dockersamples/examplevotingapp_result:before",
-    "currentTag": "before",
     "currentValue": "before",
     "depName": "dockersamples/examplevotingapp_result",
     "dockerRegistry": undefined,
     "lineNumber": 46,
     "purl": "pkg:docker/dockersamples/examplevotingapp_result",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
   Object {
@@ -78,13 +68,11 @@ Array [
     "currentDepTagDigest": "dockersamples/examplevotingapp_worker",
     "currentDigest": undefined,
     "currentFrom": "dockersamples/examplevotingapp_worker",
-    "currentTag": undefined,
     "currentValue": undefined,
     "depName": "dockersamples/examplevotingapp_worker",
     "dockerRegistry": undefined,
     "lineNumber": 62,
     "purl": "pkg:docker/dockersamples/examplevotingapp_worker",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
   Object {
@@ -92,13 +80,11 @@ Array [
     "currentDepTagDigest": "dockersamples/visualizer:stable",
     "currentDigest": undefined,
     "currentFrom": "dockersamples/visualizer:stable",
-    "currentTag": "stable",
     "currentValue": "stable",
     "depName": "dockersamples/visualizer",
     "dockerRegistry": undefined,
     "lineNumber": 79,
     "purl": "pkg:docker/dockersamples/visualizer",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
diff --git a/test/manager/dockerfile/__snapshots__/extract.spec.js.snap b/test/manager/dockerfile/__snapshots__/extract.spec.js.snap
index 567365120e489b84eaf8dc8a862c8718d9cdc565..5903e28fe2730454bc4ea06d259048b136b4e0e8 100644
--- a/test/manager/dockerfile/__snapshots__/extract.spec.js.snap
+++ b/test/manager/dockerfile/__snapshots__/extract.spec.js.snap
@@ -8,15 +8,13 @@ Array [
     "currentDepTagDigest": "node:8.11.3-alpine@sha256:d743b4141b02fcfb8beb68f92b4cd164f60ee457bf2d053f36785bf86de16b0d",
     "currentDigest": "sha256:d743b4141b02fcfb8beb68f92b4cd164f60ee457bf2d053f36785bf86de16b0d",
     "currentFrom": "node:8.11.3-alpine@sha256:d743b4141b02fcfb8beb68f92b4cd164f60ee457bf2d053f36785bf86de16b0d",
-    "currentTag": "8.11.3-alpine",
-    "currentValue": "8.11.3",
+    "currentValue": "8.11.3-alpine",
     "depName": "node",
     "dockerRegistry": undefined,
     "fromPrefix": "FROM",
     "fromSuffix": "AS node",
     "lineNumber": 2,
-    "purl": "pkg:docker/node?suffix=alpine",
-    "tagSuffix": "alpine",
+    "purl": "pkg:docker/node",
     "versionScheme": "docker",
   },
   Object {
@@ -24,7 +22,6 @@ Array [
     "currentDepTagDigest": "buildkite/puppeteer:1.1.1",
     "currentDigest": undefined,
     "currentFrom": "buildkite/puppeteer:1.1.1",
-    "currentTag": "1.1.1",
     "currentValue": "1.1.1",
     "depName": "buildkite/puppeteer",
     "dockerRegistry": undefined,
@@ -32,7 +29,6 @@ Array [
     "fromSuffix": "AS puppeteer",
     "lineNumber": 3,
     "purl": "pkg:docker/buildkite/puppeteer",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
@@ -46,7 +42,6 @@ Array [
     "currentDepTagDigest": "node:6.12.3",
     "currentDigest": undefined,
     "currentFrom": "node:6.12.3",
-    "currentTag": "6.12.3",
     "currentValue": "6.12.3",
     "depName": "node",
     "dockerRegistry": undefined,
@@ -54,7 +49,6 @@ Array [
     "fromSuffix": "as frontend",
     "lineNumber": 0,
     "purl": "pkg:docker/node",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
   Object {
@@ -62,15 +56,13 @@ Array [
     "currentDepTagDigest": "python:3.6-slim",
     "currentDigest": undefined,
     "currentFrom": "python:3.6-slim",
-    "currentTag": "3.6-slim",
-    "currentValue": "3.6",
+    "currentValue": "3.6-slim",
     "depName": "python",
     "dockerRegistry": undefined,
     "fromPrefix": "FROM",
     "fromSuffix": "",
     "lineNumber": 4,
-    "purl": "pkg:docker/python?suffix=slim",
-    "tagSuffix": "slim",
+    "purl": "pkg:docker/python",
     "versionScheme": "docker",
   },
 ]
@@ -83,7 +75,6 @@ Array [
     "currentDepTagDigest": "k8s-skaffold/skaffold:v0.11.0",
     "currentDigest": undefined,
     "currentFrom": "gcr.io/k8s-skaffold/skaffold:v0.11.0",
-    "currentTag": "v0.11.0",
     "currentValue": "v0.11.0",
     "depName": "k8s-skaffold/skaffold",
     "dockerRegistry": "gcr.io",
@@ -91,7 +82,6 @@ Array [
     "fromSuffix": "/usr/bin/skaffold /usr/bin/skaffold",
     "lineNumber": 1,
     "purl": "pkg:docker/k8s-skaffold/skaffold?registry=gcr.io",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
@@ -105,7 +95,6 @@ Array [
     "currentDepTagDigest": "node:8.7.0",
     "currentDigest": undefined,
     "currentFrom": "registry.allmine.info:5005/node:8.7.0",
-    "currentTag": "8.7.0",
     "currentValue": "8.7.0",
     "depName": "node",
     "dockerRegistry": "registry.allmine.info:5005",
@@ -113,7 +102,6 @@ Array [
     "fromSuffix": "",
     "lineNumber": 0,
     "purl": "pkg:docker/node?registry=registry.allmine.info:5005",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
@@ -126,7 +114,6 @@ Array [
     "currentDepTagDigest": "calico/node",
     "currentDigest": undefined,
     "currentFrom": "calico/node",
-    "currentTag": undefined,
     "currentValue": undefined,
     "depName": "calico/node",
     "dockerRegistry": undefined,
@@ -134,7 +121,6 @@ Array [
     "fromSuffix": "",
     "lineNumber": 0,
     "purl": "pkg:docker/calico/node",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
@@ -148,7 +134,6 @@ Array [
     "currentDepTagDigest": "node",
     "currentDigest": undefined,
     "currentFrom": "node",
-    "currentTag": undefined,
     "currentValue": undefined,
     "depName": "node",
     "dockerRegistry": undefined,
@@ -156,7 +141,6 @@ Array [
     "fromSuffix": "",
     "lineNumber": 3,
     "purl": "pkg:docker/node",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
@@ -170,7 +154,6 @@ Array [
     "currentDepTagDigest": "node:8",
     "currentDigest": undefined,
     "currentFrom": "registry2.something.info/node:8",
-    "currentTag": "8",
     "currentValue": "8",
     "depName": "node",
     "dockerRegistry": "registry2.something.info",
@@ -178,7 +161,6 @@ Array [
     "fromSuffix": "",
     "lineNumber": 0,
     "purl": "pkg:docker/node?registry=registry2.something.info",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
@@ -192,15 +174,13 @@ Array [
     "currentDepTagDigest": "node:8-alpine",
     "currentDigest": undefined,
     "currentFrom": "registry2.something.info/node:8-alpine",
-    "currentTag": "8-alpine",
-    "currentValue": "8",
+    "currentValue": "8-alpine",
     "depName": "node",
     "dockerRegistry": "registry2.something.info",
     "fromPrefix": "FROM",
     "fromSuffix": "",
     "lineNumber": 0,
-    "purl": "pkg:docker/node?registry=registry2.something.info&suffix=alpine",
-    "tagSuffix": "alpine",
+    "purl": "pkg:docker/node?registry=registry2.something.info",
     "versionScheme": "docker",
   },
 ]
@@ -214,7 +194,6 @@ Array [
     "currentDepTagDigest": "someaccount/node:8",
     "currentDigest": undefined,
     "currentFrom": "registry2.something.info/someaccount/node:8",
-    "currentTag": "8",
     "currentValue": "8",
     "depName": "someaccount/node",
     "dockerRegistry": "registry2.something.info",
@@ -222,7 +201,6 @@ Array [
     "fromSuffix": "",
     "lineNumber": 0,
     "purl": "pkg:docker/someaccount/node?registry=registry2.something.info",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
@@ -236,7 +214,6 @@ Array [
     "currentDepTagDigest": "node:8",
     "currentDigest": undefined,
     "currentFrom": "registry2.something.info:5005/node:8",
-    "currentTag": "8",
     "currentValue": "8",
     "depName": "node",
     "dockerRegistry": "registry2.something.info:5005",
@@ -244,7 +221,6 @@ Array [
     "fromSuffix": "",
     "lineNumber": 0,
     "purl": "pkg:docker/node?registry=registry2.something.info:5005",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
@@ -258,7 +234,6 @@ Array [
     "currentDepTagDigest": "node@sha256:eb85fc5b1198f5e1ec025ea07586bdbbf397e7d82df66c90d7511f533517e063",
     "currentDigest": "sha256:eb85fc5b1198f5e1ec025ea07586bdbbf397e7d82df66c90d7511f533517e063",
     "currentFrom": "node@sha256:eb85fc5b1198f5e1ec025ea07586bdbbf397e7d82df66c90d7511f533517e063",
-    "currentTag": undefined,
     "currentValue": undefined,
     "depName": "node",
     "dockerRegistry": undefined,
@@ -266,7 +241,6 @@ Array [
     "fromSuffix": "",
     "lineNumber": 0,
     "purl": "pkg:docker/node",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
@@ -280,15 +254,13 @@ Array [
     "currentDepTagDigest": "node:8.9.0-alpine",
     "currentDigest": undefined,
     "currentFrom": "node:8.9.0-alpine",
-    "currentTag": "8.9.0-alpine",
-    "currentValue": "8.9.0",
+    "currentValue": "8.9.0-alpine",
     "depName": "node",
     "dockerRegistry": undefined,
     "fromPrefix": "FROM",
     "fromSuffix": "as base",
     "lineNumber": 0,
-    "purl": "pkg:docker/node?suffix=alpine",
-    "tagSuffix": "alpine",
+    "purl": "pkg:docker/node",
     "versionScheme": "docker",
   },
 ]
@@ -302,7 +274,6 @@ Array [
     "currentDepTagDigest": "node",
     "currentDigest": undefined,
     "currentFrom": "node",
-    "currentTag": undefined,
     "currentValue": undefined,
     "depName": "node",
     "dockerRegistry": undefined,
@@ -310,7 +281,6 @@ Array [
     "fromSuffix": "",
     "lineNumber": 0,
     "purl": "pkg:docker/node",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
@@ -324,7 +294,6 @@ Array [
     "currentDepTagDigest": "mynamespace/node:8",
     "currentDigest": undefined,
     "currentFrom": "mynamespace/node:8",
-    "currentTag": "8",
     "currentValue": "8",
     "depName": "mynamespace/node",
     "dockerRegistry": undefined,
@@ -332,7 +301,6 @@ Array [
     "fromSuffix": "",
     "lineNumber": 0,
     "purl": "pkg:docker/mynamespace/node",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
@@ -346,15 +314,13 @@ Array [
     "currentDepTagDigest": "node:8.9.0-alpine",
     "currentDigest": undefined,
     "currentFrom": "node:8.9.0-alpine",
-    "currentTag": "8.9.0-alpine",
-    "currentValue": "8.9.0",
+    "currentValue": "8.9.0-alpine",
     "depName": "node",
     "dockerRegistry": undefined,
     "fromPrefix": "FROM",
     "fromSuffix": "",
     "lineNumber": 0,
-    "purl": "pkg:docker/node?suffix=alpine",
-    "tagSuffix": "alpine",
+    "purl": "pkg:docker/node",
     "versionScheme": "docker",
   },
 ]
@@ -368,7 +334,6 @@ Array [
     "currentDepTagDigest": "node:8.9.0@sha256:eb85fc5b1198f5e1ec025ea07586bdbbf397e7d82df66c90d7511f533517e063",
     "currentDigest": "sha256:eb85fc5b1198f5e1ec025ea07586bdbbf397e7d82df66c90d7511f533517e063",
     "currentFrom": "node:8.9.0@sha256:eb85fc5b1198f5e1ec025ea07586bdbbf397e7d82df66c90d7511f533517e063",
-    "currentTag": "8.9.0",
     "currentValue": "8.9.0",
     "depName": "node",
     "dockerRegistry": undefined,
@@ -376,7 +341,6 @@ Array [
     "fromSuffix": "",
     "lineNumber": 0,
     "purl": "pkg:docker/node",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
@@ -390,7 +354,6 @@ Array [
     "currentDepTagDigest": "node",
     "currentDigest": undefined,
     "currentFrom": "node",
-    "currentTag": undefined,
     "currentValue": undefined,
     "depName": "node",
     "dockerRegistry": undefined,
@@ -398,7 +361,6 @@ Array [
     "fromSuffix": "",
     "lineNumber": 0,
     "purl": "pkg:docker/node",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
@@ -412,7 +374,6 @@ Array [
     "currentDepTagDigest": "node:6.12.3",
     "currentDigest": undefined,
     "currentFrom": "node:6.12.3",
-    "currentTag": "6.12.3",
     "currentValue": "6.12.3",
     "depName": "node",
     "dockerRegistry": undefined,
@@ -420,7 +381,6 @@ Array [
     "fromSuffix": "as frontend",
     "lineNumber": 0,
     "purl": "pkg:docker/node",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
@@ -434,7 +394,6 @@ Array [
     "currentDepTagDigest": "node:6.12.3",
     "currentDigest": undefined,
     "currentFrom": "node:6.12.3",
-    "currentTag": "6.12.3",
     "currentValue": "6.12.3",
     "depName": "node",
     "dockerRegistry": undefined,
@@ -442,7 +401,6 @@ Array [
     "fromSuffix": "as frontend",
     "lineNumber": 0,
     "purl": "pkg:docker/node",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
@@ -456,7 +414,6 @@ Array [
     "currentDepTagDigest": "node:6.12.3",
     "currentDigest": undefined,
     "currentFrom": "node:6.12.3",
-    "currentTag": "6.12.3",
     "currentValue": "6.12.3",
     "depName": "node",
     "dockerRegistry": undefined,
@@ -464,7 +421,6 @@ Array [
     "fromSuffix": "as frontend",
     "lineNumber": 0,
     "purl": "pkg:docker/node",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
diff --git a/test/manager/dockerfile/__snapshots__/update.spec.js.snap b/test/manager/dockerfile/__snapshots__/update.spec.js.snap
index ef595744b5bf8d14c934d4be662716cc050c1b74..d7467353fe5f3b8a5798387b0d2f2478e024e589 100644
--- a/test/manager/dockerfile/__snapshots__/update.spec.js.snap
+++ b/test/manager/dockerfile/__snapshots__/update.spec.js.snap
@@ -22,7 +22,7 @@ COPY --from=gcr.io/k8s-skaffold/skaffold:v0.12.0 /usr/bin/skaffold /usr/bin/skaf
 
 exports[`manager/dockerfile/update updateDependency replaces existing value 1`] = `
 "# comment FROM node:8
-FROM node:8-alpine@sha256:abcdefghijklmnop
+FROM node:8.1-alpine@sha256:abcdefghijklmnop
 RUN something
 "
 `;
diff --git a/test/manager/dockerfile/extract.spec.js b/test/manager/dockerfile/extract.spec.js
index 0c105000e07b3a2739888b7ca3728c1d57dbd740..5d385ca3302d2cec37dd80122cdd05e1439e5d8e 100644
--- a/test/manager/dockerfile/extract.spec.js
+++ b/test/manager/dockerfile/extract.spec.js
@@ -45,7 +45,6 @@ describe('lib/manager/dockerfile/extract', () => {
       const res = extractPackageFile('FROM node:8.9.0-alpine as base\n', config)
         .deps;
       expect(res).toMatchSnapshot();
-      //  expect(res.currentTag.includes(' ')).toBe(false);
     });
     it('handles comments', () => {
       const res = extractPackageFile(
diff --git a/test/manager/dockerfile/update.spec.js b/test/manager/dockerfile/update.spec.js
index 3a1c6b881f474f1b150e47554592e92dbab79364..afc8fb3424b15e8d3cb3d63a23b32ae231b51789 100644
--- a/test/manager/dockerfile/update.spec.js
+++ b/test/manager/dockerfile/update.spec.js
@@ -7,10 +7,9 @@ describe('manager/dockerfile/update', () => {
       const upgrade = {
         lineNumber: 1,
         depName: 'node',
-        newValue: '8',
+        newValue: '8.1-alpine',
         fromPrefix: 'FROM',
         fromSuffix: '',
-        tagSuffix: 'alpine',
         newDigest: 'sha256:abcdefghijklmnop',
       };
       const res = dockerfile.updateDependency(fileContent, upgrade);
diff --git a/test/manager/gitlabci/__snapshots__/extract.spec.js.snap b/test/manager/gitlabci/__snapshots__/extract.spec.js.snap
index 0bcd76a4ba85b80da4fdae96ff0a777b95dfaca7..3342b99539de9ba3d3f55d57159b7d5c9630cdc3 100644
--- a/test/manager/gitlabci/__snapshots__/extract.spec.js.snap
+++ b/test/manager/gitlabci/__snapshots__/extract.spec.js.snap
@@ -7,14 +7,12 @@ Array [
     "currentDepTagDigest": "hadolint/hadolint:latest",
     "currentDigest": undefined,
     "currentFrom": "hadolint/hadolint:latest",
-    "currentTag": "latest",
     "currentValue": "latest",
     "depName": "hadolint/hadolint",
     "depType": "image",
     "dockerRegistry": undefined,
     "lineNumber": 36,
     "purl": "pkg:docker/hadolint/hadolint",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
   Object {
@@ -22,14 +20,12 @@ Array [
     "currentDepTagDigest": "docker:latest",
     "currentDigest": undefined,
     "currentFrom": "docker:latest",
-    "currentTag": "latest",
     "currentValue": "latest",
     "depName": "docker",
     "depType": "image",
     "dockerRegistry": undefined,
     "lineNumber": 53,
     "purl": "pkg:docker/docker",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
   Object {
@@ -37,14 +33,12 @@ Array [
     "currentDepTagDigest": "docker:dind",
     "currentDigest": undefined,
     "currentFrom": "docker:dind",
-    "currentTag": "dind",
     "currentValue": "dind",
     "depName": "docker",
     "depType": "service-image",
     "dockerRegistry": undefined,
     "lineNumber": 55,
     "purl": "pkg:docker/docker",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
   Object {
@@ -52,14 +46,12 @@ Array [
     "currentDepTagDigest": "docker:latest",
     "currentDigest": undefined,
     "currentFrom": "docker:latest",
-    "currentTag": "latest",
     "currentValue": "latest",
     "depName": "docker",
     "depType": "image",
     "dockerRegistry": undefined,
     "lineNumber": 75,
     "purl": "pkg:docker/docker",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
   Object {
@@ -67,14 +59,12 @@ Array [
     "currentDepTagDigest": "docker:dind",
     "currentDigest": undefined,
     "currentFrom": "docker:dind",
-    "currentTag": "dind",
     "currentValue": "dind",
     "depName": "docker",
     "depType": "service-image",
     "dockerRegistry": undefined,
     "lineNumber": 77,
     "purl": "pkg:docker/docker",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
diff --git a/test/manager/kubernetes/__snapshots__/extract.spec.js.snap b/test/manager/kubernetes/__snapshots__/extract.spec.js.snap
index 6c985710a36fd54145e7aba14194af03bbd7b742..899e1707d14edb86e1813cf61ed3c6c41c801a76 100644
--- a/test/manager/kubernetes/__snapshots__/extract.spec.js.snap
+++ b/test/manager/kubernetes/__snapshots__/extract.spec.js.snap
@@ -7,13 +7,11 @@ Array [
     "currentDepTagDigest": "external_storage/local-volume-provisioner:v2.1.0",
     "currentDigest": undefined,
     "currentFrom": "quay.io/external_storage/local-volume-provisioner:v2.1.0",
-    "currentTag": "v2.1.0",
     "currentValue": "v2.1.0",
     "depName": "external_storage/local-volume-provisioner",
     "dockerRegistry": "quay.io",
     "lineNumber": 14,
     "purl": "pkg:docker/external_storage/local-volume-provisioner?registry=quay.io",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
@@ -26,13 +24,11 @@ Array [
     "currentDepTagDigest": "nginx:1.7.9",
     "currentDigest": undefined,
     "currentFrom": "nginx:1.7.9",
-    "currentTag": "1.7.9",
     "currentValue": "1.7.9",
     "depName": "nginx",
     "dockerRegistry": undefined,
     "lineNumber": 18,
     "purl": "pkg:docker/nginx",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
   Object {
@@ -40,13 +36,11 @@ Array [
     "currentDepTagDigest": "kube-proxy-amd64:v1.11.1",
     "currentDigest": undefined,
     "currentFrom": "k8s.gcr.io/kube-proxy-amd64:v1.11.1",
-    "currentTag": "v1.11.1",
     "currentValue": "v1.11.1",
     "depName": "kube-proxy-amd64",
     "dockerRegistry": "k8s.gcr.io",
     "lineNumber": 46,
     "purl": "pkg:docker/kube-proxy-amd64?registry=k8s.gcr.io",
-    "tagSuffix": undefined,
     "versionScheme": "docker",
   },
 ]
diff --git a/test/workers/repository/process/lookup/__snapshots__/index.spec.js.snap b/test/workers/repository/process/lookup/__snapshots__/index.spec.js.snap
index e68236b70763fb795f062ed532b0deb4937c0118..eddbf205348848099731fd62681aa441fc4db80b 100644
--- a/test/workers/repository/process/lookup/__snapshots__/index.spec.js.snap
+++ b/test/workers/repository/process/lookup/__snapshots__/index.spec.js.snap
@@ -868,6 +868,7 @@ Object {
       "newMajor": 9,
       "newMinor": null,
       "newValue": "9",
+      "newVersion": "9",
       "releaseTimestamp": undefined,
       "toVersion": "9",
       "updateType": "major",
@@ -901,6 +902,7 @@ Object {
       "newMajor": 8,
       "newMinor": 2,
       "newValue": "8.2",
+      "newVersion": "8.2",
       "releaseTimestamp": undefined,
       "toVersion": "8.2",
       "updateType": "minor",
@@ -912,6 +914,7 @@ Object {
       "newMajor": 9,
       "newMinor": 0,
       "newValue": "9.0",
+      "newVersion": "9.0",
       "releaseTimestamp": undefined,
       "toVersion": "9.0",
       "updateType": "major",
@@ -948,6 +951,7 @@ Object {
       "newMajor": 8,
       "newMinor": 2,
       "newValue": "8.2.5",
+      "newVersion": "8.2.5",
       "releaseTimestamp": undefined,
       "toVersion": "8.2.5",
       "updateType": "minor",
diff --git a/test/workers/repository/updates/__snapshots__/flatten.spec.js.snap b/test/workers/repository/updates/__snapshots__/flatten.spec.js.snap
index d6ac38b77985812f15fc11b48984b6df3c126bbf..807664ce672aeaa6023620302d220027908b0138 100644
--- a/test/workers/repository/updates/__snapshots__/flatten.spec.js.snap
+++ b/test/workers/repository/updates/__snapshots__/flatten.spec.js.snap
@@ -573,7 +573,7 @@ Array [
     "commitBody": null,
     "commitMessage": "{{{commitMessagePrefix}}} {{{commitMessageAction}}} {{{commitMessageTopic}}} {{{commitMessageExtra}}} {{{commitMessageSuffix}}}",
     "commitMessageAction": "Update",
-    "commitMessageExtra": "to {{#if isMajor}}v{{{newMajor}}}{{else}}{{#if isSingleVersion}}v{{{toVersion}}}{{else}}{{{newValue}}}{{/if}}{{/if}}",
+    "commitMessageExtra": "to v{{#if isMajor}}{{{newMajor}}}{{else}}{{{newVersion}}}{{/if}}",
     "commitMessagePrefix": null,
     "commitMessageSuffix": null,
     "commitMessageTopic": "{{{depName}}} Docker tag",
@@ -666,7 +666,7 @@ Array [
     "commitBody": null,
     "commitMessage": "{{{commitMessagePrefix}}} {{{commitMessageAction}}} {{{commitMessageTopic}}} {{{commitMessageExtra}}} {{{commitMessageSuffix}}}",
     "commitMessageAction": "Update",
-    "commitMessageExtra": "to {{#if isMajor}}v{{{newMajor}}}{{else}}{{#if isSingleVersion}}v{{{toVersion}}}{{else}}{{{newValue}}}{{/if}}{{/if}}",
+    "commitMessageExtra": "to v{{#if isMajor}}{{{newMajor}}}{{else}}{{{newVersion}}}{{/if}}",
     "commitMessagePrefix": null,
     "commitMessageSuffix": null,
     "commitMessageTopic": "{{{depName}}} Docker tag",