Reference
To access a comprehensive list of all available commands and explore the extensive functionalities provided by the Divio CLI, simply execute the following command:
Usage: divio [OPTIONS] COMMAND [ARGS]...
Options:
  -d, --debug / --no-debug  Drop into the debugger if command execution raises
                            an exception.  [default: no-debug]
  -z, --zone TEXT           Specify the Divio zone. Defaults to divio.com.
  -v, --verbose             Verbosity level  [default: 0]
  -h, --help                Show this message and exit.
Commands:
  addon          Validate and upload addons packages to the Divio cloud.
  app (project)  Manage your application
  app-template
  doctor         Check that your system meets the development requirements.
  login          Authorise your machine with the Divio Control Panel.
  logout         Log off from Divio Control Panel
  organisations  Manage your organisations.
  regions        Manage regions.
  services       Manage services.
  version        Show version info.
For additional assistance and detailed explanations of each command, append --help to any command you're interested in:
Usage: divio app [OPTIONS] COMMAND [ARGS]...
  Manage your application
Options:
  -h, --help  Show this message and exit.
Commands:
  configure                       Associate a local application with a Divio cloud...
  create                          Create a new application.
  dashboard                       Open the application dashboard on the Divio...
  deploy                          Deploy application.
  deploy-log                      View last deployment log.
  deployments                     Retrieve deployments.
  develop                         Add a package 'package' to your local...
  down (stop)                     Stop the local application.
  environment-variables (env-vars)
                                  Retrieve environment variables.
  export                          Export local database dump.
  import                          Import local database dump.
  list                            List all your applications.
  logs                            View logs.
  open                            Open local or cloud applications in a browser.
  pull                            Pull db or files from the Divio cloud environment.
  push                            Push db or media files to the Divio cloud...
  service-instances               Commands for service instances like a database...
  setup                           Set up a development environment for a Divio...
  ssh                             Establish SSH connection.
  status                          Show local application status.
  up (start)                      Start the local application (equivalent to:...
  update                          Update the local application with new code...
Here is a curated selection of practical examples to demonstrate common uses and helpful scenarios:
Set up an application
This command is conveniently pre-populated for you in the environments dashboard, located under "Dev tools" > "Setup":
divio app setup {SLUG}
The term "slug" refers to a unique identifier for different environments, such as test, live, or any other custom environments you have established.
Deploy to the cloud server
You can initiate a deployment from your local directory by executing the following command:
divio app deploy
Alternatively, you can specify a different environment, such as live, to target it specifically:
divio app deploy live
This approach is also advantageous for continuous integration (CI) processes, by specifying a --remote-id that represents the application's UUID:
divio login {TOKEN}
divio app deploy test --remote-id {WEBSITE_UUID} --build-mode FORCE
In this example, we deploy to the test environment and explicitly force a rebuild of the image.
Build local image
This is particularly useful after updating your application's requirements or modifying the Dockerfile.
divio app build
Alternatively, you can achieve the same result by using its docker composer counterpart:
docker compose build
Push/pull code
We adhere to standard Git procedures for managing code changes and synchronizations with the repository. This involves typical Git commands that are integral to version control practices like:
git pull
git add .
git commit -m "my new changes"
git push
Push/pull media or database
Utilizing the Divio CLI, you can seamlessly transfer media assets or database content with simple commands:
divio app pull media
divio app push media
divio app pull db
divio app push db
Alternatively, specify a different environment, such as live, to direct the operation towards a specific environment.
divio app pull media live
List custom environment variables
Divio Cloud supplements your defined environment variables with several custom ones for enhanced functionality. You can list all these variables using the following command:
divio app environment-variables list
Or by specifying any other environment such as live or even all environments using the --all-envs flag.
divio app environment-variables list -e live
divio app environment-variables list --all-envs
You can also get a specific custom environment variable through:
divio app environment-variables get {ENVIRONMENT_VARIABLE_NAME}
Or by specifying any other environment such as live or even all occurrences of this environment variable across all environments using the --all-envs flag.
divio app environment-variables get {ENVIRONMENT_VARIABLE_NAME} -e live
divio app environment-variables get {ENVIRONMENT_VARIABLE_NAME} --all-envs
List deployments
You can view all ongoing deployments by executing the following command:
divio app deployments list
Or by specifying any other environment such as live or even all environments using the --all-envs flag.
divio app deployments list -e live
divio app deployments list --all-envs
You can get a specific deployment by running:
divio app deployments get {DEPLOYMENT_UUID}
You can get an environment variable registered for a specific deployment through:
divio app deployments get-var {DEPLOYMENT_UUID} {ENVIRONMENT_VARIABLE_NAME}
Running the local server
Start an application:
divio app up
You can also use equivalent docker commands such as:
docker compose up
docker compose run --rm --service-ports web
Stop an application:
divio app down
Working inside the containerised environment
Run a specific command inside the web container:
docker compose run --rm web {COMMAND}
For example,
docker compose run --rm web python manage.py shell
Run a specific command inside the web container, exposing the ports listed in the Dockerfile:
docker compose run --rm --service-ports web {COMMAND}
Docker management
List running containers:
docker ps
List all containers:
docker ps -a
List images:
docker image ls
Remove all stopped containers:
docker container prune
Remove all unused containers and images:
docker system prune