diff --git a/.github/workflows/mirror.yaml b/.github/workflows/mirror.yaml
index 57b2e6cb9373642dbb9356ded8f92f98dedac3fb..a60b501ab9603446e3ad9582e96407e4fb171e4d 100644
--- a/.github/workflows/mirror.yaml
+++ b/.github/workflows/mirror.yaml
@@ -22,6 +22,7 @@ jobs:
       with:
         fetch-depth: 0
     - name: Push to EICweb
+      if: github.event_name == 'push'
       uses: eic/gitlab-sync@master
       with:
         url: https://eicweb.phy.anl.gov/containers/eic_container.git/
@@ -29,7 +30,7 @@ jobs:
         username: ${{ secrets.GITLAB_USERNAME }}
         ciskip: true
     - name: Trigger EICweb
-      if: github.event_name == 'pull_request'
+      if: github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
       uses: eic/trigger-gitlab-ci@v2
       with:
         url: https://eicweb.phy.anl.gov
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 89a11fc7229ec425e335a544beba6e62e3c2b666..6b864a3d2faa0457d53ba709105acf29e8ffbffd 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -159,7 +159,9 @@ status:pending:
   services:
     - docker:dind
   before_script:
-    - # Login to registries
+    - # Login to local registry
+      echo ${CI_REGISTRY_PASSWORD} | docker login -u ${CI_REGISTRY_USER} --password-stdin ${CI_REGISTRY}
+    - # Login to remote registries
       if [[ -n "${EXPORT_TAG}" ]] ; then
         if [[ -n "${DH_REGISTRY}" ]] ; then
           echo ${DH_EICWEB_TOKEN} | docker login -u ${DH_REGISTRY_USER} --password-stdin ${DH_REGISTRY} ;
@@ -167,12 +169,11 @@ status:pending:
         if [[ -n "${GH_REGISTRY}" ]] ; then
           echo ${GITHUB_REGISTRY_TOKEN} | docker login -u ${GITHUB_REGISTRY_USER} --password-stdin ${GH_REGISTRY} ;
         fi ;
-        if [[ -n "${CI_REGISTRY}" ]] ; then
-          echo ${CI_REGISTRY_PASSWORD} | docker login -u ${CI_REGISTRY_USER} --password-stdin ${CI_REGISTRY} ;
-        fi ;
       fi
   after_script:
-    - # Logout from registries
+    - # Logout from local registry
+      docker logout ${CI_REGISTRY}
+    - # Logout from remote registries
       if [[ -n "${EXPORT_TAG}" ]] ; then
         if [[ -n "${DH_REGISTRY}" ]] ; then
           docker logout ${DH_REGISTRY} ;
@@ -180,9 +181,6 @@ status:pending:
         if [[ -n "${GH_REGISTRY}" ]] ; then
           docker logout ${GH_REGISTRY} ;
         fi ;
-        if [[ -n "${CI_REGISTRY}" ]] ; then
-          docker logout ${CI_REGISTRY} ;
-        fi ;
       fi
 
 ## base job settings for all docker build jobs