diff --git a/lib/config/definitions.js b/lib/config/definitions.js
index 838f47a157304ca1c10b294d1dbf6e77a7a27716..2ec3dbb7e465d4877684c611762d2b069ef7cf29 100644
--- a/lib/config/definitions.js
+++ b/lib/config/definitions.js
@@ -946,11 +946,10 @@ const options = [
   },
   {
     name: 'docker',
-    description: 'Configuration object for Dockerfile renovation',
+    description: 'Configuration object for Docker language',
     stage: 'package',
     type: 'json',
     default: {
-      fileMatch: ['(^|/)Dockerfile$'],
       managerBranchPrefix: 'docker-',
       commitMessageTopic: '{{{depName}}} Docker tag',
       prBody: template('prBody', 'docker'),
@@ -995,6 +994,17 @@ const options = [
     mergeable: true,
     cli: false,
   },
+  {
+    name: 'dockerfile',
+    description: 'Configuration object for Dockerfile renovation',
+    stage: 'package',
+    type: 'json',
+    default: {
+      fileMatch: ['(^|/)Dockerfile$'],
+    },
+    mergeable: true,
+    cli: false,
+  },
   {
     name: 'circleci',
     description:
diff --git a/lib/manager/circleci/extract.js b/lib/manager/circleci/extract.js
index d9c77c2ba6556ac7e59924c1f276f14459981c18..ed7ae9fb5ea4bfdd6f173747074fbedd4b6c1990 100644
--- a/lib/manager/circleci/extract.js
+++ b/lib/manager/circleci/extract.js
@@ -1,4 +1,4 @@
-const { getDep } = require('../docker/extract');
+const { getDep } = require('../dockerfile/extract');
 
 module.exports = {
   extractDependencies,
diff --git a/lib/manager/circleci/update.js b/lib/manager/circleci/update.js
index a2eeefe5b1f433e8a2324ebd06a3bb0a7eefae26..91e50b10cef62e640acd01c7c1c0749aa747ad2e 100644
--- a/lib/manager/circleci/update.js
+++ b/lib/manager/circleci/update.js
@@ -1,4 +1,4 @@
-const { getNewFrom } = require('../docker/update');
+const { getNewFrom } = require('../dockerfile/update');
 
 module.exports = {
   updateDependency,
diff --git a/lib/manager/docker-compose/extract.js b/lib/manager/docker-compose/extract.js
index 47aa49054c5519dc77b268698b9a6e077587c24e..75d7569ba37b36eaf70b32772a070c6709fb8a37 100644
--- a/lib/manager/docker-compose/extract.js
+++ b/lib/manager/docker-compose/extract.js
@@ -1,4 +1,4 @@
-const { getDep } = require('../docker/extract');
+const { getDep } = require('../dockerfile/extract');
 
 module.exports = {
   extractDependencies,
diff --git a/lib/manager/docker-compose/update.js b/lib/manager/docker-compose/update.js
index a5f303ab7a484cd1fd5baf948e1d54f461d5f653..8e8779633e484f60d224640fade716c58e96a316 100644
--- a/lib/manager/docker-compose/update.js
+++ b/lib/manager/docker-compose/update.js
@@ -1,4 +1,4 @@
-const { getNewFrom } = require('../docker/update');
+const { getNewFrom } = require('../dockerfile/update');
 
 module.exports = {
   updateDependency,
diff --git a/lib/manager/docker/extract.js b/lib/manager/dockerfile/extract.js
similarity index 100%
rename from lib/manager/docker/extract.js
rename to lib/manager/dockerfile/extract.js
diff --git a/lib/manager/docker/index.js b/lib/manager/dockerfile/index.js
similarity index 80%
rename from lib/manager/docker/index.js
rename to lib/manager/dockerfile/index.js
index 75e547b3e95e82ee0a49b0aeeb8c5d9d47c8b332..5549e42b60034aa403b42b687243eac9ce402789 100644
--- a/lib/manager/docker/index.js
+++ b/lib/manager/dockerfile/index.js
@@ -1,7 +1,10 @@
 const { extractDependencies } = require('./extract');
 const { updateDependency } = require('./update');
 
+const language = 'docker';
+
 module.exports = {
   extractDependencies,
+  language,
   updateDependency,
 };
diff --git a/lib/manager/docker/update.js b/lib/manager/dockerfile/update.js
similarity index 100%
rename from lib/manager/docker/update.js
rename to lib/manager/dockerfile/update.js
diff --git a/lib/manager/index.js b/lib/manager/index.js
index ba990736aa961c76bf69da511af5ef6948b8a0b2..4d3c3f686c334fbc88593bec7f10afdfed2e5b56 100644
--- a/lib/manager/index.js
+++ b/lib/manager/index.js
@@ -3,8 +3,8 @@ const managerList = [
   'buildkite',
   'circleci',
   'composer',
-  'docker',
   'docker-compose',
+  'dockerfile',
   'meteor',
   'npm',
   'nvm',
diff --git a/lib/workers/repository/onboarding/pr/config-description.js b/lib/workers/repository/onboarding/pr/config-description.js
index ee7ce645a7c1da6632012af8f0207d51707bfecc..3f96ad6da4523c29fc600d07f67e8f3d4339e71c 100644
--- a/lib/workers/repository/onboarding/pr/config-description.js
+++ b/lib/workers/repository/onboarding/pr/config-description.js
@@ -25,7 +25,9 @@ function getConfigDesc(config, packageFiles) {
   }
   logger.debug({ length: descriptionArr.length }, 'Found description array');
   const managers = packageFiles ? Object.keys(packageFiles) : [];
-  if (!(managers.includes('docker') || managers.includes('docker-compose'))) {
+  if (
+    !(managers.includes('dockerfile') || managers.includes('docker-compose'))
+  ) {
     descriptionArr = descriptionArr.filter(val => !val.includes('Docker-only'));
   }
   let desc = `\n## Configuration Summary\n\nBased on the currently configured presets, Renovate will:\n\n`;
diff --git a/test/manager/docker/__snapshots__/extract.spec.js.snap b/test/manager/dockerfile/__snapshots__/extract.spec.js.snap
similarity index 86%
rename from test/manager/docker/__snapshots__/extract.spec.js.snap
rename to test/manager/dockerfile/__snapshots__/extract.spec.js.snap
index 2fab76e736b7f746463fe3e0703eb8ea9c50c0a4..e4c22b5fa5608c94a3c87e1e4adb5fdb6b98ba7f 100644
--- a/test/manager/docker/__snapshots__/extract.spec.js.snap
+++ b/test/manager/dockerfile/__snapshots__/extract.spec.js.snap
@@ -1,6 +1,6 @@
 // Jest Snapshot v1, https://goo.gl/fbAQLP
 
-exports[`lib/manager/docker/extract extractDependencies() extracts images on adjacent lines 1`] = `
+exports[`lib/manager/dockerfile/extract extractDependencies() extracts images on adjacent lines 1`] = `
 Array [
   Object {
     "commitMessageTopic": "Node.js",
@@ -38,7 +38,7 @@ Array [
 ]
 `;
 
-exports[`lib/manager/docker/extract extractDependencies() extracts multiple FROM tags 1`] = `
+exports[`lib/manager/dockerfile/extract extractDependencies() extracts multiple FROM tags 1`] = `
 Array [
   Object {
     "commitMessageTopic": "Node.js",
@@ -76,7 +76,7 @@ Array [
 ]
 `;
 
-exports[`lib/manager/docker/extract extractDependencies() handles abnoral spacing 1`] = `
+exports[`lib/manager/dockerfile/extract extractDependencies() handles abnoral spacing 1`] = `
 Array [
   Object {
     "commitMessageTopic": "Node.js",
@@ -98,7 +98,7 @@ Array [
 ]
 `;
 
-exports[`lib/manager/docker/extract extractDependencies() handles comments 1`] = `
+exports[`lib/manager/dockerfile/extract extractDependencies() handles comments 1`] = `
 Array [
   Object {
     "commitMessageTopic": "Node.js",
@@ -120,7 +120,7 @@ Array [
 ]
 `;
 
-exports[`lib/manager/docker/extract extractDependencies() handles custom hosts 1`] = `
+exports[`lib/manager/dockerfile/extract extractDependencies() handles custom hosts 1`] = `
 Array [
   Object {
     "commitMessageTopic": "Node.js",
@@ -142,7 +142,7 @@ Array [
 ]
 `;
 
-exports[`lib/manager/docker/extract extractDependencies() handles custom hosts and suffix 1`] = `
+exports[`lib/manager/dockerfile/extract extractDependencies() handles custom hosts and suffix 1`] = `
 Array [
   Object {
     "commitMessageTopic": "Node.js",
@@ -164,7 +164,7 @@ Array [
 ]
 `;
 
-exports[`lib/manager/docker/extract extractDependencies() handles custom hosts with namespace 1`] = `
+exports[`lib/manager/dockerfile/extract extractDependencies() handles custom hosts with namespace 1`] = `
 Array [
   Object {
     "commitMessageTopic": "Node.js",
@@ -186,7 +186,7 @@ Array [
 ]
 `;
 
-exports[`lib/manager/docker/extract extractDependencies() handles custom hosts with port 1`] = `
+exports[`lib/manager/dockerfile/extract extractDependencies() handles custom hosts with port 1`] = `
 Array [
   Object {
     "commitMessageTopic": "Node.js",
@@ -208,7 +208,7 @@ Array [
 ]
 `;
 
-exports[`lib/manager/docker/extract extractDependencies() handles digest 1`] = `
+exports[`lib/manager/dockerfile/extract extractDependencies() handles digest 1`] = `
 Array [
   Object {
     "commitMessageTopic": "Node.js",
@@ -230,7 +230,7 @@ Array [
 ]
 `;
 
-exports[`lib/manager/docker/extract extractDependencies() handles from as 1`] = `
+exports[`lib/manager/dockerfile/extract extractDependencies() handles from as 1`] = `
 Array [
   Object {
     "commitMessageTopic": "Node.js",
@@ -252,7 +252,7 @@ Array [
 ]
 `;
 
-exports[`lib/manager/docker/extract extractDependencies() handles naked dep 1`] = `
+exports[`lib/manager/dockerfile/extract extractDependencies() handles naked dep 1`] = `
 Array [
   Object {
     "commitMessageTopic": "Node.js",
@@ -274,7 +274,7 @@ Array [
 ]
 `;
 
-exports[`lib/manager/docker/extract extractDependencies() handles namespaced images 1`] = `
+exports[`lib/manager/dockerfile/extract extractDependencies() handles namespaced images 1`] = `
 Array [
   Object {
     "commitMessageTopic": "Node.js",
@@ -296,7 +296,7 @@ Array [
 ]
 `;
 
-exports[`lib/manager/docker/extract extractDependencies() handles tag 1`] = `
+exports[`lib/manager/dockerfile/extract extractDependencies() handles tag 1`] = `
 Array [
   Object {
     "commitMessageTopic": "Node.js",
@@ -318,7 +318,7 @@ Array [
 ]
 `;
 
-exports[`lib/manager/docker/extract extractDependencies() handles tag and digest 1`] = `
+exports[`lib/manager/dockerfile/extract extractDependencies() handles tag and digest 1`] = `
 Array [
   Object {
     "commitMessageTopic": "Node.js",
@@ -340,7 +340,7 @@ Array [
 ]
 `;
 
-exports[`lib/manager/docker/extract extractDependencies() is case insensitive 1`] = `
+exports[`lib/manager/dockerfile/extract extractDependencies() is case insensitive 1`] = `
 Array [
   Object {
     "commitMessageTopic": "Node.js",
@@ -362,7 +362,7 @@ Array [
 ]
 `;
 
-exports[`lib/manager/docker/extract extractDependencies() skips named multistage FROM tags 1`] = `
+exports[`lib/manager/dockerfile/extract extractDependencies() skips named multistage FROM tags 1`] = `
 Array [
   Object {
     "commitMessageTopic": "Node.js",
diff --git a/test/manager/docker/__snapshots__/update.spec.js.snap b/test/manager/dockerfile/__snapshots__/update.spec.js.snap
similarity index 55%
rename from test/manager/docker/__snapshots__/update.spec.js.snap
rename to test/manager/dockerfile/__snapshots__/update.spec.js.snap
index de3f74481d586c21bd25dacd463dedc119852b9b..8e9dd8c5b3e1d13e9d925566d1a7306338b43d18 100644
--- a/test/manager/docker/__snapshots__/update.spec.js.snap
+++ b/test/manager/dockerfile/__snapshots__/update.spec.js.snap
@@ -1,27 +1,27 @@
 // Jest Snapshot v1, https://goo.gl/fbAQLP
 
-exports[`manager/docker/update updateDependency handles similar FROM 1`] = `
+exports[`manager/dockerfile/update updateDependency handles similar FROM 1`] = `
 "FROM debian:wheezy@sha256:abcdefghijklmnop as stage-1
 RUN something
 FROM debian:wheezy@sha256:abcdefghijklmnop
 RUN something else"
 `;
 
-exports[`manager/docker/update updateDependency handles strange whitespace 1`] = `
+exports[`manager/dockerfile/update updateDependency handles strange whitespace 1`] = `
 "# comment FROM node:8
 FROM node:8@sha256:abcdefghijklmnop as base
 RUN something
 "
 `;
 
-exports[`manager/docker/update updateDependency replaces existing value 1`] = `
+exports[`manager/dockerfile/update updateDependency replaces existing value 1`] = `
 "# comment FROM node:8
 FROM node:8-alpine@sha256:abcdefghijklmnop
 RUN something
 "
 `;
 
-exports[`manager/docker/update updateDependency replaces existing value with suffix 1`] = `
+exports[`manager/dockerfile/update updateDependency replaces existing value with suffix 1`] = `
 "# comment FROM node:8
 FROM node:8@sha256:abcdefghijklmnop as base
 RUN something
diff --git a/test/manager/docker/extract.spec.js b/test/manager/dockerfile/extract.spec.js
similarity index 96%
rename from test/manager/docker/extract.spec.js
rename to test/manager/dockerfile/extract.spec.js
index 40226fd05bc1e31478e839ed9ee6d918576ba4f4..48340cf14756cb57dc7c279d5c3f35c36903ff65 100644
--- a/test/manager/docker/extract.spec.js
+++ b/test/manager/dockerfile/extract.spec.js
@@ -1,9 +1,11 @@
 const fs = require('fs');
-const { extractDependencies } = require('../../../lib/manager/docker/extract');
+const {
+  extractDependencies,
+} = require('../../../lib/manager/dockerfile/extract');
 
 const d1 = fs.readFileSync('test/_fixtures/docker/Dockerfile1', 'utf8');
 
-describe('lib/manager/docker/extract', () => {
+describe('lib/manager/dockerfile/extract', () => {
   describe('extractDependencies()', () => {
     let config;
     beforeEach(() => {
diff --git a/test/manager/docker/update.spec.js b/test/manager/dockerfile/update.spec.js
similarity index 96%
rename from test/manager/docker/update.spec.js
rename to test/manager/dockerfile/update.spec.js
index 4ff90fb7c515000382c2fe8a38213fd96b17e332..b24c7654c3a3f02731094658b13d0d813cd250c2 100644
--- a/test/manager/docker/update.spec.js
+++ b/test/manager/dockerfile/update.spec.js
@@ -1,6 +1,6 @@
-const dockerfile = require('../../../lib/manager/docker/update');
+const dockerfile = require('../../../lib/manager/dockerfile/update');
 
-describe('manager/docker/update', () => {
+describe('manager/dockerfile/update', () => {
   describe('updateDependency', () => {
     it('replaces existing value', () => {
       const fileContent = '# comment FROM node:8\nFROM node:8\nRUN something\n';
diff --git a/test/manager/index.spec.js b/test/manager/index.spec.js
index 6e67b20a617ef8fdcfbe0e1eff10b1a61426d0e3..b427a93477d7eb9347ed9924d0080a22d8db6ae4 100644
--- a/test/manager/index.spec.js
+++ b/test/manager/index.spec.js
@@ -3,7 +3,7 @@ const manager = require('../../lib/manager');
 describe('manager', () => {
   describe('get()', () => {
     it('gets something', () => {
-      expect(manager.get('docker', 'extractDependencies')).not.toBe(null);
+      expect(manager.get('dockerfile', 'extractDependencies')).not.toBe(null);
     });
   });
   describe('getLanguageList()', () => {
@@ -18,7 +18,7 @@ describe('manager', () => {
   });
   describe('postExtract()', () => {
     it('returns null', () => {
-      expect(manager.postExtract('docker', [])).toBe(null);
+      expect(manager.postExtract('dockerfile', [])).toBe(null);
     });
     it('returns postExtract', () => {
       expect(manager.postExtract('npm', [])).not.toBe(null);
diff --git a/test/workers/repository/extract/__snapshots__/index.spec.js.snap b/test/workers/repository/extract/__snapshots__/index.spec.js.snap
index dbc6dd67a3f805d2455704e16745ecd1329602da..707924ce03ba008092db0d7e662eb40cef79d11f 100644
--- a/test/workers/repository/extract/__snapshots__/index.spec.js.snap
+++ b/test/workers/repository/extract/__snapshots__/index.spec.js.snap
@@ -14,10 +14,10 @@ Object {
   "composer": Array [
     Object {},
   ],
-  "docker": Array [
+  "docker-compose": Array [
     Object {},
   ],
-  "docker-compose": Array [
+  "dockerfile": Array [
     Object {},
   ],
   "meteor": Array [
diff --git a/test/workers/repository/onboarding/pr/config-description.spec.js b/test/workers/repository/onboarding/pr/config-description.spec.js
index 781c8c969c96baca444ddbada28197553e75b789..dbd3b7a02250db153459aa96c92375e61b1bf126 100644
--- a/test/workers/repository/onboarding/pr/config-description.spec.js
+++ b/test/workers/repository/onboarding/pr/config-description.spec.js
@@ -21,7 +21,7 @@ describe('workers/repository/onboarding/pr/config-description', () => {
     it('returns a full list', () => {
       const packageFiles = {
         npm: [],
-        docker: [],
+        dockerfile: [],
       };
       config.description = [
         'description 1',
diff --git a/test/workers/repository/updates/__snapshots__/flatten.spec.js.snap b/test/workers/repository/updates/__snapshots__/flatten.spec.js.snap
index 356878a107e1726ebd8358faacf2d67323dab6ee..dd8883cb0571a2ee29dab0fd8951a09679513931 100644
--- a/test/workers/repository/updates/__snapshots__/flatten.spec.js.snap
+++ b/test/workers/repository/updates/__snapshots__/flatten.spec.js.snap
@@ -222,7 +222,7 @@ Array [
     "labels": Array [],
     "language": "docker",
     "lazyGrouping": true,
-    "manager": "docker",
+    "manager": "dockerfile",
     "managerBranchPrefix": "",
     "newValue": "10.0.1",
     "npmToken": null,
diff --git a/test/workers/repository/updates/flatten.spec.js b/test/workers/repository/updates/flatten.spec.js
index e5ba3ea8be1818f5f934fa2b759b7b37f3ec78f9..3b227cc29f420fa5b2137e146f1b2359e7d1c891 100644
--- a/test/workers/repository/updates/flatten.spec.js
+++ b/test/workers/repository/updates/flatten.spec.js
@@ -30,7 +30,7 @@ describe('workers/repository/updates/flatten', () => {
             ],
           },
         ],
-        docker: [
+        dockerfile: [
           {
             packageFile: 'Dockerfile',
             deps: [
diff --git a/website/docs/configuration-options.md b/website/docs/configuration-options.md
index 0e0bc1d076e31f4b25e739fd46e2e0240be9201c..8739e891eb222f8412891fd725104f77140e6150 100644
--- a/website/docs/configuration-options.md
+++ b/website/docs/configuration-options.md
@@ -144,6 +144,8 @@ Add to this object if you wish to define rules that apply only to PRs that pin D
 
 ## docker-compose
 
+## dockerfile
+
 ## enabled
 
 Renovate is enabled for all packages by default, but this setting allows you to disable Renovate for specific packages, dependency types, package files, or even for the whole repository.