docker+nginx实现给docker容器分配域名的流程步骤
如何设置特定容器通过域名响应访问?
我的意思是说我有一个可以从外部访问的微服务,
例如:
users.zongscan.com 它将进入处理用户api的微服务容器
test.zongscan.com 进入处理test的微服务容器
解决方法:
需要使用端口发布的概念,以便可以通过主机的端口访问容器中的端口。
使用此功能,
您可以从 Nginx 设置一个简单的 proxy_pass ,它将重定向到( 假设您将端口发布到 )
users.zongscan.com myhost:1337
因此,如果要执行此操作,则需要使用以下命令设置容器以暴露特定端口:
docker run -d -p 5000:5000 training/webapp # publish image port 5000 to host port 5000
然后,您可以从您的主机 卷曲 你的localhost:5000访问容器。
curl -X GET localhost:5000
如果要在前面设置域名,则需要有一个Web服务器实例,
该实例允许您将主机名 proxy_pass 传递到容器中。
即在 Nginx中 :
server {
listen 80;
server_name users.zongscan.com;
location / {
proxy_pass http://localhost:5000;
}
}
相关文章