diff --git a/environments/undercloud.yaml b/environments/undercloud.yaml
index 7d0097e63c..6b0ad74996 100644
--- a/environments/undercloud.yaml
+++ b/environments/undercloud.yaml
@@ -138,7 +138,6 @@ parameter_defaults:
   UndercloudCtlplaneLocalSubnet: 'ctlplane-subnet'
   MistralDockerGroup: true
   PasswordAuthentication: 'yes'
-  ContainerImagePrepareLogFile: ../install-undercloud.log
   HeatEngineOptVolumes:
     - /usr/lib/heat:/usr/lib/heat:ro
   MySQLServerOptions:
diff --git a/puppet/services/container-image-prepare.j2.yaml b/puppet/services/container-image-prepare.j2.yaml
index ec6fdcdf9e..426b162ca5 100644
--- a/puppet/services/container-image-prepare.j2.yaml
+++ b/puppet/services/container-image-prepare.j2.yaml
@@ -37,7 +37,7 @@ parameters:
                  the registry with images.
     type: json
   ContainerImagePrepareLogFile:
-    default: 'tripleo-container-image-prepare.log'
+    default: '/var/log/tripleo-container-image-prepare.log'
     type: string
     description: Used to store outputs of "openstack tripleo container image prepare".
   DockerInsecureRegistryAddress:
@@ -105,8 +105,8 @@ outputs:
             copy:
               dest: "{{ '{{' }} role_data.path {{ '}}' }}"
               content: {{ roles }}
-          - name: Run tripleo-container-image-prepare
-            shell: sudo /usr/bin/tripleo-container-image-prepare --roles-file {{ '{{' }} role_data.path {{ '}}' }} --environment-file {{ '{{' }} prepare_param.path {{ '}}' }} --cleanup partial 2> {{ '{{' }} log_file {{ '}}' }}
+          - name: Run tripleo-container-image-prepare logged to {{ '{{' }} log_file {{ '}}' }}
+            shell: sudo /usr/bin/tripleo-container-image-prepare --roles-file {{ '{{' }} role_data.path {{ '}}' }} --environment-file {{ '{{' }} prepare_param.path {{ '}}' }} --cleanup partial --log-file {{ '{{' }} log_file {{ '}}' }}
           - name: Delete param file
             file:
               dest: "{{ '{{' }} prepare_param.path {{ '}}' }}"