diff --git a/lib/datasource/docker/index.ts b/lib/datasource/docker/index.ts
index 65fe0466323ea0444c333da5f47dc806c5968545..815f7af94d5a7ad0b074b634cdf84800718b4e49 100644
--- a/lib/datasource/docker/index.ts
+++ b/lib/datasource/docker/index.ts
@@ -15,10 +15,13 @@ import { PkgReleaseConfig, ReleaseResult } from '../common';
 
 const ecrRegex = /\d+\.dkr\.ecr\.([-a-z0-9]+)\.amazonaws\.com/;
 
-function getRegistryRepository(lookupName: string, registryUrls: string[]) {
+export function getRegistryRepository(
+  lookupName: string,
+  registryUrls: string[]
+) {
   let registry: string;
   const split = lookupName.split('/');
-  if (split.length > 1 && split[0].includes('.')) {
+  if (split.length > 1 && (split[0].includes('.') || split[0].includes(':'))) {
     [registry] = split;
     split.shift();
   }
@@ -33,7 +36,7 @@ function getRegistryRepository(lookupName: string, registryUrls: string[]) {
     registry = `https://${registry}`;
   }
   const opts = hostRules.find({ url: registry });
-  if (opts.insecureRegistry) {
+  if (opts && opts.insecureRegistry) {
     registry = registry.replace('https', 'http');
   }
   if (registry.endsWith('.docker.io') && !repository.includes('/')) {
diff --git a/test/datasource/__snapshots__/docker.spec.ts.snap b/test/datasource/__snapshots__/docker.spec.ts.snap
index 90e322975cd7436cd9984839935fe8482f782c63..88b83ee46b3fe756b9ec0d3d2e029d34f6bd8d39 100644
--- a/test/datasource/__snapshots__/docker.spec.ts.snap
+++ b/test/datasource/__snapshots__/docker.spec.ts.snap
@@ -396,3 +396,10 @@ exports[`api/docker getPkgReleases uses lower tag limit for ECR deps 1`] = `
   ],
 }
 `;
+
+exports[`api/docker getRegistryRepository handles local registries 1`] = `
+Object {
+  "registry": "https://registry:5000",
+  "repository": "org/package",
+}
+`;
diff --git a/test/datasource/docker.spec.ts b/test/datasource/docker.spec.ts
index 1140f1e22a82f724bfe0b80f1e6403a20bdc1127..8d32c136c408f6ae308ab8b4f878b155e3d025f2 100644
--- a/test/datasource/docker.spec.ts
+++ b/test/datasource/docker.spec.ts
@@ -12,6 +12,12 @@ jest.mock('../../lib/util/got');
 jest.mock('../../lib/util/host-rules');
 
 describe('api/docker', () => {
+  describe('getRegistryRepository', () => {
+    it('handles local registries', () => {
+      const res = docker.getRegistryRepository('registry:5000/org/package', []);
+      expect(res).toMatchSnapshot();
+    });
+  });
   describe('getDigest', () => {
     beforeEach(() => {
       jest.resetAllMocks();