Docker: 4. Create the service
This documentation is part of the Automate with the CLI guide. View the full guide here: Start Docker, retrieve its credentials, and change its configuration programmatically with the Stackhero CLI.
Welcome to the Stackhero documentation
Stackhero provides a ready-to-use Docker cloud CaaS (Containers as a Service) platform, designed for fast and reliable container deployments:
- Deploy to production with a single
docker-compose up. There is no extra setup: just start your containers.- Pick your own domain name, secured automatically with HTTPS (for example: https://api.your-company.com, https://www.your-company.com, or https://backoffice.your-company.com).
- Benefit from strong performance and robust security on private, dedicated infrastructure.
- Apply updates with one click for simple, low-effort maintenance.
You can have your containers live in production in about five minutes. Stackhero manages the infrastructure, updates, and security for you, so you can focus on delivering your applications. Read more about Docker CaaS cloud hosting.
Here is a sample script that creates a stack, adds your Docker service to it, waits for it to start, retrieves its configuration (including generated credentials), and then applies a new configuration.
#!/bin/bash
set -e
export STACKHERO_TOKEN="usr-xxxxxx:your-token"
serviceStore="docker" # The Docker service store name (see step 2)
instance="..." # An instance size from step 3
region="europe" # A region name from step 3
# Create a stack for your service (uses your default organization; add --organization if needed)
stackId=$(stackhero --format=script stack-create \
--name="My Docker stack")
echo "Stack created: ${stackId}"
# Add Docker to the stack (names are resolved automatically)
serviceId=$(stackhero --format=script service-add \
--stack="My Docker stack" \
--service-store="${serviceStore}" \
--instance="${instance}" \
--region="${region}")
echo "Service added: docker"
# Wait for the service to be fully running (this may take a couple of minutes)
stackhero service-wait-for --service="docker"
# Retrieve the service configuration, including generated credentials
stackhero service-configuration-get --service="docker" --format=json