For example, we can check which containers are running with the following:
```
$ bin/docker-compose ps
```
## Convenience Helpers
In addition to `bin/docker-compose`, the toolkit also provides a collection of
convenient scripts to automate common tasks:
-`bin/up`: shortcut for `bin/docker-compose up`
-`bin/start`: shortcut for `bin/docker-compose start`
-`bin/stop`: shortcut for `bin/docker-compose stop`
-`bin/shell`: starts a shell inside the main container
## Architecture
Inside the overleaf container, the Overleaf software runs as a set of micro-services, managed by `runit`. Some of the more interesting files inside the container are:
-`/etc/service/`: initialisation files for the microservices
-`/etc/sharelatex/settings.coffee`: unified settings file for the microservices
-`/var/log/sharelatex/`: logs for each microservice
-`/var/www/sharelatex/`: code for the various microservices
-`/var/lib/sharelatex/`: the mount-point for persistent data (corresponds to the directory indicated by `SHARELATEX_DATA_PATH` on the host)
## The MongoDB and Redis Containers
Overleaf dedends on two external databases: MongoDB and Redis. By default, the toolkit will provision a container for each of these databases, in addition to the Overleaf container, for a total of three docker containers.
If you would prefer to connect to an existing MongoDB or Redis instance, you can do so by setting the appropriate settings in the [overleaf.rc](./overleaf-rc.md) configuration file.
## Viewing Individual Micro-Service Logs
The `bin/logs` script allows you to select individual log streams from inside the overleaf container.
For example, if you want to see just the logs for the `web` and `clsi` (compiler) micro-services, run:
```
$ bin/logs -f web clsi
```
See the output of `bin/logs --help` for more options.