微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux – 在vps上的docker容器上的输出端口的nginx / apache重定向

我是一个 linux noob在Docker容器的管理中使用apache或Nginx在VPS上.

我使用一个OVH经典的Vps(4go ram,25Go SSD),已经安装了ubuntu 15.04 docker的映像.

docker容器的安装真的很容易,在我的情况下我安装没有问题的图像sharelatex.

docker run -d \
  -v ~/sharelatex_data:/var/lib/sharelatex \
  -p 5000:80 \
  --name=sharelatex \
  sharelatex/sharelatex

站点可以通过VPS的IP访问http://51.255.47.40:5000端口显示站点工作没有任何问题.

我已经有一个子域名(tools.sebastienreycoyrehourcq.fr)配置到服务器上的ip vps(51.255.47.40路由到外部的webfaction面板),不工作,不明白为什么.

我在51.255.47.40上安装了一个apache服务器,但我认为最好的选择是安装Nginx或apache的docker镜像?你能在这一点上给我建议吗之后,我怎么可以重定向一个经典的80端口的apache或Nginx的docker映像的5000端口链接到我的子域?

解决方法

以前的答案可能涵盖了大多数问题,特别是如果您的域名有重定向问题.

为了完全移植并使用码头工作者的所有可能性,我的建议是使用Nginx官方的码头服务器映像,并将其作为唯一可从外部访问的端口(使用端口),并使用–link来管理您的Nginx容器和您的其他容器之间的连接.

我在类似的情况下做得很好,效果很好.下面是我对你的情况做了什么的初步翻译.

您启动您的共享乳胶容器,而不指定任何外部端口:

docker run -d \
  -v ~/sharelatex_data:/var/lib/sharelatex \
  --name=sharelatex \
  sharelatex/sharelatex

你准备一个你的shareLatex服务器的Nginx conf文件,你放在$HOME / Nginx / conf里,看起来像

upstream sharelatex {
     # this will refer to the name you pass as link to the Nginx container
     server sharelatex; 
}

server {
        listen 80;
        server_name tools.sebastienreycoyrehourcq.fr;
        location  ^~ / {
              proxy_pass http://sharelatex/;
        }
}

然后,您可以使用适当的卷链接和容器链接启动您的Nginx docker容器:

docker run -d --link sharelatex:sharelatex --name NginxMain -v $HOME/Nginx/conf:/etc/Nginx/sites-available -v -p 80:80 kekev76/Nginx

ps:这是使用我们自己的在github和docker上公开的kekev76 / Nginx映像完成的,但您可以将原理适应官方的Nginx映像.

原文地址:https://www.jb51.cc/linux/393567.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐