Managing the App

Let's make some updates to the app we previously deployed.

Manage services

There are two ways to manage Docker stacks:

  • Imperatively

  • Declaratively

The imperative method is where you run Docker commands to make changes to the stack. For example, using the docker service scale command to increase and decrease the number of service replicas.

The declarative method is where you make all changes via the stack file. For example, if you want to change the number of service replicas, you edit the stack file with the desired replica count and run another docker stack deploy command.

Declarative method

The declarative method is the preferred method. Consider the following example that demonstrates why you should manage stacks declaratively.

Imagine you’ve deployed an app from a stack file that includes a reporting service and a catalog service. The stack file includes other services that are part of the app, but we’re only interested in these two. It’s currently running five replicas of the reporting service, but year-end reporting has started, and it’s experiencing slow performance due to increased demand. You decide to run an imperative docker service ...

Access this course and 1400+ top-rated courses and projects.