diff --git a/playbooks/roles/zuul-executor/files/after-afs.conf b/playbooks/roles/zuul-executor/files/after-afs.conf
new file mode 100644
index 0000000000..5482490907
--- /dev/null
+++ b/playbooks/roles/zuul-executor/files/after-afs.conf
@@ -0,0 +1,2 @@
+[Unit]
+After=afs.mount openafs-client.service
diff --git a/playbooks/roles/zuul-executor/tasks/main.yaml b/playbooks/roles/zuul-executor/tasks/main.yaml
index 395d5f8bd7..7a11948275 100644
--- a/playbooks/roles/zuul-executor/tasks/main.yaml
+++ b/playbooks/roles/zuul-executor/tasks/main.yaml
@@ -58,6 +58,16 @@
   vars:
     logrotate_file_name: /var/log/zuul/executor-debug.log
 
+- name: Make docker systemd override directory
+  file:
+    state: directory
+    path: /etc/systemd/system/docker.service.d
+
+- name: Install docker systemd override for openafs ordering
+  copy:
+    src: after-afs.conf
+    dest: /etc/systemd/system/docker.service.d/after-afs.conf
+
 - name: Make docker-compose directory
   file:
     state: directory