在docker-compose中强制创建绑定安装

时间:2019-06-19 16:03:48

标签: docker neo4j docker-compose

我正试图使neo4j容器使用let pkgsv = import (import ./nix/nixpkgs.nix); pkgs = pkgsv {}; intray-version = import ./nix/intray-version.nix; intray-repo = pkgs.fetchFromGitHub intray-version; intray-overlay = import (intray-repo + "/nix/overlay.nix"); validity-version = import (intray-repo + "/nix/validity-version.nix"); validity-overlay = import (pkgs.fetchFromGitHub validity-version + "/nix/overlay.nix"); in pkgsv { overlays = [ validity-overlay intray-overlay (import ./nix/overlay.nix) ]; config.allowUnfree = true; } 将主机系统目录用于datalogs。我的撰写文件看起来像这样

docker-compose

但是,它仅适用于neo4j: image: neo4j:3.5.6 ports: - "127.0.0.1:7474:7474" - "127.0.0.1:7473:7473" - "127.0.0.1:7687:7687" environment: NEO4J_AUTH: "none" volumes: - "~/neo4j/data:/data" - "~/neo4j/logs:/logs" 目录,对于logs目录,容器将保留其自己的卷。 data的binds部分看起来像这样

docker inspect

当我使用"Binds": [ "/home/rbusche/neo4j/logs:/logs:rw", "6f989b981c12a252776404343044b6678e0fac48f927e80964bcef409ab53eef:/data:rw" ], 并在那里指定音量时,它可以工作。 neo4j Dockerfiledocker rundata都声明为容器卷。有没有办法强迫logs覆盖那些?

1 个答案:

答案 0 :(得分:0)

在删除卷6f989b981c12a252776404343044b6678e0fac48f927e80964bcef409ab53eef和与其关联的容器之后,它会按预期工作。容器似乎紧贴在上一次启动时创建的卷上。