In CircleCI 1.0, we were able to increase memory from 4G to 8G via a special request.
In CircleCI 2.0, this feature was removed, and the machine executor is limited to 4G.
Your response will be “use the docker executor”, which would theoretically work. However, the docker executor has some practical limitations:
If you start a docker container within the docker executor (yes, this is possible via docker-compose), you cannot communicate from the docker executor into the docker swarm via http, if you choose to open a port (see Allow port forwarding to docker containers from docker executor)
docker volumes don’t work within the docker executor.