V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
keyfunc
V2EX  ›  Docker

新人的 Docker 问题

  •  
  •   keyfunc · 2016-07-10 14:58:45 +08:00 · 3916 次点击
    这是一个创建于 3058 天前的主题,其中的信息可能已经有所发展或是发生改变。
    想搭建 2 个容器,一个放 nginx 一个放 php-fpm ,想问下这两个容器间如何通信?
    用 link 的话, php 那边 ip 变更的话, nginx 容器如果不重启的话是不是就拿不到 php 容器最新的 ip 地址了?
    第 1 条附言  ·  2016-07-10 21:52:46 +08:00
    代码的话是直接 build 镜像的时候复制到容器里 还是 run 的时候通过-v 参数连接过去?

    -v 参数连接过去的文件权限是怎么控制的,比如我的 php-fpm 进程用户是 www-data , nginx 用户是 nginx
    8 条回复    2016-07-11 11:12:13 +08:00
    majinjing3
        1
    majinjing3  
       2016-07-10 15:17:04 +08:00 via Android
    如果用--link php:php 这样的话, nginx 里面用直接写 php , docker 会移动更新 hosts 记录,
    gamexg
        2
    gamexg  
       2016-07-10 15:21:51 +08:00
    link 后直接用主机名即可。 docker 会更新 hosts 文件。
    imxieke
        3
    imxieke  
       2016-07-10 15:32:10 +08:00 via Android
    请教下楼主 将 nginx 与 php-fpm 分开是什么情况 ? 性能强? 还是有其他什么好处?
    majinjing3
        4
    majinjing3  
       2016-07-10 16:36:23 +08:00 via Android   ❤️ 1
    @imxieke 一个容器只做自己的事儿,方便隔离,而且 nginx 可以做反代,不仅仅反代 php ,还可以反代其他更多的容器
    imxieke
        5
    imxieke  
       2016-07-10 18:44:06 +08:00 via Android
    @majinjing3 哦哦 谢谢科普😄
    shiny
        6
    shiny  
       2016-07-10 18:49:11 +08:00
    docker-compose 。 link 的时候自动会往 hosts 文件里写对应的 ip 和主机名,直接连接 fastcgi 后端直接写 主机名:port 即可。
    aogg
        7
    aogg  
       2016-07-10 22:19:28 +08:00
    用 network

    这是参考地址: https://github.com/aogg/docker_lamp/blob/master/docker/docker-compose.yml

    和 6 楼有点类似

    不用 docker-compose 也可以直接手动用 docker network 相关命令
    keyfunc
        8
    keyfunc  
    OP
       2016-07-11 11:12:13 +08:00
    还是请问下,代码到底放容器中还是通过- v 连接?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2004 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 00:51 · PVG 08:51 · LAX 16:51 · JFK 19:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.