###実現したいこと
1つのサーバーで複数のWebアプリを動かして、nginxで複数ドメインからのリクエストを振り分けるような使い方を考えています。
docker-compose.yml はアプリごとに管理したいので、nginxと各アプリ毎にymlを作成したいと思います。
nginx (docker-compose.yml)
├ アプリ1 (docker-compose.yml)
├ アプリ2 (docker-compose.yml)
├ ...
以前は、 docker-compose を使用せずに docker run
の直打ちで作っていたのですが、管理が辛くなり、 docker-compose に乗り換えようと考えました。
nginxとアプリとの接続は http の他に、 uWSGI もやりたいと考えています。
###試したこと
アプリ1をupした後にnginxをupしたら、以下のエラーが出ました。
$ docker-compose up -d Creating network "testapp_default" with the default driver Creating test_app $ cd ../nginx/ $ docker-compose up -d ERROR: Service 'nginx' has a link to service 'test_app' which is undefined. $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a3d83bf81fa5 nginx:latest "nginx -g 'daemon off" 2 minutes ago Up 2 minutes 80/tcp, 443/tcp test_app
どうも、 docker-compose で作成したコンテナへのリンクが出来ていないみたいでした。
試しに、 nginx を直接 docker run
で作ってみても、リンクが上手くいきませんでした。
docker-compose で作成したらネットワークが別れる?ようにも見えるのですが、対処方法が分かりません。。。
external_links
にも変更してみたいのですが、nginxで使用するとすると、hostを解決できたいとエラーが出てしまいました。
###docker-compose.yml
####アプリ1
yaml
1version: '2' 2services: 3 test_app: 4 image: nginx:latest 5 container_name: test_app
####nginx
yaml
1version: '2' 2services: 3 nginx: 4 image: nginx:latest 5 ports: 6 - '80:80' 7 - '443:443' 8 links: 9 - test_app 10 container_name: nginx
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。