docker-compose.override.yml不覆盖值

时间:2019-04-05 15:45:48

标签: docker docker-compose

我想在生产环境中覆盖我的卷,因为在那儿不需要它(请将其放在本地环境中以加快开发速度)。但是,添加docker-compose.override.yml文件实际上并不会“删除”我的卷(导致错误)。

这是我的 docker-compose.yml 文件

use App\Survey;

class QuestionController extends Controller
{
    // ...

    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create(Survey $survey)
    {
        return view('question.create', compact('survey'));
    }

    // ...
}

这是我的 docker-compose.override.yml 文件

version: '3.7'
services:
  app:
    image: USERNAME/PROJECT_NAME
    container_name: PROJECT_NAME
    volumes:
    - ./:/usr/src/app
...

这种行为或替代方法的任何原因?

1 个答案:

答案 0 :(得分:2)

compose中的替代将替代文件的值合并到原始文件的顶部,但这不会从原始文件中取消设置值。将一个数组与一个空数组合并是该原始数组。您可能需要切换逻辑,并为具有该卷的环境创建一个覆盖组合文件,并为没有任何卷的环境创建一个原始组合文件。