Multi-Container App
Container 間可以透過網路互相溝通。
可以透過 docker network 輕鬆建制 Container 間的網路。
Step 1. 建立 Docker Network
docker network create [NETWORK_NAME]
Step 2. 將 Container 納入同個 Docker Network 下
-
Contaienr A | Data Server
docker run \ --network [NETWORK_NAME] \ --network-alias [ALIAS_FOR_CONTAINER_A]--network-alias [ALIAS_FOR_CONTAINER_A]定義了
-
Container B | App Server
docker run \ --network [NETWORK_NAME] \ -e DATA_HOST=ALIAS_FOR_CONTAINER_ADATA_HOST被定義為 environment variable,需要在 app 中進行綁定,例如axios.get('http://' + process.env.DATA_HOST + '/list')。但這樣做其實不太安全,可以參考這篇文章。