Given the following compose file:
version: '3.6'
services:
hello-world:
image: hello-world
environment:
- test:test
If I deploy it using docker stack deploy -c docker-compose.yml test
, then modify the compose file as follows:
services:
hello-world:
image: hello-world
environment:
- test:test
- test2:test2
Now if I run docker service inspect test_hello-world
I see the following in the task template:
"Env": [
"test:test"
],
Is there a command I can use to get the second environmental variable (test2) added from the compose file?
In short, please run after updating docker-compose to update service: docker stack deploy -c docker-compose.yml test
Explanation:
Please, run docker ps -a
after running docker stack deploy -c docker-compose.yml test
. You can see that the status of the container is Exited (0)
. It means that your container is not running at that time.
After docker-compose.yml update with test2:test2
and running docker service inspect test_hello-world
, you are not updating your service automatically.
You should run docker stack deploy -c docker-compose.yml test
again after docker-compose.yml
changes with test2:test2
to update. Then you can see that it was updated. I tested it to be sure that it works like that.
Output:
"Env": [
"test2:test2",
"test:test"
],
You can also test with nginx
instead of hello-world
.Because it always runs (up). After updating docker-compose, pls run docker stack deploy -c docker-compose.yml test
to update.
Terminal:
Updating service test_hello-world (id: m8le589r3cqap8yg3acega0te)
At that time, the previous version was terminated, and a new version was created. docker ps -a
shows it.
Terminal (docker ps -a):
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
10a90caaa627 nginx:latest "/docker-entrypoint.…" 2 seconds ago Created test_hello-world.1.rcrbfttxqw0j22mkw0l149etp
130db6b1d3da nginx:latest "/docker-entrypoint.…" About a minute ago Up About a minute 80/tcp test_hello-world.1.hdbj9bjt72sw45obx7h6nga77
docker service inspect test_hello-world
...
"Env": [
"test2:test2",
"test:test"
],