我是docker.I的新手。我用无头镀铬工具构建了一个爬虫但现在我必须使用docker进行部署,并且有https://github.com/yukinying/chrome-headless-browser-docker的图像,它将在端口9222中托管远程调试模式,还有另一个容器我的节点应用程序正在运行我不知道如何将这两个容器链接起来。
docker run -it --name nodeserver --link chrome:chrome nodeapp bash
但是在该docker中我无法访问localhost:9222
答案 0 :(得分:3)
我建议使用docker-compose,它带有用于mac / windows的docker,并且是为这种简单的连接而设计的。
你需要一个类似
的docker compose文件version: "3"
services:
headless-browser:
image: yukinying/chrome-headless
ports:
- 9222
crawler:
build:
context: .
dockerfile: Dockerfile
links:
- headless-browser
然后是同一文件夹中的Docker文件 例如用于测试连接使用
FROM alpine
RUN apk update && apk add curl
CMD curl http://headless-browser:9222
使用命令docker-compose up
输出将是文本中的控制台页面(因此您知道连接正常工作)
为了避免任何缩进问题......我已经复制并粘贴了一个回复:https://github.com/TheSmokingGnu/stackOverflowAnswer