我需要访问从Docker容器到另一个Docker容器的目录。
在第一个容器中,我正在运行一个nodeJS应用程序,在tests/e2e
文件夹中,有我的e2e测试和webdriverIO的配置。
另外,我不需要持久卷-到目前为止我已经做到了。只要两个容器都在运行,我只需要测试文件。
$ docker run
--name app_stage
--volume tests:/app/tests
--detach
app:stage
这是该应用程序的Dockerfile
RUN mkdir -p /app
WORKDIR /app
COPY . /app
RUN npm install
RUN npm run build
EXPOSE 3000
ENV NODE_ENV production
CMD next start
在第二个容器中,我正在运行webdriverIO,它需要获取存储在app/tests
中的第一个容器的测试和配置
$ docker run
--rm
--volumes-from app_stage
webdriverio wdio
但这无法正常工作,因为我在第二个容器中看不到所需的目录。
答案 0 :(得分:0)
首先,在您的dockerfile中指定VOLUME
变量:
RUN mkdir -p /app
WORKDIR /app
COPY . /app
RUN npm install
RUN npm run build
EXPOSE 3000
ENV NODE_ENV production
VOLUME /app/tests
CMD next start
使用第一个命令启动app_stage容器,然后使用第二个命令启动webdriverio容器。