title: Where should the GitLab Runner actually run?
body: <p>I'm trying to set up a Continuous Integration/Deployment pipeline using GitLab CI, and I'm struggling to understand (and not really finding any information in the documentation) about where a GitLab Runner should actually live. Should I run one on my local machine? Should there be a server that just hosts the Runner? </p>
  
  <p>From my understanding, the purpose of the runner is to execute the jobs which are triggered by a commit. Upon commit, the GitLab Runner will try and execute the jobs defined in the .gitlab-ci.yml file. </p>
  
  <p>I am aware that these jobs can do numerous things, but as a starting point, I would simply like to SSH into a server, and deploy my code. </p>
  
  <p>My confusion comes from not understanding what the recommended place the Runner should actually live and run is? It seems potentially problematic to store it on my local machine as this would rely on my machine being on and available for deployments to work. Does this mean we'd require another server just for the runner itself?</p>