如何解决如何在特定应用程序中使用 docker 端口映射 (Goreplay)
我需要帮助来运行特定的 docker 容器。
我正在尝试使用这个项目 [Goreplay] (https://github.com/buger/goreplay) 这基本上是一种记录实时流量的工具。
例如这里 https://github.com/buger/goreplay/wiki/Getting-Started#saving-requests-to-file-and-replaying-them-later 我可以使用以下命令将请求保存到文件中:
sudo ./gor --input-raw :8000 --output-file=requests.gor
其中 8000 是运行我的本地应用程序或服务器的端口。
现在,我想使用 docker,所以我找到了这张图片 https://hub.docker.com/r/buger/goreplay
我想捕获运行在端口 8000 上的同一本地服务器的流量,但是使用 docker 容器中的 goreplay .. 问题是我不知道如何正确映射端口,我试过这个:
docker run -i -t --rm -p 8000:8000 --name mygoreplay buger/goreplay --input-raw :3000 --output-file=requests_docker.gor
但它说
docker: Error response from daemon: driver failed programming external connectivity on endpoint mygoreplay
(b5c52ad18f266110085891015fed420c8548145a96837bcd09df464158261272): Error starting userland proxy: listen tcp 0.0.0.0:8000: bind: address already in use. ERRO[0004] error waiting for container: context canceled
如何正确映射端口,以便我在容器中的 goreplay 可以跟踪本地服务器的流量??
还有一个附带问题:我在哪里可以找到文件 requests_docker.gor?现在 goreplay 在 docker 容器中?
先谢谢你。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。