说我的mywebsite.com指向我的Ubuntu服务器。
我的Ubuntu服务器上运行了一个docker容器。
是否可以将请求发送到我的Ubuntu服务器到docker容器公开的应用程序?
我不完全确定要搜索这个问题的内容。我想我必须将nginx设置为代理或什么?
我知道可能有更好的服务器设置,我想知道这个特定的设置是否可行。
答案 0 :(得分:1)
是的,有可能。你需要:
例如,您可以使用Apache。
使用简单的Dockerfile:
FROM httpd:2.4
RUN echo "<h1>It works!</h1>" > /usr/local/apache2/htdocs/index.html
命令:
# Builds my Dockerfile above and tags the image as "test"
docker build . -t test
# Creates a container with the default command running, which
# starts Apache. Publishes (-p) port 80 inside the container and
# binds it to port 80 on the host machine
docker run --rm -p 80:80 test
如果您在本地运行此功能(请参阅上面的所有警告),您可以访问http://localhost
并查看上面的消息。关键是-p
标志,它发布端口80.
https://docs.docker.com/engine/reference/commandline/run/
nginx有很多用途。您可以使用nginx作为应用程序来监听渲染/提供静态页面。您还可以使用nginx作为客户端计算机(Web浏览器等)与另一个正在运行的进程(在另一个容器或另一个服务器中)之间的代理。如果您提供了有关您实际尝试完成的内容的其他详细信息,我可能会指出您正确的方向。