Dariush Alipour
Dariush Alipour

Reputation: 337

Is it a bad practice to start/stop docker containers dynamically?

I have some micro services that accept arguments to run. At some point I might need them like below:

docker run -d -e 'MODE=a' --name x_service_a x_service
docker run -d -e 'MODE=b' --name x_service_b x_service
docker run -d -e 'X_SOURCE=a' -e 'MODE'='foo' --name y_service_afoo y_service
docker run -d -e 'X_SOURCE=b' -e 'MODE'='foo' --name y_service_bfoo y_service
docker run -d -e 'X_SOURCE=b' -e 'MODE'='bar' --name y_service_bbar y_service

I do this with another service I wrote called 'coordinator' which uses docker engine api to monitor, start and stop these micro services.

The reason I can't make docker compose (as in my above example) because I can't have two running x_service with identical config.

So is it fine to manage them with docker engine API?

Upvotes: 0

Views: 364

Answers (1)

leodotcloud
leodotcloud

Reputation: 1960

Services are generally scaled up and scaled down based on organizations needs. This translates to starting and stopping containers dynamically.

Many a times, the same docker image is started with different configurations. Think of a company managing various Wordpress websites for different customers.

So the answer to your question if it is a bad practice to start/stop docker containers dynamically, the answer is NO.

There are multiple ways to manage docker containers, some like to manage with just docker commands, some with docker-compose and some with more advanced management platforms.

Upvotes: 1

Related Questions