2017-03-31 3 views
0

私のOwncloudインスタンスをドッカーに移動しようとしています。私は120GBのルートを持つ "サーバー"と、独自のクラウドデータ用に指定された500GBのUSBディスクを持っています。私はこのような構成を思い付いた:docker-composeまたはdockerfile(コピーなし)を使用してディレクトリをマウント

docker-owncloud 
├── docker-compose.yml 
├── mysql 
│   ├── db <- mysql files 
│   └── Dockerfile 
└── owncloud 
    ├── data <- owncloud files (300GB) 
    └── Dockerfile 

マイドッカ - コン:

version: '3' 
services: 
    owncloud: 
     build: owncloud 
     ports: 
      - 8080:80 
     links: 
      - mysql 
     volumes: 
      - ./owncloud/data:/var/www/html 
    mysql: 
     build: mysql 
     environment: 
      - MYSQL_ROOT_PASSWORD=XXX 
     volumes: 
      - ./mysql/db:/var/lib/mysql 

Mysqlのdockerfile:

from mysql:5.7.17 
ENV LANG=C.UTF-8 
ENV TZ=Europe/Warsaw 

Owncloudのdockerfile:

FROM owncloud:9.1.4-apache 
ENV LANG=C.UTF-8 
ENV TZ=Europe/Warsaw 

今私がしなければ「ドッカーの作成」、自分のデータクラウド/データ(300GB)が新しいボリュームにコピーされていますが、そのような空きディスク容量がないため不可能です。

データをコピーせずにdocker-composeまたはdockerfileを使用して2つのディレクトリをマウントする方法はありますか?そのような状況に対処する他の既知の方法はありますか?

私はそれが不可能であることを発見するのに3時間以上を費やしましたが、それは事実であるとは信じられません。あなたの答えに事前に感謝します。

+0

データディレクトリを追加しますか?あなたが掲示したものは、期待どおりに動作するはずです – Creek

+0

私はドッカーの作成コマンドをビルドすると、それはowncloudのために非常に長く続き、 "df -h"では空きスペースとして/減少として見ることができます。 –

+0

同じことが 'docker-compose up owncloud'で起こりますか? – Creek

答えて

0

ビルドすると、現在のディレクトリとサブディレクトリにあるすべてのファイルがデーモンに送信されます。あなたはこれを文脈として知っています。あなたがイメージを構築しているディレクトリ構造の外に

  • 移動データディレクトリ:

    あなたは2つのオプションがあります。
  • .dockerignoreファイルを作成し、データがコピーされた代わりに搭載されていると思わせるものを

https://docs.docker.com/engine/reference/builder/#usage

+0

.dockerignoreはそのトリックを行いました。ありがとうございました ! –

関連する問題