diff --git a/README.md b/README.md
index 1288f7e5bc01b4d919f3d7c4380f067cabda8b86..ebadeb4d6958c75fe1faf209a26a30a1cf62beb5 100644
--- a/README.md
+++ b/README.md
@@ -140,7 +140,7 @@ Note: Upstart/SysV init based OS types are not supported.
   - [coredns](https://github.com/coredns/coredns) v1.7.0
   - [ingress-nginx](https://github.com/kubernetes/ingress-nginx) v0.41.2
 
-Note: The list of validated [docker versions](https://kubernetes.io/docs/setup/production-environment/container-runtimes/#docker) is 1.13.1, 17.03, 17.06, 17.09, 18.06, 18.09 and 19.03. The recommended docker version is 19.03. The kubelet might break on docker's non-standard version numbering (it no longer uses semantic versioning). To ensure auto-updates don't break your cluster look into e.g. yum versionlock plugin or apt pin).
+Note: The list of available docker version is 18.09, 19.03 and 20.10. The recommended docker version is 19.03. The kubelet might break on docker's non-standard version numbering (it no longer uses semantic versioning). To ensure auto-updates don't break your cluster look into e.g. yum versionlock plugin or apt pin).
 
 ## Requirements
 
diff --git a/roles/container-engine/docker/defaults/main.yml b/roles/container-engine/docker/defaults/main.yml
index 3ac22c029f75e01f815d23d52091e830dc0cd515..d99af24b4e64d0ebf55a7ebd28c3f9b3859d6148 100644
--- a/roles/container-engine/docker/defaults/main.yml
+++ b/roles/container-engine/docker/defaults/main.yml
@@ -1,7 +1,6 @@
 ---
 docker_version: '19.03'
-docker_cli_version: "{{ 'latest' if docker_version != 'latest' and docker_version is version('18.09', '<') else docker_version }}"
-docker_selinux_version: '17.03'
+docker_cli_version: "{{ docker_version }}"
 
 docker_package_info:
   pkgs:
diff --git a/roles/container-engine/docker/tasks/main.yml b/roles/container-engine/docker/tasks/main.yml
index 69309ca1ea7e7ddc8acd682fecee3ab14556f072..f90e40d0fcdcf9bc783f90bc2202d79f2e0689c0 100644
--- a/roles/container-engine/docker/tasks/main.yml
+++ b/roles/container-engine/docker/tasks/main.yml
@@ -171,12 +171,6 @@
 - name: flush handlers so we can wait for docker to come up
   meta: flush_handlers
 
-- name: set fact for docker_version
-  command: "docker version -f '{{ '{{' }}.Client.Version{{ '}}' }}'"
-  register: installed_docker_version
-  changed_when: false
-  check_mode: false
-
 # Install each plugin using a looped include to make error handling in the included task simpler.
 - include_tasks: docker_plugin.yml
   loop: "{{ docker_plugins }}"
diff --git a/roles/container-engine/docker/templates/docker-options.conf.j2 b/roles/container-engine/docker/templates/docker-options.conf.j2
index 0dc0ef6576e73b1ad26f015a6094aea0d536e1a1..c9b7d4b8c1ad56c094daef59f41ae5bfdd8cb461 100644
--- a/roles/container-engine/docker/templates/docker-options.conf.j2
+++ b/roles/container-engine/docker/templates/docker-options.conf.j2
@@ -3,7 +3,7 @@ Environment="DOCKER_OPTS={{ docker_options|default('') }} --iptables={{ docker_i
 --exec-opt native.cgroupdriver={{ docker_cgroup_driver }} \
 {% for i in docker_insecure_registries %}--insecure-registry={{ i }} {% endfor %} \
 {% for i in docker_registry_mirrors %}--registry-mirror={{ i }} {% endfor %} \
-{% if docker_version != "latest" and docker_version is version('17.05', '<') %}--graph={% else %}--data-root={% endif %}{{ docker_daemon_graph }} \
+--data-root={{ docker_daemon_graph }} \
 {% if ansible_os_family not in ["openSUSE Leap", "openSUSE Tumbleweed", "Suse"] %}{{ docker_log_opts }}{% endif %} \
 {% if ansible_architecture == "aarch64" and ansible_os_family == "RedHat" %} \
 --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current --default-runtime=docker-runc \
diff --git a/roles/container-engine/docker/templates/docker.service.j2 b/roles/container-engine/docker/templates/docker.service.j2
index 8466b7fd690025f7216ccd86b7f06beb0e996f10..fd1d0612116b904844ed872e8d664fb1c5fef893 100644
--- a/roles/container-engine/docker/templates/docker.service.j2
+++ b/roles/container-engine/docker/templates/docker.service.j2
@@ -2,17 +2,17 @@
 Description=Docker Application Container Engine
 Documentation=http://docs.docker.com
 {% if ansible_os_family == "RedHat" %}
-After=network.target {{ ' docker-storage-setup.service' if docker_container_storage_setup else '' }}{{ ' containerd.service' if installed_docker_version.stdout is version('18.09.1', '>=') else '' }}
-{{ 'BindsTo=containerd.service' if installed_docker_version.stdout is version('18.09.1', '>=') else '' }}
+After=network.target {{ ' docker-storage-setup.service' if docker_container_storage_setup else '' }} containerd.service
+BindsTo=containerd.service
 {{ 'Wants=docker-storage-setup.service' if docker_container_storage_setup else '' }}
 {% elif ansible_os_family == "Debian" %}
-After=network.target docker.socket{{ ' containerd.service' if installed_docker_version.stdout is version('18.09.1', '>=') else '' }}
-{{ 'BindsTo=containerd.service' if installed_docker_version.stdout is version('18.09.1', '>=') else '' }}
+After=network.target docker.socket containerd.service
+BindsTo=containerd.service
 Wants=docker.socket
 {% elif ansible_os_family == "Suse" %}
 After=network.target lvm2-monitor.service SuSEfirewall2.service
-# After=network.target{{ ' containerd.service' if installed_docker_version.stdout is version('18.09.1', '>=') else '' }}
-# {{ 'BindsTo=containerd.service' if installed_docker_version.stdout is version('18.09.1', '>=') else '' }}
+# After=network.target containerd.service
+# BindsTo=containerd.service
 {% endif %}
 
 [Service]
@@ -24,7 +24,7 @@ Environment=GOTRACEBACK=crash
 ExecReload=/bin/kill -s HUP $MAINPID
 Delegate=yes
 KillMode=process
-ExecStart={{ docker_bin_dir }}/docker{% if installed_docker_version.stdout is version('17.03', '<') %} daemon{% else %}d{% endif %} \
+ExecStart={{ docker_bin_dir }}/dockerd \
 {% if ansible_os_family == "Suse" %}
           --add-runtime oci=/usr/sbin/docker-runc \
 {% endif %}
diff --git a/roles/container-engine/docker/vars/amazon.yml b/roles/container-engine/docker/vars/amazon.yml
index 468949f5ca2c2db0921c577a289624268f2cfd38..09cc4fcd685e2544d6c700943fe8180d412029e9 100644
--- a/roles/container-engine/docker/vars/amazon.yml
+++ b/roles/container-engine/docker/vars/amazon.yml
@@ -3,8 +3,6 @@
 
 docker_versioned_pkg:
   'latest': docker
-  '18.03': docker-18.03.1ce-5.amzn2
-  '18.06': docker-18.06.1ce-10.amzn2
   '18.09': docker-18.09.9ce-2.amzn2
   '19.03': docker-19.03.6ce-1.amzn2
 
diff --git a/roles/container-engine/docker/vars/debian.yml b/roles/container-engine/docker/vars/debian.yml
index 5338d183bb1eb3ae0c30cba4503c47346bcfbc46..3819570b8d592be4ffd4ee4ba9e8b54b699f55c5 100644
--- a/roles/container-engine/docker/vars/debian.yml
+++ b/roles/container-engine/docker/vars/debian.yml
@@ -2,13 +2,6 @@
 # https://download.docker.com/linux/debian/
 docker_versioned_pkg:
   'latest': docker-ce
-  '1.13': docker-engine=1.13.1-0~debian-{{ ansible_distribution_release|lower }}
-  '17.03': docker-ce=17.03.2~ce-0~debian-{{ ansible_distribution_release|lower }}
-  '17.06': docker-ce=17.06.2~ce-0~debian
-  '17.09': docker-ce=17.09.0~ce-0~debian
-  '17.12': docker-ce=17.12.1~ce-0~debian
-  '18.03': docker-ce=18.03.1~ce-0~debian
-  '18.06': docker-ce=18.06.2~ce~3-0~debian
   '18.09': docker-ce=5:18.09.9~3-0~debian-{{ ansible_distribution_release|lower }}
   '19.03': docker-ce=5:19.03.14~3-0~debian-{{ ansible_distribution_release|lower }}
   '20.10': docker-ce=5:20.10.2~3-0~debian-{{ ansible_distribution_release|lower }}
diff --git a/roles/container-engine/docker/vars/fedora.yml b/roles/container-engine/docker/vars/fedora.yml
index 1284eaacd6be3d310fad15a074ba3bffcb4dd895..f2a130132dec8f66ad1eabe882612789393cd777 100644
--- a/roles/container-engine/docker/vars/fedora.yml
+++ b/roles/container-engine/docker/vars/fedora.yml
@@ -3,9 +3,6 @@
 # https://download.docker.com/linux/fedora/<fedora-version>/x86_64/stable/Packages/
 docker_versioned_pkg:
   'latest': docker-ce
-  '18.03': docker-ce-18.03.1.ce-3.fc{{ ansible_distribution_major_version }}
-  '18.06': docker-ce-18.06.2.ce-3.fc{{ ansible_distribution_major_version }}
-  '18.09': docker-ce-18.09.7-3.fc{{ ansible_distribution_major_version }}
   '19.03': docker-ce-19.03.14-3.fc{{ ansible_distribution_major_version }}
   '20.10': docker-ce-20.10.2-3.fc{{ ansible_distribution_major_version }}
   'stable': docker-ce-19.03.14-3.fc{{ ansible_distribution_major_version }}
@@ -13,7 +10,6 @@ docker_versioned_pkg:
 
 docker_cli_versioned_pkg:
   'latest': docker-ce-cli
-  '18.09': docker-ce-cli-19.03.14-3.fc{{ ansible_distribution_major_version }}
   '19.03': docker-ce-cli-19.03.14-3.fc{{ ansible_distribution_major_version }}
   '20.10': docker-ce-cli-20.10.2-3.fc{{ ansible_distribution_major_version }}
 
diff --git a/roles/container-engine/docker/vars/redhat-aarch64.yml b/roles/container-engine/docker/vars/redhat-aarch64.yml
deleted file mode 100644
index e7f11cf81db9ba102c0811e791512d1a8285df27..0000000000000000000000000000000000000000
--- a/roles/container-engine/docker/vars/redhat-aarch64.yml
+++ /dev/null
@@ -1,27 +0,0 @@
----
-docker_kernel_min_version: '0'
-
-# Override defaults, missing 17.03 for aarch64
-docker_version: '1.13'
-
-# http://mirror.centos.org/altarch/7/extras/aarch64/Packages/
-# or do 'yum --showduplicates list docker'
-docker_versioned_pkg:
-  'latest': docker
-  '1.13': docker-1.13.1-109.gitcccb291.el7.centos
-
-# https://docs.docker.com/engine/installation/linux/centos/#install-from-a-package
-# http://mirror.centos.org/altarch/7/extras/aarch64/Packages/
-
-docker_package_info:
-  pkg_mgr: yum
-  pkgs:
-    - name: "{{ docker_versioned_pkg[docker_version | string] }}"
-
-docker_repo_key_info:
-  pkg_key: ''
-  repo_keys: []
-
-docker_repo_info:
-  pkg_repo: ''
-  repos: []
diff --git a/roles/container-engine/docker/vars/redhat.yml b/roles/container-engine/docker/vars/redhat.yml
index 0298da510d8a72bc10e754666292c68b6f127643..2e5c47375b972441307eca9a918559fc6f9b70bb 100644
--- a/roles/container-engine/docker/vars/redhat.yml
+++ b/roles/container-engine/docker/vars/redhat.yml
@@ -4,11 +4,6 @@
 # or do 'yum --showduplicates list docker-engine'
 docker_versioned_pkg:
   'latest': docker-ce
-  '17.03': docker-ce-17.03.3.ce-1.el7
-  '17.09': docker-ce-17.09.1.ce-1.el7.centos
-  '17.12': docker-ce-17.12.1.ce-1.el7.centos
-  '18.03': docker-ce-18.03.1.ce-1.el7.centos
-  '18.06': docker-ce-18.06.3.ce-3.el7
   '18.09': docker-ce-18.09.9-3.el7
   '19.03': docker-ce-19.03.14-3.el{{ ansible_distribution_major_version }}
   '20.10': docker-ce-20.10.2-3.el{{ ansible_distribution_major_version }}
@@ -21,34 +16,15 @@ docker_cli_versioned_pkg:
   '19.03': docker-ce-cli-19.03.14-3.el{{ ansible_distribution_major_version }}
   '20.10': docker-ce-cli-20.10.2-3.el{{ ansible_distribution_major_version }}
 
-docker_selinux_versioned_pkg:
-  'latest': docker-ce-selinux-17.03.3.ce-1.el7
-  '17.03': docker-ce-selinux-17.03.3.ce-1.el7
-  'stable': docker-ce-selinux-17.03.3.ce-1.el7
-  'edge': docker-ce-selinux-17.03.3.ce-1.el7
-
-docker_pkgs_use_docker_ce:
-  - name: "{{ docker_selinux_versioned_pkg[docker_selinux_version | string] }}"
-    repo: "docker-ce"
-  - name: "{{ docker_versioned_pkg[docker_version | string] }}"
-    repo: "docker-ce"
-
-docker_pkgs:
-  - name: "{{ containerd_versioned_pkg[containerd_version | string] }}"
-    repo: "docker-ce"
-  - name: "{{ docker_cli_versioned_pkg[docker_cli_version | string] }}"
-    repo: "docker-ce"
-  - name: "{{ docker_versioned_pkg[docker_version | string] }}"
-    repo: "docker-ce"
-
 docker_package_info:
   pkg_mgr: yum
-  pkgs: |-
-    {%- if docker_version != "latest" and docker_version is version('17.04', '<') -%}
-    {{ docker_pkgs_use_docker_ce }}
-    {%- else -%}
-    {{ docker_pkgs }}
-    {%- endif %}
+  pkgs:
+    - name: "{{ containerd_versioned_pkg[containerd_version | string] }}"
+      repo: "docker-ce"
+    - name: "{{ docker_cli_versioned_pkg[docker_cli_version | string] }}"
+      repo: "docker-ce"
+    - name: "{{ docker_versioned_pkg[docker_version | string] }}"
+      repo: "docker-ce"
 
 docker_repo_key_info:
   pkg_key: ''
diff --git a/roles/container-engine/docker/vars/ubuntu.yml b/roles/container-engine/docker/vars/ubuntu.yml
index 959378dfac29004c9e747ed36ca3c68925ab03e3..8a4bdb46cf2eccb93600c14062ad8523da0f314e 100644
--- a/roles/container-engine/docker/vars/ubuntu.yml
+++ b/roles/container-engine/docker/vars/ubuntu.yml
@@ -2,8 +2,6 @@
 # https://download.docker.com/linux/ubuntu/
 docker_versioned_pkg:
   'latest': docker-ce
-  '17.12': docker-ce=17.12.1~ce-0~ubuntu-{{ ansible_distribution_release|lower }}
-  '18.06': docker-ce=18.06.2~ce~3-0~ubuntu
   '18.09': docker-ce=5:18.09.9~3-0~ubuntu-{{ ansible_distribution_release|lower }}
   '19.03': docker-ce=5:19.03.14~3-0~ubuntu-{{ ansible_distribution_release|lower }}
   '20.10': docker-ce=5:20.10.2~3-0~ubuntu-{{ ansible_distribution_release|lower }}