Common Terra and Docker Commands
# Get a list of terra commands
terra
# Create Terra app
terra app:add drupal https://github.com/terra-ops/example-drupal
# Create Terra environment
terra environment:add drupal local
# or
terra e:a drupal local
# Enable Terra environment
terra environment:enable drupal local
# or
terra e:e drupal local
# Drush alias will be created:
drush @drupal.local uli
# Enable subdomain routing (drupal.local.example.com)
terra url-proxy:enable
# Rebuild environment from another drupal site via drush alias
# To rebuild from the source alias defined in your app's .terra.yml file:
#
# .terra.yml:
# | rebuild_source: @source_alias
#
terra environment:rebuild
# To rebuild from any source alias
terra environment:rebuild -s @source_alias
# Run a drush command inside the drush container
terra environment:drush PROJECT ENVIRONMENT status
terra environment:drush PROJECT ENVIRONMENT uli
# Run an arbitrary command inside any container.
# Services are from docker composer: load, app, database, drush.
terra environment:run PROJECT ENVIRONMENT SERVICE ping google.com
# View logfiles
docker logs drupallocal_app_1
# Show docker containers
docker ps
# SSH in to docker container
docker exec -it drupallocal_app_1 bash
# Kill docker container
docker kill [name]
# Clean up docker files
# From https://meta.discourse.org/t/low-on-disk-space-cleaning-up-old-docker-containers/15792
docker rm `docker ps -a | grep Exited | awk '{print $1 }'`
docker rmi `docker images -aq`