1 回答

TA貢獻(xiàn)1786條經(jīng)驗(yàn) 獲得超11個(gè)贊
看到這個(gè)人為的例子:
version: "3"
services:
server:
image: nginx:1.17.3
restart: always
container_name: nginx
expose:
- "80"
ports:
- 8888:80
client:
image: busybox:1.31.0
restart: always
depends_on:
- server
container_name: busybox
command:
- ash
- -c
- |
while true;
do
wget --spider http://server:80 2>&1
sleep 5s;
done;
client通過端口訪問 Nginx 容器80,但它用作server主機(jī)地址以解析到適當(dāng)?shù)?(Nginx) 容器。
如果您要替換server為localhostin client,則客戶端會(huì)嘗試wget對(duì)自己執(zhí)行命令,但會(huì)失敗。
因?yàn)閟erver發(fā)布8888到主機(jī),當(dāng) Docker Compose 啟動(dòng)時(shí),從主機(jī)(?。?,你可以wget http://localhost:8888并且這將起作用(200)。
添加回答
舉報(bào)