เชฆเชฐ เชฅเซเชกเชพ เชตเชฐเซเชทเซเชฎเชพเช, เชธเซเชซเซเชเชตเซเชฐ เชกเซเชตเชฒเชชเชฎเซเชจเซเช เชเชจเซเชกเชธเซเชเซเชฐเซเชฎเชพเช เชชเซเชฐเชพเชกเชพเชเชฎ เชถเชฟเชซเซเช เชฅเชพเชฏ เชเซ. เชเชฎเชพเชเชจเซ เชเช เชเชเชจเชพเชจเซ เชฎเชพเชเชเซเชฐเซเชธเชฐเซเชตเชฟเชธเชฟเชธเชจเซ เชตเชฟเชญเชพเชตเชจเชพเชฎเชพเช เชตเชงเชคเซ เชเชคเซ เชฐเชธ เชคเชฐเซเชเซ เชเชณเชเซ เชถเชเชพเชฏ เชเซ. เชเซเชเซ เชฎเชพเชเชเซเชฐเซเชธเชฐเซเชตเชฟเชธเชฟเชธ เช เชธเซเชฅเซ เชจเชตเซ เชคเชเชจเซเช เชจเชฅเซ, เชคเชพเชเซเชคเชฐเชฎเชพเช เช เชคเซเชจเซ เชฒเซเชเชชเซเชฐเชฟเชฏเชคเชพ เชถเชพเชฌเซเชฆเชฟเช เชฐเซเชคเซ เชเชธเชฎเชพเชจเซ เชชเชนเซเชเชเซ เชเซ.
เชฎเซเชเซ เชฎเซเชจเซเชฒเชฟเชฅเชฟเช เชธเซเชตเชพเช เชนเชตเซ เชธเซเชตเชคเชเชคเซเชฐ, เชธเซเชตเชพเชฏเชคเซเชค เชฎเชพเชเชเซเชฐเซเชธเชฐเซเชตเชฟเชธเชฟเชธ เชฆเซเชตเชพเชฐเชพ เชฌเชฆเชฒเชตเชพเชฎเชพเช เชเชตเซ เชฐเชนเซ เชเซ. เชฎเชพเชเชเซเชฐเซเชธเชฐเซเชตเชฟเชธเชจเซ เชเช เชเชชเซเชฒเชฟเชเซเชถเชจ เชคเชฐเซเชเซ เชตเชฟเชเชพเชฐเซ เชถเชเชพเชฏ เชเซ เชเซ เชเช เช เช เชจเซ เชเซเชฌ เช เชเซเชเซเชเชธ เชนเซเชคเซเชจเซ เชชเซเชฐเซเชฃ เชเชฐเซ เชเซ. เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, เชคเซ เชฐเชฟเชฒเซเชถเชจเชฒ เชกเซเชฌเซเชเชฎเชเชธ, เชเชเซเชธเชชเซเชฐเซเชธ เชเชชเซเชฒเชฟเชเซเชถเชจ, เชธเซเชฒเชฐ เชธเซเชตเชพ เชนเซเช เชถเชเซ เชเซ.
เช เชฆเชฟเชตเชธเซเชฎเชพเช, เชฎเชพเชเชเซเชฐเซเชธเชฐเซเชตเชฟเชธเชฟเชธเชจเซ เชเชชเชฏเซเช เชเชฐเซเชฏเชพ เชตเชฟเชจเชพ เชจเชตเซ เชธเซเชซเซเชเชตเซเชฐ เชธเชฟเชธเซเชเชฎ เชตเชฟเชเชธเชพเชตเชตเชพเชจเซ เชเชฒเซเชชเชจเชพ เชเชฐเชตเซ เชฎเซเชถเซเชเซเชฒ เชเซ. เช
เชจเซ เช เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟ, เชฌเชฆเชฒเชพเชฎเชพเช, เช
เชฎเชจเซ เชกเซเชเชฐ เชชเซเชฒเซเชเชซเซเชฐเซเชฎ เชคเชฐเชซ เชฆเซเชฐเซ เชเชพเชฏ เชเซ.
Docker
เชชเซเชฒเซเชเชซเซเชฐเซเชฎ
เชกเซเชเชฐ เชเชเชชเซเช
เชเซเชเชจเซเชฒเซเชเซ
เชกเซเชเชฐ เชเชฎเซเชชเซเช เชธเชพเชฅเซ เชเชพเชฎ เชเชฐเชคเซ เชตเชเชคเซ, YAML เชซเชพเชเชฒเชจเซ เชเชชเชฏเซเช เชเชชเซเชฒเชฟเชเซเชถเชจ เชธเซเชตเชพเชเชจเซ เชเซเช เชตเชตเชพ เช เชจเซ เชเชเชฌเซเชเชพ เชธเชพเชฅเซ เชคเซเชฎเชจเซ เชเซเชฐเชฟเชฏเชพเชชเซเชฐเชคเชฟเชเซเชฐเชฟเชฏเชพ เชเซเช เชตเชตเชพ เชฎเชพเชเซ เชฅเชพเชฏ เชเซ. เชคเซเชฅเซ เชกเซเชเชฐ เชเชเชชเซเช เช เชฎเชฒเซเชเซ-เชเชจเซเชเซเชจเชฐ เชกเซเชเชฐ เชเชชเซเชฒเซเชเซเชถเชจเชจเซเช เชตเชฐเซเชฃเชจ เชเชฐเชตเชพ เช เชจเซ เชเชฒเชพเชตเชตเชพ เชฎเชพเชเซเชจเซเช เชเช เชธเชพเชงเชจ เชเซ.
เชนเซเชธเซเช เชธเชฟเชธเซเชเชฎ เชชเชฐ เชเชพเชฒเชคเชพ เชฌเซ เชเชจเซเชเซเชจเชฐ
เชเซ.เชเชจ.เชฏเซ. เชฎเซเช
เชเชพเชฐเซเชฏเชเซเชฐเชฎ make
, เชเชตเชถเซเชฏเชเชชเชฃเซ เชธเซเชฐเซเชค เชเซเชกเชฎเชพเชเชฅเซ เชชเซเชฐเซเชเซเชฐเชพเชฎเซเชธ เช
เชจเซ เชฒเชพเชเชฌเซเชฐเซเชฐเซเชเชจเชพ เชจเชฟเชฐเซเชฎเชพเชฃเชจเซ เชธเซเชตเชเชพเชฒเชฟเชค เชเชฐเชตเชพ เชฎเชพเชเซเชจเซเช เชเช เชธเชพเชงเชจ เชเซ. เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ, เชเชชเชฃเซ เชคเซ เชเชนเซ เชถเชเซเช make
เชเซเชเชชเชฃ เชชเซเชฐเชเซเชฐเชฟเชฏเชพเชจเซ เชฒเชพเชเซ เชชเชกเซ เชเซ เชเซเชฎเชพเช เชเซเชเชฒเซเช เชเชจเชชเซเช เชธเชพเชฎเชเซเชฐเซเชจเซ เช
เชฎเซเช เชเชเชเชชเซเช เชธเซเชตเชฐเซเชชเชฎเชพเช, เช
เชฎเซเช เชงเซเชฏเซเชฏเชฎเชพเช เชชเชฐเชฟเชตเชฐเซเชคเชฟเชค เชเชฐเชตเชพ เชฎเชพเชเซ เชฎเชจเชธเซเชตเซ เชเชฆเซเชถเซ เชเชฒเชพเชตเชตเชพเชจเซ เชธเชฎเชพเชตเซเชถ เชฅเชพเชฏ เชเซ. เช
เชฎเชพเชฐเชพ เชเชฟเชธเซเชธเชพเชฎเชพเช, เชเชฆเซเชถเซ docker-compose
เช
เชฎเซเชฐเซเชค เชฒเชเซเชทเซเชฏเซเชฎเชพเช เชชเชฐเชฟเชตเชฐเซเชคเชฟเชค เชฅเชถเซ (
เชเชพเชฐเซเชฏเชเซเชฐเชฎ เชเชฃเชพเชตเชตเชพ เชฎเชพเชเซ make
เช
เชฎเซ เชคเซเชฎเชพเชเชฅเซ เชถเซเช เชเซเชเช เชเซ เชคเซ เชตเชฟเชถเซ, เช
เชฎเชจเซ เชเช เชซเชพเชเชฒเชจเซ เชเชฐเซเชฐ เชเซ Makefile
.
เช
เชฎเชพเชฐเชพเชฎเชพเช Makefile
เชจเชฟเชฏเชฎเชฟเชค เชเชฆเซเชถเซ เชธเชฎเชพเชตเชถเซ docker
ะธ docker-compose
, เชเซ เชเชฃเซ เชธเชฎเชธเซเชฏเชพเช เชนเชฒ เชเชฐเชตเชพ เชฎเชพเชเซ เชฐเชเชพเชฏเซเชฒ เชเซ. เชเซเชฎ เชเซ, เช
เชฎเซ เชเชจเซเชเซเชจเชฐเชจเซ เชเชธเซเชฎเซเชฌเชฒ เชเชฐเชตเชพ เชตเชฟเชถเซ, เชคเซเชจเซ เชถเชฐเซ เชเชฐเชตเชพ เชตเชฟเชถเซ, เชคเซเชจเซ เชฌเชเชง เชเชฐเชตเชพ เชตเชฟเชถเซ, เชคเซเชจเซ เชชเซเชจเชเชชเซเชฐเชพเชฐเชเชญ เชเชฐเชตเชพ เชตเชฟเชถเซ, เชเชจเซเชเซเชจเชฐเชฎเชพเช เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเชจเชพ เชฒเซเชเชฟเชจเชจเซ เชเซเช เชตเชตเชพ เชตเชฟเชถเซ, เชเชจเซเชเซเชจเชฐ เชฒเซเชเซเชธ เชธเชพเชฅเซ เชเชพเชฎ เชเชฐเชตเชพ เชตเชฟเชถเซ เช
เชจเซ เช
เชจเซเชฏ เชธเชฎเชพเชจ เชธเชฎเชธเซเชฏเชพเช เชนเชฒ เชเชฐเชตเชพ เชตเชฟเชถเซ เชตเชพเชค เชเชฐเซ เชฐเชนเซเชฏเชพ เชเซเช.
เชกเซเชเชฐ เชเชเชชเซเช เชฎเชพเชเซ เชฒเชพเชเซเชทเชฃเชฟเช เชเชชเชฏเซเชเชจเชพ เชเซเชธเซ
เชเชพเชฒเซ เชเช เชจเชฟเชฏเชฎเชฟเชค เชตเซเชฌ เชเชชเซเชฒเชฟเชเซเชถเชจเชจเซ เชเชฒเซเชชเชจเชพ เชเชฐเซเช เชเซเชฎเชพเช เชจเซเชเซเชจเชพ เชเชเชเซ เชนเซเชฏ:
- เชเชพเชเชฎเชธเซเชเซเชฒเชกเซเชฌเซ เชกเซเชเชพเชฌเซเช (เชชเซเชธเซเชเชเซเชฐเซเชธ).
- Express.js เชเชชเซเชฒเชฟเชเซเชถเชจ.
- เชชเชฟเชเช (เชฎเชพเชคเซเชฐ เชเช เชเชจเซเชเซเชจเชฐ, เชเชเช เชเชพเชธ เชเชฐเชคเซเช เชจเชฅเซ).
เช เชเชชเซเชฒเชฟเชเซเชถเชจเชจเซ 3 เชกเซเชเชฐ เชเชจเซเชเซเชจเชฐ เช
เชจเซ เชเช เชซเชพเชเชฒเชจเซ เชเชฐเซเชฐ เชชเชกเชถเซ docker-compose
, เชเซเชฎเชพเช เช เชเชจเซเชเซเชจเชฐเชจเซเช เชธเชเชเชพเชฒเชจ เชเชฐเชตเชพ เชฎเชพเชเซเชจเซ เชธเซเชเชจเชพเช เชเซ. เชฆเชฐเซเช เชเชจเซเชเซเชจเชฐเชฎเชพเช เช
เชฒเช เช
เชฒเช เชเชเชชเซเชเชจเซเช เชนเชถเซ. เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, เชเชจเซเชเซเชจเชฐ เชธเชพเชฅเซ timescale
เชคเซเช เชกเซเชเชพเชฌเซเช เชธเชพเชฅเซ เชเชพเชฎ เชเชฐเซ เชเซ เชคเซ เชฐเซเชคเซ เชฒเชเชญเช เชคเซ เช เชฐเซเชคเซ เชเชพเชฎ เชเชฐเชตเซเช เชถเชเซเชฏ เชฌเชจเชถเซ. เชเชเชฒเซ เชเซ, เชคเซ เชคเชฎเชจเซ เชจเซเชเซเชจเซ เชเซเชฐเชฟเชฏเชพเช เชเชฐเชตเชพ เชฆเซ เชเซ:
- เชชเซเชธเซเชเชเซเชฐเซเชธ เชถเซเชฒเชฎเชพเช เชฒเซเช เชเชจ เชเชฐเซ.
- เชเซเชทเซเชเชเซเชจเซ เชเชฏเชพเชค เช เชจเซ เชจเชฟเชเชพเชธ.
- เชฌเชจเชพเชตเช
pg_dump
เชเซเชทเซเชเชเซ เช เชฅเชตเชพ เชกเซเชเชพเชฌเซเช.
Express.js เชเชชเซเชฒเชฟเชเซเชถเชจ เชเชจเซเชเซเชจเชฐ, expressjs
, เชจเซเชเซเชจเซ เชเซเชทเชฎเชคเชพเช เชนเซเช เชถเชเซ เชเซ:
- เชธเชฟเชธเซเชเชฎ เชฒเซเชเชฎเชพเชเชฅเซ เชคเชพเชเซ เชกเซเชเชพ เชชเซเชฐเซ เชชเชพเชกเซ เชเซ.
- เช เชฎเซเช เชเชฆเซเชถเซ เชเชฒเชพเชตเชตเชพ เชฎเชพเชเซ เชถเซเชฒเชฎเชพเช เชฒเซเชเชฟเชจ เชเชฐเซ.
เชเชจเซเชเซเชจเชฐ เชธเชพเชฅเซ เชเซเชฐเชฟเชฏเชพเชชเซเชฐเชคเชฟเชเซเชฐเชฟเชฏเชพ
เชเชเชตเชพเชฐ เช
เชฎเซ เชกเซเชเชฐ เชเชเชชเซเชเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชเชจเซเชเซเชจเชฐ เชตเชเซเชเซ เชธเชเชเชพเชฐ เชธเซเช เชเชฐเซ เชฒเซเชงเชพ เชชเชเซ, เชคเซ เชเชจเซเชเซเชจเชฐ เชธเชพเชฅเซ เชตเชพเชคเชเซเชค เชเชฐเชตเชพเชจเซ เชธเชฎเชฏ เชเซ. เชกเซเชเชฐ เชเชฎเซเชชเซเช เชธเชฟเชธเซเชเชฎเชจเซ เช
เชเชฆเชฐ เชเช เชเชฆเซเชถ เชเซ docker-compose
, เชธเชนเชพเชฏเช เชตเชฟเชเชฒเซเชช -f
, เชเซ เชคเชฎเชจเซ เชธเชฟเชธเซเชเชฎเชฎเชพเช เชซเชพเชเชฒ เชธเซเชฅเชพเชจเชพเชเชคเชฐเชฟเชค เชเชฐเชตเชพเชจเซ เชชเชฐเชตเชพเชจเชเซ เชเชชเซ เชเซ docker-compose.yml
.
เช เชตเชฟเชเชฒเซเชชเชจเซ เชเซเชทเชฎเชคเชพเชเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ, เชคเชฎเซ เชธเชฟเชธเซเชเชฎ เชธเชพเชฅเซเชจเซ เชเซเชฐเชฟเชฏเชพเชชเซเชฐเชคเชฟเชเซเชฐเชฟเชฏเชพเชจเซ เชซเชเซเชค เชคเซ เชเชจเซเชเซเชจเชฐ เชธเซเชงเซ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชเชฐเซ เชถเชเซ เชเซ เชเซเชจเซ เชเชฒเซเชฒเซเช เชซเชพเชเชฒเชฎเชพเช เชเซ. docker-compose.yml
.
เชเชฆเซเชถเซเชจเซ เชเชชเชฏเซเช เชเชฐเชคเซ เชตเชเชคเซ เชเชจเซเชเซเชจเชฐ เชธเชพเชฅเซเชจเซ เชเซเชฐเชฟเชฏเชพเชชเซเชฐเชคเชฟเชเซเชฐเชฟเชฏเชพเช เชเซเชตเซ เชฆเซเชเชพเชฏ เชเซ เชคเซเชจเชพ เชชเชฐ เชเช เชจเชเชฐ เชเชฐเซเช docker-compose
. เชเซ เชเชชเชฃเซ เชเชฒเซเชชเชจเชพ เชเชฐเซเช เชเซ เชเชชเชฃเซ เชถเซเชฒเชฎเชพเช เชฒเซเช เชเชจ เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ psql
, เชชเชเซ เช
เชจเซเชฐเซเชช เชเชฆเซเชถเซ เชเชจเชพ เชเซเชตเซ เชฆเซเชเชพเชถเซ:
docker-compose -f docker-compose.yml exec timescale psql -Upostgres
เช เช เชเชฆเซเชถ เชเซ เชเซเชจเซ เชเชชเชฏเซเช เชเชฒเชพเชตเชตเชพ เชฎเชพเชเซ เชฅเชคเซ เชจเชฅเซ docker-compose
เช
เชจเซ docker
, เชเชจเชพ เชเซเชตเซ เชฆเซเชเชพเช เชถเชเซ เชเซ:
docker exec -it edp_timescale_1 psql -Upostgres
เชฎเชนเซเชฐเชฌเชพเชจเซ เชเชฐเซเชจเซ เชจเซเชเชง เชเชฐเซ เชเซ เชเชตเชพ เชเชฟเชธเซเชธเชพเชเชฎเชพเช เชเชฆเซเชถเชจเซ เชเชชเชฏเซเช เชเชฐเชตเซ เชนเชเชฎเซเชถเชพ เชชเซเชฐเชพเชงเชพเชจเซเชฏเชเซเชทเชฎ เชเซ docker
, เช
เชจเซ เชเชฆเซเชถ docker-compose
, เชเชพเชฐเชฃ เชเซ เช เชเชจเซเชเซเชจเชฐเชจเชพ เชจเชพเชฎเซ เชฏเชพเชฆ เชฐเชพเชเชตเชพเชจเซ เชเชฐเซเชฐเชฟเชฏเชพเชคเชจเซ เชฆเซเชฐ เชเชฐเซ เชเซ.
เชเชชเชฐเซเชเซเชค เชฌเชเชจเซ เชเชฆเซเชถเซ เชเชเชฒเชพ เชฎเซเชถเซเชเซเชฒ เชจเชฅเซ. เชชเชฐเชเชคเซ เชเซ เชเชชเชฃเซ เชซเซเชฐเซเชฎเชฎเชพเช "เชเชตเชฐเชฟเชค" เชจเซ เชเชชเชฏเซเช เชเชฐเซเชฏเซ เชนเซเชฏ Makefile
, เชเซ เชเชชเชฃเชจเซ เชธเชฐเชณ เชเชฆเซเชถเซเชจเชพ เชฐเซเชชเชฎเชพเช เชเช เชเชจเซเชเชฐเชซเซเชธ เชเชชเชถเซ เช
เชจเซ เชชเซเชคเซ เชธเชฎเชพเชจ เชฒเชพเชเชฌเชพ เชเชฆเซเชถเซเชจเซ เชเซเชฒ เชเชฐเชถเซ, เชคเซ เชคเซ เช เชชเชฐเชฟเชฃเชพเชฎเซ เชเชจเชพ เชเซเชตเชพ เชชเซเชฐเชพเชชเซเชค เชเชฐเซ เชถเชเชพเชฏ เชเซ:
make db-shell
เชคเซ เชคเชฆเซเชฆเชจ เชธเซเชชเชทเซเช เชเซ เชเซ เชเชชเชฏเซเช Makefile
เชเชจเซเชเซเชจเชฐ เชธเชพเชฅเซ เชเชพเชฎ เชเชฐเชตเชพเชจเซเช เชเซเชฌ เชธเชฐเชณ เชฌเชจเชพเชตเซ เชเซ!
เชเชพเชฐเซเชฏเชเชพเชฐเซ เชเชฆเชพเชนเชฐเชฃ
เชเชชเชฐเซเชเซเชค เชชเซเชฐเซเชเซเชเซเช เชกเชพเชฏเชพเชเซเชฐเชพเชฎเชจเชพ เชเชงเชพเชฐเซ, เช
เชฎเซ เชจเซเชเซเชจเซ เชซเชพเชเชฒ เชฌเชจเชพเชตเซเชถเซเช docker-compose.yml
:
version: '3.3'
services:
api:
build: .
image: mywebimage:0.0.1
ports:
- 8080:8080
volumes:
- /app/node_modules/
depends_on:
- timescale
command: npm run dev
networks:
- webappnetwork
timescale:
image: timescale/timescaledb-postgis:latest-pg11
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
command: ["postgres", "-c", "log_statement=all", "-c", "log_destination=stderr"]
volumes:
- ./create_schema.sql:/docker-entrypoint-initdb.d/create_schema.sql
networks:
- webappnetwork
ping:
image: willfarrell/ping
environment:
HOSTNAME: "localhost"
TIMEOUT: 300
networks:
webappnetwork:
driver: bridge
เชกเซเชเชฐ เชเชฎเซเชชเซเช เชฐเซเชชเชฐเซเชเชพเชเชเชจเชจเซเช เชธเชเชเชพเชฒเชจ เชเชฐเชตเชพ เช
เชจเซ เชคเซ เชตเชฐเซเชฃเชตเซเชฒ เชเชจเซเชเซเชจเชฐ เชธเชพเชฅเซ เชเซเชฐเชฟเชฏเชพเชชเซเชฐเชคเชฟเชเซเชฐเชฟเชฏเชพ เชเชฐเชตเชพ เชฎเชพเชเซ, เช
เชฎเซ เชจเซเชเซเชจเซ เชซเชพเชเชฒ เชฌเชจเชพเชตเซเชถเซเช Makefile
:
THIS_FILE := $(lastword $(MAKEFILE_LIST))
.PHONY: help build up start down destroy stop restart logs logs-api ps login-timescale login-api db-shell
help:
make -pRrq -f $(THIS_FILE) : 2>/dev/null | awk -v RS= -F: '/^# File/,/^# Finished Make data base/ {if ($$1 !~ "^[#.]") {print $$1}}' | sort | egrep -v -e '^[^[:alnum:]]' -e '^$@$$'
build:
docker-compose -f docker-compose.yml build $(c)
up:
docker-compose -f docker-compose.yml up -d $(c)
start:
docker-compose -f docker-compose.yml start $(c)
down:
docker-compose -f docker-compose.yml down $(c)
destroy:
docker-compose -f docker-compose.yml down -v $(c)
stop:
docker-compose -f docker-compose.yml stop $(c)
restart:
docker-compose -f docker-compose.yml stop $(c)
docker-compose -f docker-compose.yml up -d $(c)
logs:
docker-compose -f docker-compose.yml logs --tail=100 -f $(c)
logs-api:
docker-compose -f docker-compose.yml logs --tail=100 -f api
ps:
docker-compose -f docker-compose.yml ps
login-timescale:
docker-compose -f docker-compose.yml exec timescale /bin/bash
login-api:
docker-compose -f docker-compose.yml exec api /bin/bash
db-shell:
docker-compose -f docker-compose.yml exec timescale psql -Upostgres
เช
เชนเซเช เชตเชฐเซเชฃเชตเซเชฒ เชฎเซเชเชพเชญเชพเชเชจเชพ เชเชฆเซเชถเซ เชฌเชงเชพ เชเชจเซเชเซเชจเชฐ เชชเชฐ เชฒเชพเชเซ เชฅเชพเชฏ เชเซ, เชชเชฐเชเชคเซ เชตเชฟเชเชฒเซเชชเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ c=
เชคเชฎเชจเซ เชเชฆเซเชถเชจเชพ เช
เชตเชเชพเชถเชจเซ เชเช เชเชจเซเชเซเชจเชฐ เชธเซเชงเซ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชเชฐเชตเชพเชจเซ เชฎเชเชเซเชฐเซ เชเชชเซ เชเซ.
เชชเชเซ Makefile
เชคเซเชฏเชพเชฐ เชเซ, เชคเชฎเซ เชคเซเชจเซ เชเชชเชฏเซเช เช เชฐเซเชคเซ เชเชฐเซ เชถเชเซ เชเซ:
make help
โ เชฎเชพเชเซ เชเชชเชฒเชฌเซเชง เชคเชฎเชพเชฎ เชเชฆเซเชถเซเชจเซ เชฏเชพเชฆเซ เชเชพเชฐเซ เชเชฐเชตเซmake
.
เชเชชเชฒเชฌเซเชง เชเชฆเซเชถเซ เชชเชฐ เชฎเชฆเชฆ
make build
- เชฎเชพเชเชฅเซ เชเช เชเชฌเซ เชเชธเซเชฎเซเชฌเชฒDockerfile
. เช เชฎเชพเชฐเชพ เชเชฆเชพเชนเชฐเชฃเชฎเชพเช เช เชฎเซ เชนเชพเชฒเชจเซ เชเชฌเซเชเชจเซ เชเชชเชฏเซเช เชเชฐเซเชฏเซ เชเซtimescale
ะธping
. เชชเชฐเชเชคเซ เชเชฌเซapi
เช เชฎเซ เชธเซเชฅเชพเชจเชฟเช เชฐเซเชคเซ เชเชเชคเซเชฐเชฟเชค เชเชฐเชตเชพ เชฎเชพเชเชเซเช เชเซเช. เช เชเชฆเซเชถเชจเซ เช เชฎเชฒเชฎเชพเช เชฎเซเชเซเชฏเชพ เชชเชเซ เชฌเชฐเชพเชฌเชฐ เช เช เชเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ.
เชกเซเชเชฐ เชเชจเซเชเซเชจเชฐ เชฌเชจเชพเชตเชตเซเช
make start
- เชฌเชงเชพ เชเชจเซเชเซเชจเชฐ เชฒเซเชเช เชเชฐเซ เชฐเชนเซเชฏเชพ เชเซเช. เชฎเชพเชคเซเชฐ เชเช เชเชจเซเชเซเชจเชฐ เชฒเซเชเช เชเชฐเชตเชพ เชฎเชพเชเซ, เชคเชฎเซ เชเซเชตเชพ เชเชฆเซเชถเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชถเชเซ เชเซmake start c=timescale
.
เชเชพเชเชฎเชธเซเชเซเชฒ เชเชจเซเชเซเชจเชฐ เชเชฒเชพเชตเชตเซเช
เชชเชฟเชเช เชเชจเซเชเซเชจเชฐ เชเชฒเชพเชตเชตเซเช
make login-timescale
โ เชเชจเซเชเซเชจเชฐเชจเชพ เชฌเซเชถ เชธเชคเซเชฐเชฎเชพเช เชฒเซเชเชฟเชจ เชเชฐเซtimescale
.
เชเชพเชเชฎเชธเซเชเซเชฒ เชเชจเซเชเซเชจเชฐเชฎเชพเช เชฌเซเชถ เชเชฒเชพเชตเชตเซเช
make db-shell
- เชฎเชพเชเซ เชชเซเชฐเชตเซเชถpsql
เชเช เชเชจเซเชเซเชจเชฐ เชฎเชพเชtimescale
เชกเซเชเชพเชฌเซเช เชธเชพเชฎเซ SQL เชเซเชตเซเชฐเซเช เชเชฒเชพเชตเชตเชพ เชฎเชพเชเซ.
เชเชพเชเชฎเชธเซเชเซเชฒเซเชกเชฌเซ เชเชจเซเชเซเชจเชฐเชฎเชพเช psql เชเชฒเชพเชตเซ เชฐเชนเซเชฏเซเช เชเซ
make stop
- เชเชจเซเชเซเชจเชฐ เชฐเซเชเชตเชพ.
เชเชพเชเชฎเชธเซเชเซเชฒ เชเชจเซเชเซเชจเชฐ เชฐเซเชเซ เชฐเชนเซเชฏเซเช เชเซ
make down
- เชเชจเซเชเซเชจเชฐ เชฐเซเชเชตเซเช เช เชจเซ เชฆเซเชฐ เชเชฐเชตเซเช. เชเซเชเซเชเชธ เชเชจเซเชเซเชจเชฐเชจเซ เชฆเซเชฐ เชเชฐเชตเชพ เชฎเชพเชเซ, เชคเชฎเซ เชเชเซเชเชฟเชค เชเชจเซเชเซเชจเชฐเชจเซ เชเชฒเซเชฒเซเช เชเชฐเชคเชพ เช เชเชฆเซเชถเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชถเชเซ เชเซ. เชฆเชพเชเซเชฒเชพ เชคเชฐเซเชเซ -make down c=timescale
เช เชฅเชตเชพmake down c=api
.
เชฌเชงเชพ เชเชจเซเชเซเชจเชฐเชจเซ เชฐเซเชเซเชจเซ เชเชพเชขเซ เชจเชพเชเชตเซเช
เชชเชฐเชฟเชฃเชพเชฎเซ
เชคเซเชฎ เชเชคเชพเช เชกเซเชเชฐ เชเชเชชเซเช เช เชฎเชจเซ เชเชจเซเชเซเชจเชฐ เชฎเซเชจเซเช เชเชฐเชตเชพ เชฎเชพเชเซ เชเชฆเซเชถเซเชจเซ เชธเชฎเซเชฆเซเชง เชธเชฎเซเชน เชเชชเซ เชเซ, เชเซเชเชฒเซเชเชตเชพเชฐ เช เชเชฆเซเชถเซ เชฒเชพเชเชฌเชพ เช เชจเซ เชฏเชพเชฆ เชฐเชพเชเชตเชพ เชฎเซเชถเซเชเซเชฒ เชฌเชจเซ เชถเชเซ เชเซ.
เชเชชเชฏเซเชเชจเซ เชชเชฆเซเชงเชคเชฟ Makefile
เชซเชพเชเชฒเชฎเชพเชเชฅเซ เชเชจเซเชเซเชจเชฐ เชธเชพเชฅเซ เชเชกเชชเซ เช
เชจเซ เชธเชฐเชณ เชเซเชฐเชฟเชฏเชพเชชเซเชฐเชคเชฟเชเซเชฐเชฟเชฏเชพ เชธเซเชฅเชพเชชเชฟเชค เชเชฐเชตเชพเชฎเชพเช เช
เชฎเชจเซ เชฎเชฆเชฆ เชเชฐเซ docker-compose.yml
. เชเชเชฒเซ เชเซ, เช
เชฎเซ เชจเซเชเซเชจเชพ เชตเชฟเชถเซ เชตเชพเชค เชเชฐเซ เชฐเชนเซเชฏเชพ เชเซเช:
- เชตเชฟเชเชพเชธเชเชฐเซเชคเชพ เชซเชเซเชค เชชเซเชฐเซเชเซเชเซเช เชเชจเซเชเซเชจเชฐเชฎเชพเช เชตเชฐเซเชฃเชตเซเชฒ เชธเชพเชฅเซ เชเซเชฐเชฟเชฏเชพเชชเซเชฐเชคเชฟเชเซเชฐเชฟเชฏเชพ เชเชฐเซ เชเซ
docker-compose.yml
, เช เชจเซเชฏ เชเชพเชฒเชคเชพ เชเชจเซเชเซเชจเชฐ เชฆเซเชตเชพเชฐเชพ เชเชพเชฎเชฎเชพเช เชฆเชเชฒ เชฅเชคเซ เชจเชฅเซ. - เชเซ เชเซเช เชเซเชเซเชเชธ เชเชฆเซเชถ เชญเซเชฒเซ เชเชฏเซ เชนเซเชฏ, เชคเซ เชคเชฎเซ เชเชฆเซเชถ เชเชฒเชพเชตเซ เชถเชเซ เชเซ
make help
เช เชจเซ เชเชชเชฒเชฌเซเชง เชเชฆเซเชถเซ เชชเชฐ เชฎเชฆเชฆ เชฎเซเชณเชตเซ. - เชจเชตเซเชจเชคเชฎ เชฒเซเช เชเชจเซเชเซเชฐเซเช เชฎเซเชณเชตเชตเชพ เช
เชฅเชตเชพ เชธเชฟเชธเซเชเชฎเชฎเชพเช เชฒเซเช เชเชจ เชเชฐเชตเชพ เชเซเชตเซ เชเซเชฐเชฟเชฏเชพเช เชเชฐเชตเชพ เชฎเชพเชเซ เชคเชฎเชพเชฐเซ เชฆเชฒเซเชฒเซเชจเซ เชฒเชพเชเชฌเซ เชธเซเชเชฟ เชฏเชพเชฆ เชฐเชพเชเชตเชพเชจเซ เชเชฐเซเชฐ เชจเชฅเซ. เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, เชเซเชฎ เชเซ เชเชฆเซเชถ
docker-compose -f docker-compose.yml exec timescale psql -Upostgres
เชฎเชพเช เชชเซเชฐเชตเซเชถ เชเชฐเซ เชเซmake db-shell
. - เชซเชพเชเชฒ
Makefile
เชเซเชฎ เชเซเชฎ เชชเซเชฐเซเชเซเชเซเช เชตเชงเชคเซ เชเชพเชฏ เชคเซเชฎ เชคเซเชฎ เชคเชฎเซ เชคเซเชจเซ เช เชจเซเชเซเชณ เชฐเซเชคเซ เชธเซเชตเซเชเชพเชฐเซ เชถเชเซ เชเซ. เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, เชกเซเชเชพเชฌเซเช เชฌเซเชเช เชช เชฌเชจเชพเชตเชตเชพ เช เชฅเชตเชพ เช เชจเซเชฏ เชเซเชเชชเชฃ เชเซเชฐเชฟเชฏเชพ เชเชฐเชตเชพ เชฎเชพเชเซ เชเชฆเซเชถ เชเชฎเซเชฐเชตเชพเชจเซเช เชธเชฐเชณ เชเซ. - เชเซ เชตเชฟเชเชพเชธเชเชฐเซเชคเชพเชเชจเซ เชฎเซเชเซ เชเซเชฎ เชคเซเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชเซ
Makefile
, เช เชธเชนเชฏเซเชเชจเซ เชธเซเชตเซเชฏเชตเชธเซเชฅเชฟเชค เชเชฐเซ เชเซ เช เชจเซ เชญเซเชฒเซเชจเซ เชเชเชพเชกเซ เชเซ.
PS เช
เชฎเชพเชฐเชพเชฎเชพเช
เชชเซเชฐเชฟเชฏ เชตเชพเชเชเซ! เชคเชฎเซ เชกเซเชเชฐ เชเชเชชเซเช เชเซเชตเซ เชฐเซเชคเซ เชธเซเชตเชเชพเชฒเชฟเชค เชเชฐเชถเซ?
เชธเซเชฐเซเชธ: www.habr.com