我目前正在使用docker-machine通过端口:3000提供Mern应用。
一切正常-但是我的应用程序在my-ip:3000上提供。我不希望用户必须导航到myurl.com:3000。从my-ip /而不是my-ip:3000访问应用程序的最简单解决方案是什么。我在AWS上使用ec2和route53。
答案 0 :(得分:0)
docker-machine create --driver amazonec2 <my-app>
仅创建名为my-app的EC2 VM。
假定EC2 VM是docker命令的默认docker主机;最简单的方法是在运行容器时按照docker run -p 80:3000 image-name
的方式将主机端口绑定到容器端口。
或者(稍微复杂一点),您可以托管NGINX容器以侦听端口80并通过端口3000代理到您的应用程序,例如
server {
listen 80 default_server;
listen [::]:80 default_server;
location / {
proxy_pass http://my-app:3000;
}
}