在本地Debian上,我采用以下方式开发:
Webpack开发服务器:
devServer: {
host: "192.168.XX.XX",
port: 8080,
disableHostCheck: true,
inline: true
}
通过运行 npm手动启动webpack开发服务器运行dev 现在可以通过192.168.XX.XX:8080 / path / to / file访问文件
在我的Apache配置中,我定义了一个反向代理,以使文件可以通过干净的路径访问:my-host.dev/ 节点 / path / to / file
Apache配置:
ProxyPass /node/ http://192.168.XX.XX:8080/ retry=0 timeout=5
ProxyPassReverse /node/ http://192.168.XX.XX:8080/
如果我想在ddev容器中使用相同的基本行为,是否需要定义一个新服务?或者如何路由mypackname.ddev.site/path/to/file或至少mysitename.ddev.site:8080/path/to/file可访问webpack生成的文件的端口? 最佳答案
对于初学者,我要做的就是暴露端口。最简单的技术是添加一个.ddev / docker-compose.webpack.yaml以暴露您的端口8080:
version: "3.6"
services:
web:
ports:
- 8080:8080
ddev start
,然后像往常一样使用它。它应该与http://<yourproject>.ddev.site:8080
或http://localhost:8080
一起使用一种更优雅的技术是使用ddev的内置反向代理,因此.ddev / docker-compose.webpack.yaml将具有:
version: "3.6"
services:
web:
expose:
- 8080
environment:
- HTTP_EXPOSE=${DDEV_ROUTER_HTTP_PORT}:80,${DDEV_MAILHOG_PORT}:8025,8080:8080
- HTTPS_EXPOSE=${DDEV_ROUTER_HTTPS_PORT}:80,${DDEV_MAILHOG_HTTPS_PORT}:8025,8081:8080
通过此设置,您将使用http://projectname.ddev.site:8080
或https://projectname.ddev.site:8081
访问Webpack。而且由于整个事情都是通过反向代理管理的,因此可以使用相同的配置同时运行多个项目。 (而且您不必从http到https来回切换。)关于docker - 使用ddev/docker容器中的特定端口访问webpack开发服务器输出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/64390344/