เช
เชญเซเชฏเชพเชธเชเซเชฐเชฎเชจเซ เชถเชฐเซเชเชคเชจเซ เช
เชชเซเชเซเชทเชพเช เชคเซเชฏเชพเชฐ เชเชฐเซเชฒ เชชเซเชกเชเชพเชธเซเช เชเซเชฐเชพเชจเซเชธเชเซเชฐเชฟเชชเซเชถเชจเชจเซ เช
เชจเซเชตเชพเชฆ
เชกเซเชเชฐ เชเชเชชเซเช เช เชตเชฐเซเชเชฟเชเช เชฌเชจเชพเชตเชตเชพ เชฎเชพเชเซเชจเซเช เชเช เช
เชฆเซเชญเซเชค เชธเชพเชงเชจ เชเซ
เชคเชฎเชพเชฐเซ เชเชชเซเชฒเชฟเชเซเชถเชจเชฎเชพเช เชเชชเชฏเซเชเชฎเชพเช เชฒเซเชตเชพเชคเชพ เชธเซเชเซเช เชฎเชพเชเซ เชชเชฐเซเชฏเชพเชตเชฐเชฃ. เชคเซ เชคเชฎเชจเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเชตเชพเชจเซ เชฎเชเชเซเชฐเซ เชเชชเซ เชเซ
เชฎเชพเช เชธเซเชชเชทเซเช เช
เชจเซ เชธเชฐเชณ เชตเชพเชเซเชฏเชฐเชเชจเชพ เช
เชจเซเชธเชฐเซเชจเซ เชคเชฎเชพเชฐเซ เชเชชเซเชฒเชฟเชเซเชถเชจเชจเชพ เชฆเชฐเซเช เชเชเช
เชซเชพเชเชฒเซ
เชจเชพ เชเชเชฎเชจ เชธเชพเชฅเซ
เชเซเชฒเชธเซเชเชฐ
เชชเชฐเชเชคเซ เชถเซเช เชเชจเซ เช
เชฐเซเชฅ เช เชเซ เชเซ เชคเชฎเซ เชธเชฎเชพเชจ เชกเซเชเชฐ-เชเชเชชเซเช เชซเชพเชเชฒเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชถเชเซ เชเซ
เชตเชฟเชเชพเชธ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เช
เชจเซ เชเชคเซเชชเชพเชฆเชจ เชตเชพเชคเชพเชตเชฐเชฃเชฎเชพเช? เช
เชฅเชตเชพ เชฎเชพเชเซ เชธเชฎเชพเชจ เชซเชพเชเชฒเชจเซ เชเชชเชฏเซเช เชเชฐเซ
เชธเซเชเซเชเซเชเช? เชธเชพเชฐเซเช, เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ, เชนเชพ, เชชเชฐเชเชคเซ เช เชเชพเชฐเซเชฏเชเซเชทเชฎเชคเชพ เชฎเชพเชเซ เช
เชฎเชจเซ เชจเซเชเซเชจเชพเชจเซ เชเชฐเซเชฐ เชเซ:
- เชตเซเชฐเชฟเชฏเซเชฌเชฒ เชเชจเซเชเชฐเชชเซเชฒเซเชถเชจ: เชเซเชเชฒเชพเช เชฎเชพเชเซ เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชเชฒเซเชจเซ เชเชชเชฏเซเช
เชฎเซเชฒเซเชฏเซ เชเซ เชฆเชฐเซเช เชตเชพเชคเชพเชตเชฐเชฃเชฎเชพเช เชฌเชฆเชฒเชพเชฏ เชเซ. - เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชเชตเชฐเชฐเชพเชเชก: เชธเซเชเชจเซเชกเชจเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเชตเชพเชจเซ เชเซเชทเชฎเชคเชพ (เช
เชฅเชตเชพ เชเซเชเชชเชฃ
เชฌเซเชเซ เช เชจเซเชเชพเชฎเซ) เชกเซเชเชฐ-เชเชเชชเซเช เชซเชพเชเชฒ เชเซ เชธเชเชฌเชเชงเชฟเชค เชเชเชเช เชฌเชฆเชฒเชถเซ
เชชเซเชฐเชฅเชฎ, เช เชจเซ เชกเซเชเชฐ เชเชเชชเซเช เชฌเชเชจเซ เชซเชพเชเชฒเซเชจเซ เชฎเชฐเซเช เชเชฐเชตเชพเชจเซ เชเชพเชณเชเซ เชฒเซเชถเซ.
เชตเชฟเชเชพเชธ เช เชจเซ เชเชคเซเชชเชพเชฆเชจ เชซเชพเชเชฒเซ เชตเชเซเชเซเชจเซ เชคเชซเชพเชตเชค
เชตเชฟเชเชพเชธ เชฆเชฐเชฎเชฟเชฏเชพเชจ, เชคเชฎเซ เชธเชเชญเชตเชคเช เชเซเชก เชซเซเชฐเชซเชพเชฐเซ เชคเชชเชพเชธเชตเชพ เชฎเชพเชเชเซ เชเซ
เชตเชพเชธเซเชคเชตเชฟเช เชธเชฎเชฏ. เช เชเชฐเชตเชพ เชฎเชพเชเซ, เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ เชธเซเชฐเซเชค เชเซเชก เชธเชพเชฅเซเชจเซ เชตเซเชฒเซเชฏเซเชฎ เชฎเชพเชเชจเซเช เชฅเชฏเซเชฒ เชเซ
เชเชจเซเชเซเชจเชฐ เชเซ เชเซ เชคเชฎเชพเชฐเซ เชเชชเซเชฒเชฟเชเซเชถเชจ เชฎเชพเชเซ เชฐเชจเชเชพเชเชฎ เชงเชฐเชพเชตเซ เชเซ. เชชเชฐเชเชคเซ เชเชคเซเชชเชพเชฆเชจ เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชฎเชพเชเซ
เช เชชเชฆเซเชงเชคเชฟ เชฏเซเชเซเชฏ เชจเชฅเซ.
เชเชคเซเชชเชพเชฆเชจเชฎเชพเช, เชคเชฎเชพเชฐเซ เชชเชพเชธเซ เชเชฃเชพ เชเชพเชเช เซ เชธเชพเชฅเซ เชเซเชฒเชธเซเชเชฐ เชเซ, เช
เชจเซ เชตเซเชฒเซเชฏเซเชฎ เชธเซเชฅเชพเชจเชฟเช เชเซ
เชเซ เชจเซเชก เชชเชฐ เชคเชฎเชพเชฐเซเช เชเชจเซเชเซเชจเชฐ (เช
เชฅเชตเชพ เชธเซเชตเชพ) เชเชพเชฒเซ เชฐเชนเซเชฏเซเช เชเซ เชคเซเชจเชพ เชธเชเชฌเชเชงเชฎเชพเช, เชคเซเชฅเซ เชคเชฎเซ เชจเชฅเซ
เชคเชฎเซ เชธเซเชฐเซเชธ เชเซเชกเชจเซ เชเชเชฟเชฒ เชเชพเชฎเชเซเชฐเซ เชตเชฟเชจเชพ เชฎเชพเชเชจเซเช เชเชฐเซ เชถเชเซ เชเซ เชเซเชฎเชพเช เชธเชฎเชพเชตเซเชถ เชฅเชพเชฏ เชเซ
เชเซเชก เชธเชฟเชเชเซเชฐเชจเชพเชเชเซเชถเชจ, เชธเชฟเชเซเชจเชฒเซ, เชตเชเซเชฐเซ.
เชคเซเชจเชพ เชฌเชฆเชฒเซ, เช
เชฎเซ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ เชคเชฎเชพเชฐเชพ เชเซเชกเชจเชพ เชเซเชเซเชเชธ เชธเชเชธเซเชเชฐเชฃ เชธเชพเชฅเซ เชเช เชเชฌเซ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชเชเซเช เชเซเช.
เชคเซเชจเซ เชฏเซเชเซเชฏ เชเซเช เชธเชพเชฅเซ เชเชฟเชนเซเชจเชฟเชค เชเชฐเชตเชพเชจเซ เชฐเชฟเชตเชพเช เชเซ (เชคเชฎเซ เชธเชฟเชฎเซเชจเซเชเซเชเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชถเชเซ เชเซ
เชธเชเชธเซเชเชฐเชฃ เช
เชฅเชตเชพ เช
เชจเซเชฏ เชธเชฟเชธเซเชเชฎ เชคเชฎเชพเชฐเซ เชฎเซเชจเชธเชซเซ เชชเชฐ).
เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชเชตเชฐเชฐเชพเชเชก
เชคเชซเชพเชตเชคเซเชจเซ เชเซเชคเชพเช เช
เชจเซ เชคเชฎเชพเชฐเซ เช
เชตเชฒเชเชฌเชจ เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟเชเชฎเชพเช เช
เชฒเช เชนเซเช เชถเชเซ เชเซ
เชตเชฟเชเชพเชธ เช
เชจเซ เชเชคเซเชชเชพเชฆเชจ, เชคเซ เชธเซเชชเชทเซเช เชเซ เชเซ เช
เชฎเชจเซ เชตเชฟเชตเชฟเชง เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชซเชพเชเชฒเซเชจเซ เชเชฐเซเชฐ เชชเชกเชถเซ.
เชกเซเชเชฐ เชเชเชชเซเช เชตเชฟเชตเชฟเชง เชเชเชชเซเช เชซเชพเชเชฒเซเชจเซ เชฎเชฐเซเช เชเชฐเชตเชพเชจเซเช เชธเชฎเชฐเซเชฅเชจ เชเชฐเซ เชเซ
เช
เชเชคเชฟเชฎ เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชฎเซเชณเชตเซ. เช เชเซเชตเซ เชฐเซเชคเซ เชเชพเชฐเซเชฏ เชเชฐเซ เชเซ เชคเซ เชเชฆเชพเชนเชฐเชฃเชฎเชพเช เชเซเช เชถเชเชพเชฏ เชเซ:
$ cat docker-compose.yml
version: "3.2"
services:
whale:
image: docker/whalesay
command: ["cowsay", "hello!"]
$ docker-compose up
Creating network "composeconfigs_default" with the default driver
Starting composeconfigs_whale_1
Attaching to composeconfigs_whale_1
whale_1 | ________
whale_1 | < hello! >
whale_1 | --------
whale_1 |
whale_1 |
whale_1 |
whale_1 | ## .
whale_1 | ## ## ## ==
whale_1 | ## ## ## ## ===
whale_1 | /""""""""""""""""___/ ===
whale_1 | ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ / ===- ~~~
whale_1 | ______ o __/
whale_1 | __/
whale_1 | __________/
composeconfigs_whale_1 exited with code 0
เชเซเชฎ เชเชนเซเชฏเซเช เชคเซเชฎ, เชกเซเชเชฐ เชเชเชชเซเช เชฌเชนเซเชตเชฟเชง เชเชเชชเซเชเชจเซ เชธเชเชฏเซเชเชฟเชค เชเชฐเชตเชพเชจเซเช เชธเชฎเชฐเซเชฅเชจ เชเชฐเซ เชเซ -
เชซเชพเชเชฒเซ, เช เชคเชฎเชจเซ เชฌเซเชเซ เชซเชพเชเชฒเชฎเชพเช เชตเชฟเชตเชฟเชง เชชเชฐเชฟเชฎเชพเชฃเซเชจเซ เชเชตเชฐเชฐเชพเชเชก เชเชฐเชตเชพเชจเซ เชฎเชเชเซเชฐเซ เชเชชเซ เชเซ. เชฆเชพเชเซเชฒเชพ เชคเชฐเซเชเซ:
$ cat docker-compose.second.yml
version: "3.2"
services:
whale:
command: ["cowsay", "bye!"]
$ docker-compose -f docker-compose.yml -f docker-compose.second.yml up
Creating composeconfigs_whale_1
Attaching to composeconfigs_whale_1
whale_1 | ______
whale_1 | < bye! >
whale_1 | ------
whale_1 |
whale_1 |
whale_1 |
whale_1 | ## .
whale_1 | ## ## ## ==
whale_1 | ## ## ## ## ===
whale_1 | /""""""""""""""""___/ ===
whale_1 | ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ / ===- ~~~
whale_1 | ______ o __/
whale_1 | __/
whale_1 | __________/
composeconfigs_whale_1 exited with code 0
เช เชตเชพเชเซเชฏเชฐเชเชจเชพ เชตเชฟเชเชพเชธ เชฆเชฐเชฎเชฟเชฏเชพเชจ เชเซเชฌ เช
เชจเซเชเซเชณ เชจเชฅเซ, เชเซเชฏเชพเชฐเซ เชเชฆเซเชถ
เชเชฃเซ เชตเชเชค เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชชเชกเชถเซ.
เชธเชฆเชญเชพเชเซเชฏเซ, เชกเซเชเชฐ เชเชเชชเซเช เชเชชเชฎเซเชณเซ เชจเชพเชฎเชจเซ เชตเชฟเชถเชฟเชทเซเช เชซเชพเชเชฒ เชฎเชพเชเซ เชเซเช เชเซ
docker-compose.override.yml เชฎเซเชฒเซเชฏเซเชจเซ เชเชตเชฐเชฐเชพเชเชก เชเชฐเชตเชพ เชฎเชพเชเซ เชกเซเชเชฐ-เชเชเชชเซเช.เชเชฎเชเชฎเชเชฒ. เชเซ
เชฌเซเชเซ เชซเชพเชเชฒเชจเซเช เชจเชพเชฎ เชฌเชฆเชฒเซ, เชคเชฎเซ เชธเชฎเชพเชจ เชชเชฐเชฟเชฃเชพเชฎ เชฎเซเชณเชตเซ เชเซ, เชซเชเซเชค เชฎเซเชณ เชเชฆเซเชถเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ:
$ mv docker-compose.second.yml docker-compose.override.yml
$ docker-compose up
Starting composeconfigs_whale_1
Attaching to composeconfigs_whale_1
whale_1 | ______
whale_1 | < bye! >
whale_1 | ------
whale_1 |
whale_1 |
whale_1 |
whale_1 | ## .
whale_1 | ## ## ## ==
whale_1 | ## ## ## ## ===
whale_1 | /""""""""""""""""___/ ===
whale_1 | ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ / ===- ~~~
whale_1 | ______ o __/
whale_1 | __/
whale_1 | __________/
composeconfigs_whale_1 exited with code 0
เช เซเช เชเซ, เชคเซ เชฏเชพเชฆ เชฐเชพเชเชตเซเช เชตเชงเซ เชธเชฐเชณ เชเซ.
เชเชฒเซเชจเซเช เชเชจเซเชเชฐเชชเซเชฒเซเชถเชจ
เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชซเชพเชเชฒเซ เชเชงเชพเชฐ
เชเชฒเซ
services:
my-service:
build:
context: .
image: private.registry.mine/my-stack/my-service:${MY_SERVICE_VERSION:-latest}
...
เช
เชจเซ เชเซ เชคเชฎเซ เชเชฐเซ เชกเซเชเชฐ-เชเชเชชเซเช เชฌเชฟเชฒเซเชก (เช
เชฅเชตเชพ เชฆเชฌเชพเชฃ) เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชเชฒ เชตเชฟเชจเชพ
$MY_SERVICE_VERSION, เชฎเซเชฒเซเชฏเชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ เชคเชพเชเซเชคเชฐเชจเซเชชเชฐเชเชคเซ เชเซ เชคเชฎเซ เชธเซเช เชเชฐเซ เชเซ
เชฌเชฟเชฒเซเชก เชเชฐเชคเชพ เชชเชนเซเชฒเชพ เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชตเซเชฐเซเชเชฌเชฒเชจเซเช เชฎเซเชฒเซเชฏ, เชคเซ เชฌเชฟเชฒเซเชก เชเชฐเชคเซ เชตเชเชคเซ เช
เชฅเชตเชพ เชฆเชฌเชพเชฃ เชเชฐเชคเซ เชตเชเชคเซ เชเชชเชฏเซเชเชฎเชพเช เชฒเซเชตเชพเชถเซ
เชฐเชเซเชธเซเชเชฐ เชฎเชพเชเซ private.registry.mine.
เชฎเชพเชฐเชพ เชธเชฟเชฆเซเชงเชพเชเชคเซ
เชฎเชพเชฐเชพ เชฎเชพเชเซ เชเชพเชฎ เชเชฐเชคเชพ เช
เชญเชฟเชเชฎเซ เชคเชฎเชพเชฐเชพ เชฎเชพเชเซ เชชเชฃ เชเชพเชฎ เชเชฐเซ เชถเชเซ เชเซ. เชนเซเช เชเชจเซเช เชชเชพเชฒเชจ เชเชฐเซเช เชเซเช
เชธเชฐเชณ เชจเชฟเชฏเชฎเซ:
- เชเชคเซเชชเชพเชฆเชจ, เชตเชฟเชเชพเชธ (เช
เชฅเชตเชพ เช
เชจเซเชฏ เชตเชพเชคเชพเชตเชฐเชฃ) เชฎเชพเชเซเชจเชพ เชฎเชพเชฐเชพ เชคเชฎเชพเชฎ เชธเซเชเซเชเซเชธ เชฆเซเชตเชพเชฐเชพ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ
เชกเซเชเชฐ-เชเชเชชเซเช เชซเชพเชเชฒเซ - เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชซเชพเชเชฒเซ เชฎเชพเชฐเชพ เชฌเชงเชพ เชตเชพเชคเชพเชตเชฐเชฃเชจเซ เชถเชเซเชฏ เชคเซเชเชฒเซ เชเชตเชฐเซ เชฒเซเชตเชพ เชฎเชพเชเซ เชเชฐเซเชฐเซ เชเซ
เชกเซเชชเซเชฒเชฟเชเซเชถเชจ เชเชพเชณเซ. - เชฆเชฐเซเช เชตเชพเชคเชพเชตเชฐเชฃเชฎเชพเช เชเชพเชฎ เชเชฐเชตเชพ เชฎเชพเชเซ เชฎเชจเซ เชเช เชธเชฐเชณ เชเชฆเซเชถเชจเซ เชเชฐเซเชฐ เชเซ.
- เชฎเซเชเซเชฏ เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชซเชพเชเชฒเชฎเชพเช เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชฅเชฏเซเชฒ เชเซ เชกเซเชเชฐ-เชเชเชชเซเช.เชเชฎเชเชฎเชเชฒ.
- เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชเชฒเซ เชเชฎเซเช เชเซ
เชเซเชธ เช
เชฅเชตเชพ เช
เชจเซเชฏ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเชตเชพ เชฎเชพเชเซ เชตเชชเชฐเชพเชฏ เชเซ
เชเชฒเซ เชเซ เชเซ เชชเชฐเซเชฏเชพเชตเชฐเชฃเชฅเซ เชชเชฐเซเชฏเชพเชตเชฐเชฃเชฎเชพเช เชฌเชฆเชฒเชพเช เชถเชเซ เชเซ (เชธเซเชเซเชเชฟเชเช, เชเชเซเชเชฐเชฃ,
เชเชคเซเชชเชพเชฆเชจ). - เชเชคเซเชชเชพเชฆเชจ เชเชฒเซเชจเชพ เชฎเซเชฒเซเชฏเซ เชฎเชพเชเซ เชฎเซเชฒเซเชฏเซ เชคเชฐเซเชเซ เชเชชเชฏเซเชเชฎเชพเช เชฒเซเชตเชพเชฏ เชเซ
เชฎเซเชณเชญเซเชค เชฐเซเชคเซ, เชเซ เชธเซเชเซเช เชตเชเชฐ เชเชคเซเชชเชพเชฆเชจเชฎเชพเช เชฒเซเชจเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชคเซ เช เชเซเชเชฎเซ เชเชเชพเชกเซ เชเซ
เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชเชฒ เชธเซเช เชเชฐเซ. - เชเชคเซเชชเชพเชฆเชจ เชชเชฐเซเชฏเชพเชตเชฐเชฃเชฎเชพเช เชธเซเชตเชพ เชถเชฐเซ เชเชฐเชตเชพ เชฎเชพเชเซ, เชเชฆเซเชถเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชกเซเชเชฐ เชธเซเชเซเช เชเชฎเชพเชตเช - เชเชฎเซเชชเซเช-เชซเชพเชเชฒ docker-compose.yml -with-registry-auth my-stack-name.
- เชเชฆเซเชถเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชเชพเชฐเซเชฏเชเชพเชฐเซ เชตเชพเชคเชพเชตเชฐเชฃ เชถเชฐเซ เชฅเชพเชฏ เชเซ เชกเซเชเชฐ-เชเชเชชเซเช เช เชช-เชกเซ.
เชเชพเชฒเซ เชเช เชธเชฐเชณ เชเชฆเชพเชนเชฐเชฃ เชเซเชเช.
# docker-compose.yml
...
services:
my-service:
build:
context: .
image: private.registry.mine/my-stack/my-service:${MY_SERVICE_VERSION:-latest}
environment:
API_ENDPOINT: ${API_ENDPOINT:-https://production.my-api.com}
...
ะ
# docker-compose.override.yml
...
services:
my-service:
ports: # This is needed for development!
- 80:80
environment:
API_ENDPOINT: https://devel.my-api.com
volumes:
- ./:/project/src
...
เชนเซเช เชเชชเชฏเซเช เชเชฐเซ เชถเชเซเช เชเซเช เชกเซเชเชฐ-เชเชเชชเซเช (เชกเซเชเชฐ-เชเชเชชเซเช เช
เชช)เชฎเชพเช เชธเซเชเซเช เชเชฒเชพเชตเชตเชพ เชฎเชพเชเซ
เชฎเชพเช เชฎเชพเชเชจเซเช เชฅเชฏเซเชฒ เชธเซเชฐเซเชค เชเซเชก เชธเชพเชฅเซ เชตเชฟเชเชพเชธ เชฎเซเชก /project/src.
เชนเซเช เชเชคเซเชชเชพเชฆเชจเชฎเชพเช เช เช เชซเชพเชเชฒเซเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชถเชเซเช เชเซเช! เช
เชจเซ เชนเซเช เชเซเชเซเชเชธเชชเชฃเซ เชเชชเชฏเซเช เชเชฐเซ เชถเชเซ เชเซ
เชธเชฎเชพเชจ เชซเชพเชเชฒ เชกเซเชเชฐ-เชเชเชชเซเช.เชเชฎเชเชฎเชเชฒ เชธเซเชเซเชเซเชเช เชฎเชพเชเซ. เชเชจเซ เชตเชฟเชธเซเชคเซเชค เชเชฐเชตเชพ เชฎเชพเชเซ
เชเชคเซเชชเชพเชฆเชจ, เชฎเชพเชฐเซ เชซเชเซเชค เชชเซเชฐเซเชตเชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเซเช เชธเชพเชฅเซ เชเชฌเซ เชฌเชจเชพเชตเชตเชพเชจเซ เช
เชจเซ เชฎเซเชเชฒเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ
CI เชธเซเชเซเช เชชเชฐ:
export MY_SERVICE_VERSION=1.2.3
docker-compose -f docker-compose.yml build
docker-compose -f docker-compose.yml push
เชเชคเซเชชเชพเชฆเชจเชฎเชพเช, เช เชจเซเชเซเชจเชพ เชเชฆเซเชถเซเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชเชฒเชพเชตเซ เชถเชเชพเชฏ เชเซ:
export MY_SERVICE_VERSION=1.2.3
docker stack deploy my-stack --compose-file docker-compose.yml --with-registry-auth
เช
เชจเซ เชเซ เชคเชฎเซ เชธเซเชเซเช เชชเชฐ เชคเซ เช เชเชฐเชตเชพ เชฎเชพเชเชเชคเชพ เชนเซ, เชคเซ เชคเชฎเชพเชฐเซ เชซเชเซเชค เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ
เชธเซเชเซเชเซเชเช เชชเชฐเซเชฏเชพเชตเชฐเชฃเชฎเชพเช เชเชพเชฎ เชเชฐเชตเชพ เชฎเชพเชเซ เชเชฐเซเชฐเซ เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชเชฒเซ:
export MY_SERVICE_VERSION=1.2.3
export API_ENDPOINT=http://staging.my-api.com
docker stack deploy my-stack --compose-file docker-compose.yml --with-registry-auth
เชชเชฐเชฟเชฃเชพเชฎเซ, เช
เชฎเซ เชฌเซ เช
เชฒเช-เช
เชฒเช เชกเซเชเชฐ-เชเชเชชเซเช เชซเชพเชเชฒเซเชจเซ เชเชชเชฏเซเช เชเชฐเซเชฏเซ เชเซ, เชเซ เชตเชฟเชจเชพ
เชคเชฎเชพเชฐเซ เชชเชพเชธเซ เชเซเชเชชเชฃ เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชฎเชพเชเซ เชกเซเชชเซเชฒเชฟเชเซเช เชฐเซเชชเชฐเซเชเชพเชเชเชจเซเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชถเชเชพเชฏ เชเซ!
เชเซเชฐเซเชธ เชตเชฟเชถเซ เชตเชงเซ เชเชพเชฃเซ
เชธเซเชฐเซเชธ: www.habr.com