我是docker的新手,会做出反应。我想知道如何在AWS上部署生产版本。 我已经尝试过的步骤如下:
npm run
和npm run build
在容器内工作。现在我的问题是:如何使用Apache-HTTP-Server在AWS上部署它,并在端口80上公开该服务?
答案 0 :(得分:2)
您已经关闭。您只需要在Docker容器中安装一个Apache Web服务器。
但是您不需要自己做。您可以使用FROM httpd:latest
来启动dockerfile,以official apache container为基础。
我的建议是使用两个具有一个共享卷的docker容器。第一个容器从源代码构建您的应用程序,并在工作完成后退出。第二个容器托管apache,并将构建目录安装到其htdocs目录中。这样一来,您可以直接使用official apache container而无需修改,并且您已经创建了build-container。
第三个选择是使用节点而不是apache进行托管,然后将nodejs container用作基础,以及有关如何使用它的说明手册here。
另外,您可能会对shakyShane的awesome post感兴趣,他在其中描述了如何使用单个dockerfile解决此问题
编辑:我现在正在使用这个Dockerfile。但是,您应该在docker-compose文件中指定端口。