我ssh到我的AWS EC2实例。我已经使用Docker将我的应用程序部署到AWS EC2实例上。
我已经在AWS ECR(弹性容器注册表)中注册了docker映像。
在AWS EC2中,我拉出图像并使用:
docker run -p 80:8080 imagename
并且运行成功。
然而,问题是我的EC2端点(URL)只有在我使用SSH连接到它时才能到达。
当我关闭我的终端(SSH)时,EC2实例端点不可达。
我想让它在任何时候都可以访问作为一个正常的网站,什么是可能的修复?
你在本地运行你的docker命令,而不是在后台。因此,一旦你停止了会话,那么对于容器来说,它就不再可用了。
你能试着用这个设置运行容器吗:
docker run -d -p 80:8080 imagename
"-d"标志将在后台将容器作为守护进程运行。
您正在使用Elastic Beanstalk (EB),因此您必须通过EB自己的docker系统运行您的应用程序,正如文档中所解释的:
- 使用Docker平台