Pre-provisioned, fresh every time
Save on VM spin-up time and get a clean environment for every job. Optional ability to cache and reuse the contents of your VM across jobs.
Full Docker CLI support
Conveniently run your `Docker` commands in a VM to build and push your images as part of a job.
CI for Android app development
Building an Android app? We’ve got you covered. Avoid 1-star reviews by ensuring that your apps are bug-free the first time. Learn more.
Customize your environment with auto-provisioned Linux VMs
Never run into the limitations of Docker-in-Docker because you can always run your jobs in a full Linux VM. Our Linux VMs are provisioned automatically just for your job and can be easily integrated into your other Docker-based jobs using a single line of configuration. See the following sample configurations below.
CircleCI lets you run your jobs in a full VM when you need access to system resources not available inside Docker. If you run into limitations with Docker, you have the option of running a full VM within Docker.
version: 2 jobs: build: machine: true steps: - checkout - run: docker login -u $DOCKER_USER -p $DOCKER_PASS - run: docker build -t orgname/image:tag . - run: docker push orgname/image:tag
Run your jobs in the Docker image of your choice, or use a full Linux VM instead. You can also combine both by connecting to a clean Linux VM from within your Docker jobs.
version: 2 jobs: build: machine: true steps: - checkout - run: docker-compose build - run: docker-compose up -d