与docker为WordPress的端口转发
我是docker工的新手。 我跟着这里的教程https://www.youtube.com/watch?v=Pe6a8Jbvi9E创build一个WordPress站点与docker。 他正在用下面的命令解释端口转发,
docker run --link=my_mysql:mysql -p 80:80 -d wordpress
据我了解,这将把主机端口80中的所有请求redirect到容器的端口80。 但是,这将如何与mysql的端口3306沟通? 而且在那个教程中,数据库的详细信息不是在wordpress的任何地方设置的,而是从db config的值取自哪里的? 有人可以解释吗? 对不起,如果这是非常基本的问题。
但是,这将如何与mysql的端口3306沟通?
wordpress
容器将与mysql
容器进行通信,因为这是一个链接所允许的:(请参阅将容器链接在一起 )
链接允许容器相互发现并安全地将有关一个容器的信息传输到另一个容器。 当您设置链接时,您会在源容器和收件人容器之间创buildpipe道。
所以端口3306 不会暴露给主机(就像80端口一样),但对于wordpress
容器是可见的。
Docker在容器之间创build一个不需要在容器外部公开任何端口的安全隧道; 你会注意到当我们启动db容器时,我们没有使用
-P
或-p
标志。
这是一个很大的好处:我们不需要将源容器(这里是mysql
数据库)暴露给networking。Docker 为源容器公开的每个端口定义一组环境variables 。
每个variables都有一个唯一的前缀forms:
<name>_PORT_<port>_<protocol>
这个前缀中的组件是:
- 在
--link
参数中指定的别名<name>
(例如,mysql)- 暴露的
<port>
号码- 一个
<protocol>
是TCP或UDP
- 在docker中如何用铬来运行selenium
- 使用Docker:如何扭曲Web应用程序与nginx Web服务器进行通信
- 在使用Docker时,ESTABLISHED连接不会出现在netstat中
- 创build特定的根用户和主机名称不起作用
- 没有find应用程序依赖关系清单中指定的程序集:
- 事件名称应至less有3个部分用斜杠分隔。 Asp.Net核心Docker中的参数名称eventName
- 我怎样才能为DockerDotNet BuildImageFromDockerfile方法创build一个stream?
- Docker和Youtrack通过SSL
- 如何在Windows Docker健康检查脚本中访问环境variables