Docker run command, volumes error

I’m trying to make a docker run and build command out of the compose file below.

So far I have come up with this:

  • Running apache on docker with Dockerfile in windows boot2docker
  • expose docker containers application port to host on windows using boot2docker
  • docker-compose up fails with “ Unable to find a node that satisfies the following conditions ”
  • “Unable to write in the cache directory” with Docker and Nginx
  • 2 Docker environments in same VPC
  • A jenkins-slave container image per module type or a single centralized one which can build anything?
  • docker build --tag testenvironment/nodejs ./node_js
    docker run -p 8080:8080 -v ./node_js:/home/app/chat -v /home/app/chat/node_modules --name nodejs testenvironment/nodejs

    I’m stuck here because it gives the following error:

    C:\Program Files\Docker Toolbox\docker.exe: Error response from daemon: create ./node_js: "./node_js" includes invalid characters for a local volume name, only "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed. If you intented to pass a host directory, use absolute path. See 'C:\Program Files\Docker Toolbox\docker.exe run --help'.

    Compose file:

      build: ./node_js
      command: node server.js
        - mongo
        - mongo      
        NODE_ENV: development  
        - '8080:8080'
        - ./node_js:/home/app/chat
        - /home/app/chat/node_modules

    Can anybody tell me how to convert the volumes from the compose file to a docker run command? Thanks in advance.

    I am using the Docker Toolbox for Windows 10.

  • Stop a running Docker container by sending SIGTERM
  • Use GitLab CI to deploy app with ftp
  • Docker-machine error “Could not find matching IP for MAC address” on Windows 10
  • What components should be “containerized” - Docker
  • Finding the layers and layer sizes for each Docker image
  • ADD command not working Docker
  • 2 Solutions collect form web for “Docker run command, volumes error”

    This part:

    docker run -p 8080:8080 -v ./node_js:/home/app/chat ....

    Should be:

    docker run -p 8080:8080 -v $(pwd)/node_js:/home/app/chat

    docker run requires an absolute path for volumes (as a difference from compose)

    Had to use an absolute path but in the following format:
    docker run -p 8080:8080 -v //c/users/desktop/path/to/node_js:/home/app/chat ….

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.