这个问题通常是由于容器中的工作目录与用户期望的工作目录不一致导致的。要解决这个问题,请在 dockerfile 中确保指定了正确的工作目录,并使用绝对路径来引用文件。
例如,如果在容器中创建了名为“foo.txt”的文件,并且您的应用程序代码期望在/workdir/foo.txt 目录下找到该文件,则需要在 dockerfile 中这样设置:
FROM alpine:latest
RUN mkdir /app
COPY foo.txt /app
WORKDIR /app
此外,在应用程序代码中,您需要使用绝对路径来引用文件,例如:
f, err := os.Open("/app/foo.txt")