GitLab CI is a continuous integration service fully integrated with GitLab. It allows users to define build and test workflows directly in the GitLab repository using a .gitlab-ci.yml file. GitLab CI runs jobs defined in the YAML file on GitLab-hosted runners which can be Docker containers. It supports features like artifacts, dependencies between jobs, stages, and secret variables to securely pass credentials to builds.