2016-06-13 17 views
0

2つのコンテナをリンクするのに苦労し、ドッカーの作成を開始するように勧められました。 だから私は、次のドッキングウィンドウ・コンファイルの構築:ドッカーボリュームへの書き込み/読み取りアクセスを処理する方法は?

version: '2' 
services: 
    db: 
    image: mysql:latest 
    volumes: 
     - "./.data/db:/var/lib/mysql" 
    restart: always 
    environment: 
     MYSQL_ROOT_PASSWORD: my-pass 
     MYSQL_DATABASE: prestashop 
     MYSQL_USER: my-shop 
     MYSQL_PASSWORD: my-pass 

    prestashop: 
    depends_on: 
     - db 
    image: prestashop/prestashop:latest 
    volumes: 
     - "./.data/themes:/var/www/html/themes" 
     - "./.data/modules:/var/www/html/modules" 
     - "./.data/override:/var/www/html/override" 
    links: 
     - db 
    ports: 
     - "10083:80" 
    restart: always 
    environment: 
     DB_SERVER: db 
     DB_NAME: prestashop 
     DB_USER: my-shop 
     DB_PASSWD: my-pass 

これは非常にうまく機能し、私は逆nginxのプロキシを経由してページを参照してください場合、私は、最初のインストールウィザードを取得します。

しかし、私は永続的なデータボリュームを追加した場合:

volumes: 
    - "./.data/themes:/var/www/html/themes" 
    - "./.data/modules:/var/www/html/modules" 
    - "./.data/override:/var/www/html/override" 

ウィザードは、多くの読み取り/書き込みアクセス文句を言うでしょう。 なぜですか?内部ボリュームは、私が推測している適切なchmodを持っていますか? それは私が考える同期の問題です。 しかし、私はchmodしようとしました。またはデータディレクトリをchown、どんな成功もなし

+1

docker-composeがボリュームをマッピングしていることがわかりましたが、フォルダは作成されたばかりなので、空です。デフォルトのデータをvar/www/htmlからホストマシンに同期する方法はありますか? – user3411864

答えて

2

私はこの問題を解決しました。 -dをドッキングウィンドウ-構成した後、私は、内部のフォルダモジュールをコピーテーマとすべてのファイルが利用可能な場合PrestaShopのが確認されますのでドッキングウィンドウのCP

でホストマシンに上書きしました。

コピーが完了すると、prestashopのインストール手順を実行できます。

関連する問題