title: How to resolve "The cypress npm package is installed, but the Cypress binary is missing."
body: <p>I'm trying to download and install Cypress within GitLab CI runner and getting this error output:</p>
  
  <pre><code>The cypress npm package is installed, but the Cypress binary is missing.
  We expected the binary to be installed here: /root/.cache/Cypress/4.8.0/Cypress/Cypress
  Reasons it may be missing:
  - You're caching 'node_modules' but are not caching this path: /root/.cache/Cypress
  - You ran 'npm install' at an earlier build step but did not persist: /root/.cache/Cypress
  Properly caching the binary will fix this error and avoid downloading and unzipping Cypress.
  Alternatively, you can run 'cypress install' to download the binary again.
  </code></pre>
  
  <p>I ran the suggested command <code>cypress install</code> but it didn't help.
  Next it says <code>You're caching 'node_modules' but are not caching this path: /root/.cache/Cypress</code>
  I don't understand how you can cache the modules and leave out the path to it.
  Next is <code>You ran 'npm install' at an earlier build step but did not persist</code> I did have <code>npm install</code> in earlier builds so I replaced it with <code>npm ci</code> as it's recommended in Cypress official docs in such cases.</p>
  
  <p>No resolution though.</p>
  
  <p>Here are relevant lines where the error occurs:</p>
  
  <p>inside of Dockerfile:</p>
  
  <pre><code>COPY package.json /usr/src/app/package.json
  COPY package-lock.json /usr/src/app/package-lock.json
  RUN npm ci
  </code></pre>
  
  <p>inside the test runner:</p>
  
  <pre><code>docker-compose -f docker-compose-prod.yml up -d --build
  ./node_modules/.bin/cypress run --config baseUrl=http://localhost
  </code></pre>
  
  <p>inside the package.json:</p>
  
  <pre><code>{
    "name": "flask-on-docker",
    "dependencies": {
      "cypress": "^4.8.0"
    }
  }
  </code></pre>
  
  <p>Can anyone point me in a right direction ?</p>