Deployment Environment

Squash runs your deployments on virtual machines that are commissioned exclusively for you. Each deployment is created from scratch with a clean state.

Docker containers

Each Squash deployment has at least one Docker container (multiple containers if you are using docker-compose). Even if your application setup is based on a .squash.yml file (no Docker files) Squash still creates a Docker container behind the scenes.

SSH Access

Every Squash deployment has a SSH endpoint allowing you to debug complex issues and perform updates to your environment and application.

Once you connect to a Squash deployment you will encounter this screen:


You can quickly connect to the container running your application by using the squash-docker-shell utility:


Once inside a container you have full root access to install packages and customize your application environment as needed.

Alternative methods to connect to docker containers

There are several methods to connect to docker containers besides using the squash-docker-shell mentioned above. For instance:

  • Using docker exec to attach the container to a shell:
    • docker exec -i -t <container_ID> bash
    • Use “docker ps” to grab the proper <container_ID>
  • Using Docker attach

Host OS and built-in software

Please check out this page for more details.