[英]Docker-compose: close ports after SIGTERM
我在開發環境中使用Docker和Docker Compose。
當我在項目之間切換時,通常會感到有些痛苦,因為我收到一個“ PORT ALREADY IN USE
錯誤。
如果我做docker-compose up
(這使我的rails服務器啟動), Ctrl+C
是終止此容器的正確方法嗎?
這是我docker-compose.yml
文件:
db:
image: postgres
ports:
- "5432"
web:
build: .
command: bundle exec rails s -p 3000 -b '0.0.0.0'
volumes:
- .:/myapp
ports:
- "3000:3000"
links:
- db
有時,我只需要刪除./tmp/pids/server.pid
,但有時我必須kill -9
一些進程。
例如,這是什么ps -edf | grep docker
ps -edf | grep docker
輸出:
root 742 1 0 Jul18 ? 00:01:11 /usr/bin/docker -d -H fd://
root 22341 742 0 Jul21 ? 00:00:00 docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 32781 -container-ip 172.17.0.48 -container-port 5432
root 22510 742 0 Jul21 ? 00:00:00 docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 3030 -container-ip 172.17.0.49 -container-port 3030
root 28766 742 0 Jul21 ? 00:00:00 docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 32783 -container-ip 172.17.0.57 -container-port 5432
root 28886 742 0 Jul21 ? 00:00:00 docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 3000 -container-ip 172.17.0.58 -container-port 3000
難道我做錯了什么?
我將使用docker-compose up -d
將容器作為后台進程docker-compose up -d
。 然后,您可以使用干凈的方式使用docker-compose stop
關閉計算機。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.