我用金刚/棒来做些像木偶师这样的事情。
在我的dev pc中一切正常,但是在我docker build
并在高山中运行之后,它会得到以下错误:
chrome/chrome:没有这样的文件或目录
错误信息
Download: https://npm.taobao.org/mirrors/chromium-browser-snapshots/Linux_x64/901912/chrome-linux.zip
Progress: 00% 16% 24% 33% 41% 49% 58% 66% 74% 83% 91% 99% 100%
Unzip to: /root/.cache/rod/browser/chromium-901912
Progress: 00% 21% 37% 63% 92% 100%
2021/12/07 11:22:18 [Recovery] 2021/12/07 - 11:22:18 panic recovered:
fork/exec /root/.cache/rod/browser/chromium-901912/chrome-linux/chrome: no such file or directory
/go/pkg/mod/github.com/go-rod/rod@v0.101.8/lib/utils/utils.go:64 (0xa41a24)
/go/pkg/mod/github.com/go-rod/rod@v0.101.8/must.go:35 (0xb02679)
/go/pkg/mod/github.com/go-rod/rod@v0.101.8/must.go:50 (0xb02828)
/go/src/app/bscase/service.go:733 (0xb38c6c)
/go/pkg/mod/github.com/gin-gonic/gin@v1.7.3/context.go:165 (0x999d92)
/go/src/app/common/api/middleware.go:26 (0x999d7a)
/go/pkg/mod/github.com/gin-gonic/gin@v1.7.3/context.go:165 (0x98fee1)
/go/pkg/mod/github.com/gin-gonic/gin@v1.7.3/recovery.go:99 (0x98fecc)
/go/pkg/mod/github.com/gin-gonic/gin@v1.7.3/context.go:165 (0x98f146)
/go/pkg/mod/github.com/gin-gonic/gin@v1.7.3/logger.go:241 (0x98f129)
/go/pkg/mod/github.com/gin-gonic/gin@v1.7.3/context.go:165 (0x98e67d)
/go/pkg/mod/github.com/gin-gonic/gin@v1.7.3/gin.go:489 (0x98e305)
/go/pkg/mod/github.com/gin-gonic/gin@v1.7.3/gin.go:445 (0x98de64)
/usr/local/go/src/net/http/server.go:2878 (0x6ddcfa)
/usr/local/go/src/net/http/server.go:1929 (0x6d93a7)
/usr/local/go/src/runtime/asm_amd64.s:1581 (0x4632c0)
Go代码(版本1.17,R棒版本v0.101.8)
l, _ := launcher.New().Set("disable-web-security").
Set("disable-setuid-sandbox").
Set("no-sandbox").
Set("no-first-run", "true").
Set("disable-gpu").
Headless(true).
Launch()
browser := rod.New().ControlURL(l).MustConnect()
码头文件
FROM golang:1.17 AS builder
ENV GO111MODULE=on \
GOPROXY="https://mirrors.aliyun.com/goproxy/,direct"
WORKDIR $GOPATH/src/app
# manage dependencies
COPY go.mod ./
COPY go.sum ./
RUN go mod download
COPY . .
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -a -o /app .
FROM alpine:latest
# Install base packages
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
RUN apk update
RUN apk upgrade
RUN apk add --no-cache chromium
WORKDIR /root/
COPY --from=builder /app ./
COPY /configs ./configs
CMD ["./app"]
Rod文档说,apk添加铬可以修复,但它在我的容器中不起作用。
https://stackoverflow.com/questions/70254649
复制相似问题