簡體   English   中英

Docker:如何在容器內掛載本地文件夾?

[英]Docker: how to mount local folder inside container?

我需要從我的 OSX 機器與正在運行的 Docker 容器共享一個文件夾,但我找不到如何做到這一點。 這是一個有效的 Docker-compose 文件:

version: '2'
services:
mariadb:
  image: 'bitnami/mariadb:10.3'
  environment:
    - MARIADB_ROOT_PASSWORD=bitnami
    - MARIADB_USER=bn_moodle
    - MARIADB_DATABASE=bitnami_moodle
    - ALLOW_EMPTY_PASSWORD=yes
  volumes:
    - 'mariadb_data:/bitnami'
phpmyadmin:
  image: 'bitnami/phpmyadmin:4'
  ports:
    - '8081:80'
    - '4430:443'
  depends_on:
    - mariadb
  volumes:
    - 'phpmyadmin_data:/bitnami'
moodle:
  image: 'bitnami/moodle:3'
  environment:
    - MARIADB_HOST=mariadb
    - MARIADB_PORT_NUMBER=3306
    - MOODLE_DATABASE_USER=bn_moodle
    - MOODLE_DATABASE_NAME=bitnami_moodle
    - ALLOW_EMPTY_PASSWORD=yes
  ports:
    - '80:80'
    - '443:443'
  volumes:
    - 'moodle_data:/bitnami'
  depends_on:
    - mariadb
volumes:
  mariadb_data:
    driver: local
  phpmyadmin_data:
    driver: local
  moodle_data:
    driver: local

該文件正確啟動了 3 個 Docker 容器,1 個用於 Moodle,1 個用於 MariaDb,1 個用於 Phpmyadmin。

我現在需要做的是將本地文件夾的內容與 Moodle 容器內的文件夾共享。 但我不知道如何更改 Volumes 鍵來反映這一點。 我嘗試使用如下映射:

moodle_data:
- moodle_data:/Users/macbook/Code/Php/moodle-docker/moodle/Users/macbook/Code/Php/moodle-docker/moodle

但它沒有用..我在這里做錯了什么? 在此先感謝任何可以提供幫助的人!

您需要使用 host_folder:container_folder 將您的 host_folder 與您的 container_folder 映射。 正如評論中提到的:

moodle:
  image: 'bitnami/moodle:3'
  environment:
    - MARIADB_HOST=mariadb
    - MARIADB_PORT_NUMBER=3306
    - MOODLE_DATABASE_USER=bn_moodle
    - MOODLE_DATABASE_NAME=bitnami_moodle
    - ALLOW_EMPTY_PASSWORD=yes
  ports:
    - '80:80'
    - '443:443'
  volumes: 
    - /Users/macbook/Code/Php/moodle-docker/moodle:/bitnami/gatto
    - moodle_data:/bitnami
  depends_on:
    - mariadb

請記住:您在 host_folder 上的文件夾必須可由 docker 守護進程訪問

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM