将卷挂载到Docker容器中并查看主机系统上的更改

时间:2018-12-06 10:18:30

标签: docker docker-compose

我希望在容器内进行的更改在主机系统上可见。我该怎么办?

这是我现在正在使用的docker-compose.yml:

version: '3'
services:
  timfoto:
    build: .
    command: bash -c "bundle exec middleman s"
    volumes:
      - .:/myapp
    ports:
      - "4567:4567"

还有我的Dockerfile:

FROM ruby:2.5.3
RUN apt-get update -qq && apt-get install -y build-essential nodejs
ADD Gemfile .
ADD Gemfile.lock .
RUN bundle
VOLUME ["/myapp"]
WORKDIR myapp
EXPOSE 4567

1 个答案:

答案 0 :(得分:2)

您似乎具有在主机和容器之间共享文件和文件更改所需的条件。容器内/ myapp目录中写的内容应该在容器外部,在主机上可见。

要使其正常运行,您需要确保:

  • 在Windows上,您必须在Docker For Windows设置中共享主机文件夹
  • 有时在指定volume指令的主机部分时,相对路径使我头疼。考虑在此处使用绝对路径。