Docker compose-Mount volume on a few containers AND the host











up vote
1
down vote

favorite












Im trying to share data between a few containers and the host using docker-compose. I have a docker-compose.yml file that looks like this:



version: '3'
services:
base:
container_name: base
build:
context: .
dockerfile: BaseDockerfile
volumes:
- dependencies:/volumes/dependencies
romee:
container_name: romee
build:
context: .
dockerfile: RomeeDockerfile
environment:
- PYTHONPATH=/volumes/base_dependencies/
volumes:
- dependencies:/volumes/base_dependencies

volumes:
dependencies:


Now the volume "dependencies" is shared successfully between the containers, but I want to also share it with the host. How can I do that?










share|improve this question


























    up vote
    1
    down vote

    favorite












    Im trying to share data between a few containers and the host using docker-compose. I have a docker-compose.yml file that looks like this:



    version: '3'
    services:
    base:
    container_name: base
    build:
    context: .
    dockerfile: BaseDockerfile
    volumes:
    - dependencies:/volumes/dependencies
    romee:
    container_name: romee
    build:
    context: .
    dockerfile: RomeeDockerfile
    environment:
    - PYTHONPATH=/volumes/base_dependencies/
    volumes:
    - dependencies:/volumes/base_dependencies

    volumes:
    dependencies:


    Now the volume "dependencies" is shared successfully between the containers, but I want to also share it with the host. How can I do that?










    share|improve this question
























      up vote
      1
      down vote

      favorite









      up vote
      1
      down vote

      favorite











      Im trying to share data between a few containers and the host using docker-compose. I have a docker-compose.yml file that looks like this:



      version: '3'
      services:
      base:
      container_name: base
      build:
      context: .
      dockerfile: BaseDockerfile
      volumes:
      - dependencies:/volumes/dependencies
      romee:
      container_name: romee
      build:
      context: .
      dockerfile: RomeeDockerfile
      environment:
      - PYTHONPATH=/volumes/base_dependencies/
      volumes:
      - dependencies:/volumes/base_dependencies

      volumes:
      dependencies:


      Now the volume "dependencies" is shared successfully between the containers, but I want to also share it with the host. How can I do that?










      share|improve this question













      Im trying to share data between a few containers and the host using docker-compose. I have a docker-compose.yml file that looks like this:



      version: '3'
      services:
      base:
      container_name: base
      build:
      context: .
      dockerfile: BaseDockerfile
      volumes:
      - dependencies:/volumes/dependencies
      romee:
      container_name: romee
      build:
      context: .
      dockerfile: RomeeDockerfile
      environment:
      - PYTHONPATH=/volumes/base_dependencies/
      volumes:
      - dependencies:/volumes/base_dependencies

      volumes:
      dependencies:


      Now the volume "dependencies" is shared successfully between the containers, but I want to also share it with the host. How can I do that?







      docker docker-compose






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 19 at 10:23









      NotSoShabby

      17312




      17312
























          1 Answer
          1






          active

          oldest

          votes

















          up vote
          1
          down vote



          accepted










          The question is equivalent to how to specify a path of a named volume:



          Solution:



          volumes:
          dependencies:
          driver: local
          driver_opts:
          type: 'none'
          o: 'bind'
          device: '/abs/path/to/dependencies'


          EDIT



          The complete flow would be like,



          Image: Dependency generator, at build time (docker build), generate dependency to /temp, then at run time (docker run / docker-compose up), cp -pr /temp /dependencies, after that it can exit 0.






          share|improve this answer























          • Can you explain the order that the mounting is happening? for example, if I already have that directory on the server, will it override the containers data?
            – NotSoShabby
            Nov 19 at 10:44










          • the host file will override the container data, this is desirable or not depending on how you share the dependency. How do you create them in the first place?
            – Siyu
            Nov 19 at 10:50










          • I wantto have one container creating the dependencies when on build and then other containers using them from the volume. I wanted to also be able to have access to that volume from the host
            – NotSoShabby
            Nov 19 at 11:17










          • see updated answer
            – Siyu
            Nov 19 at 12:36











          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53372553%2fdocker-compose-mount-volume-on-a-few-containers-and-the-host%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes








          up vote
          1
          down vote



          accepted










          The question is equivalent to how to specify a path of a named volume:



          Solution:



          volumes:
          dependencies:
          driver: local
          driver_opts:
          type: 'none'
          o: 'bind'
          device: '/abs/path/to/dependencies'


          EDIT



          The complete flow would be like,



          Image: Dependency generator, at build time (docker build), generate dependency to /temp, then at run time (docker run / docker-compose up), cp -pr /temp /dependencies, after that it can exit 0.






          share|improve this answer























          • Can you explain the order that the mounting is happening? for example, if I already have that directory on the server, will it override the containers data?
            – NotSoShabby
            Nov 19 at 10:44










          • the host file will override the container data, this is desirable or not depending on how you share the dependency. How do you create them in the first place?
            – Siyu
            Nov 19 at 10:50










          • I wantto have one container creating the dependencies when on build and then other containers using them from the volume. I wanted to also be able to have access to that volume from the host
            – NotSoShabby
            Nov 19 at 11:17










          • see updated answer
            – Siyu
            Nov 19 at 12:36















          up vote
          1
          down vote



          accepted










          The question is equivalent to how to specify a path of a named volume:



          Solution:



          volumes:
          dependencies:
          driver: local
          driver_opts:
          type: 'none'
          o: 'bind'
          device: '/abs/path/to/dependencies'


          EDIT



          The complete flow would be like,



          Image: Dependency generator, at build time (docker build), generate dependency to /temp, then at run time (docker run / docker-compose up), cp -pr /temp /dependencies, after that it can exit 0.






          share|improve this answer























          • Can you explain the order that the mounting is happening? for example, if I already have that directory on the server, will it override the containers data?
            – NotSoShabby
            Nov 19 at 10:44










          • the host file will override the container data, this is desirable or not depending on how you share the dependency. How do you create them in the first place?
            – Siyu
            Nov 19 at 10:50










          • I wantto have one container creating the dependencies when on build and then other containers using them from the volume. I wanted to also be able to have access to that volume from the host
            – NotSoShabby
            Nov 19 at 11:17










          • see updated answer
            – Siyu
            Nov 19 at 12:36













          up vote
          1
          down vote



          accepted







          up vote
          1
          down vote



          accepted






          The question is equivalent to how to specify a path of a named volume:



          Solution:



          volumes:
          dependencies:
          driver: local
          driver_opts:
          type: 'none'
          o: 'bind'
          device: '/abs/path/to/dependencies'


          EDIT



          The complete flow would be like,



          Image: Dependency generator, at build time (docker build), generate dependency to /temp, then at run time (docker run / docker-compose up), cp -pr /temp /dependencies, after that it can exit 0.






          share|improve this answer














          The question is equivalent to how to specify a path of a named volume:



          Solution:



          volumes:
          dependencies:
          driver: local
          driver_opts:
          type: 'none'
          o: 'bind'
          device: '/abs/path/to/dependencies'


          EDIT



          The complete flow would be like,



          Image: Dependency generator, at build time (docker build), generate dependency to /temp, then at run time (docker run / docker-compose up), cp -pr /temp /dependencies, after that it can exit 0.







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Nov 19 at 12:36

























          answered Nov 19 at 10:39









          Siyu

          1,316620




          1,316620












          • Can you explain the order that the mounting is happening? for example, if I already have that directory on the server, will it override the containers data?
            – NotSoShabby
            Nov 19 at 10:44










          • the host file will override the container data, this is desirable or not depending on how you share the dependency. How do you create them in the first place?
            – Siyu
            Nov 19 at 10:50










          • I wantto have one container creating the dependencies when on build and then other containers using them from the volume. I wanted to also be able to have access to that volume from the host
            – NotSoShabby
            Nov 19 at 11:17










          • see updated answer
            – Siyu
            Nov 19 at 12:36


















          • Can you explain the order that the mounting is happening? for example, if I already have that directory on the server, will it override the containers data?
            – NotSoShabby
            Nov 19 at 10:44










          • the host file will override the container data, this is desirable or not depending on how you share the dependency. How do you create them in the first place?
            – Siyu
            Nov 19 at 10:50










          • I wantto have one container creating the dependencies when on build and then other containers using them from the volume. I wanted to also be able to have access to that volume from the host
            – NotSoShabby
            Nov 19 at 11:17










          • see updated answer
            – Siyu
            Nov 19 at 12:36
















          Can you explain the order that the mounting is happening? for example, if I already have that directory on the server, will it override the containers data?
          – NotSoShabby
          Nov 19 at 10:44




          Can you explain the order that the mounting is happening? for example, if I already have that directory on the server, will it override the containers data?
          – NotSoShabby
          Nov 19 at 10:44












          the host file will override the container data, this is desirable or not depending on how you share the dependency. How do you create them in the first place?
          – Siyu
          Nov 19 at 10:50




          the host file will override the container data, this is desirable or not depending on how you share the dependency. How do you create them in the first place?
          – Siyu
          Nov 19 at 10:50












          I wantto have one container creating the dependencies when on build and then other containers using them from the volume. I wanted to also be able to have access to that volume from the host
          – NotSoShabby
          Nov 19 at 11:17




          I wantto have one container creating the dependencies when on build and then other containers using them from the volume. I wanted to also be able to have access to that volume from the host
          – NotSoShabby
          Nov 19 at 11:17












          see updated answer
          – Siyu
          Nov 19 at 12:36




          see updated answer
          – Siyu
          Nov 19 at 12:36


















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.





          Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


          Please pay close attention to the following guidance:


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53372553%2fdocker-compose-mount-volume-on-a-few-containers-and-the-host%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Create new schema in PostgreSQL using DBeaver

          Deepest pit of an array with Javascript: test on Codility

          Costa Masnaga