diff --git a/roles/etcdctl/tasks/main.yml b/roles/etcdctl/tasks/main.yml
index fca078c4ef1c9d95bdefce1daaaf0b47c91f1af8..d046c9fb296fd0b26574401c0397ff2217743998 100644
--- a/roles/etcdctl/tasks/main.yml
+++ b/roles/etcdctl/tasks/main.yml
@@ -38,11 +38,11 @@
 
 - block:
   - name: Copy etcdctl script to host
-    shell: "{{ docker_bin_dir }}/docker exec \"$({{ docker_bin_dir }}/docker ps -qf ancestor={{ etcd_image_repo }}:{{ etcd_image_tag }})\" cp /usr/local/bin/etcdctl {{ etcd_data_dir }}/etcdctl"
+    shell: "{{ docker_bin_dir }}/docker cp \"$({{ docker_bin_dir }}/docker ps -qf ancestor={{ etcd_image_repo }}:{{ etcd_image_tag }})\":/usr/local/bin/etcdctl {{ etcd_data_dir }}/etcdctl"
     when: container_manager ==  "docker"
 
   - name: Copy etcdctl script to host
-    shell: "{{ bin_dir }}/crictl exec \"$({{ bin_dir }}/crictl ps -q --image {{ etcd_image_repo }}:{{ etcd_image_tag }})\" cp /usr/local/bin/etcdctl {{ etcd_data_dir }}/etcdctl"
+    shell: "{{ bin_dir }}/nerdctl cp \"$({{ bin_dir }}/crictl ps -q --image {{ etcd_image_repo }}:{{ etcd_image_tag }})\":/usr/local/bin/etcdctl {{ etcd_data_dir }}/etcdctl"
     when: container_manager in ['crio', 'containerd']
 
   - name: Copy etcdctl to {{ bin_dir }}