我有一个在 Apache 下运行且没有 docker 的项目。但是,在这个项目中,我有一个 PDF 导出,我想在 docker 容器中调用它。你是怎样做的?这是我的docker-compose.yaml:version: "3.3"services: php: image: registry.gitlab.com/nodevo/keneo/php:latest volumes: - .:/srv:rw,cached - ~/.ssh/id_rsa:/root/.ssh/id_rsa:ro - ~/.composer:/tmp browsershot: image: ouranoshong/browsershot links: - chrome chrome: build: ./docker/chrome cap_add: - SYS_ADMIN ports: - '9223:9222'Browsershot 服务下载 PDF 并具有 node 和 npm。为此,它模拟了一个浏览器,所以我有一个 chrome 服务,但我不知道它是否是正确的方法。这两个命令在终端中工作:docker-compose run --rm browsershot node -vdocker-compose run --rm browsershot npm -v但是,Browsershot 需要可执行节点和 npm 的路径,这两个命令突然变成了上面的 2 个命令:/** * @param string $nodePath * @param string $npmPath */public function __construct(string $nodePath, string $npmPath){ $this->browserShot = new Browsershot(); $this->browserShot ->setNodeBinary($nodePath) ->setNpmBinary($npmPath) ->showBackground() ->setOption('fullPage', true) ->setOption('args', ['--disable-web-security']) ->emulateMedia('screen') ;}变量$nodePathisdocker-compose run --rm browsershot node和变量$npmPathid docker-compose run --rm browsershot npm。此代码适用于我的本地机器中的可执行文件,例如/usr/local/bin/node和/usr/local/bin/npm。但是,当我使用 docker 命令启动导出时,出现此错误:HTTP 500 Internal Server ErrorExit Code: 1(General error)Working directory: /media/vdufour/DATA/Sites/keneo/publicOutput:================Error Output:================Couldn't connect to Docker daemon at http+docker://localhost - is it running?If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.Couldn't connect to Docker daemon at http+docker://localhost - is it running?If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.
2 回答
精慕HU
TA贡献1845条经验 获得超8个赞
使用 docker-compose 时,我只是像这样“SSH”到容器的外壳中:
docker-compose exec php /bin/bash
(php
我的容器在哪里docker-compose.yml
)
请记住,对于您打开的每个终端窗口,您还需要运行以下命令来加载环境变量:
eval $(docker-machine env)
如果不这样做,您将收到Couldn't connect to Docker daemon
消息。
手掌心
TA贡献1942条经验 获得超3个赞
尝试使用 bash 运行命令
docker-compose run --rm browsershot bash -c "npm && node && some_command..."
- 2 回答
- 0 关注
- 170 浏览
添加回答
举报
0/150
提交
取消