标签: docker-toolbox

'docker run -v'在使用Docker Toolbox的Windows上不起作用

从CoreOS VM运行以下命令时,它按预期工作:

docker run --rm -v $PWD:/data composer init
Run Code Online (Sandbox Code Playgroud)

它将composer.json使用指定的Docker卷映射初始化当前工作目录中的文件.Docker容器基本上安装了PHP工具组合器,并将/data在容器的文件夹中运行该工具.通过使用映射,它实际上将其应用于主机上的文件.

但是,当尝试使用Docker Toolbox在Windows上运行此命令时,我收到以下错误.

$ docker run --rm -v $PWD:/data composer --help
invalid value "C:\\Users\\Marco;C:\\Program Files\\Git\\data" for flag -v: bad mount mode specified : \Program Files\Git\data
See 'C:\ProgramData\Chocolatey\lib\docker\bin\docker.exe run --help'.
Run Code Online (Sandbox Code Playgroud)

我在这里注意到的是,虽然我在Git Bash执行命令时它仍使用Windows路径.那么我试着跟随(用引号括起来):

$ "docker run --rm -v $PWD:/data composer --help"
bash: docker run --rm -v /c/Users/Marco:/data composer --help: No such file or directory
Run Code Online (Sandbox Code Playgroud)

现在它无法找到该目录.

我也试过没有$ PWD变量,但这没有什么区别.

如何在Windows上进行此操作?

windows bash docker coreos docker-toolbox

5
推荐指数
1
解决办法
1432
查看次数

尝试在运行docker-toolbox的windows上使用docker-compose在docker容器内运行webpack-dev-server时"从服务器清空回复"

我在使用docker-machine内的docker-compose访问反应容器时遇到问题.我可以卷曲容器内的网页,但我无法在docker-machine(或主机的浏览器)中访问它.可以从docker-machine和主机的浏览器访问后端Golang容器(如片段中所示,它返回404未找到).

在docker-compose日志中,一切似乎都在顺利运行,webpack-dev-server按预期运行,我无法从容器外部访问它.

我正在使用docker toolbox for windows.

最好用一些片段来描述问题.

Docker-compose文件:

version: '2'
services:
    postgres:
        image: postgres
        environment:
            - POSTGRES_PASSWORD=postgres
    server:
        build: ./server
        command: gin
        volumes:
            - ./server:/go/src/app
        ports:
            - "8080:3000"
        environment:
            - POSTGRES_PASSWORD=postgres
    client:
        build: ./client
        command: npm start
        volumes:
            - ./client:/usr/src/app
            # mount node_modules as a workaround for it disappearing
            # after adding /client as a mounted folder
            - /usr/src/app/node_modules
        ports:
            - "9000:3000"
Run Code Online (Sandbox Code Playgroud)

节点容器的Dockerfile:

FROM node:6.5.0-slim

RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app

COPY package.json /usr/src/app/
ENV NODE_ENV development
RUN …
Run Code Online (Sandbox Code Playgroud)

go node.js docker docker-machine docker-toolbox

5
推荐指数
1
解决办法
2322
查看次数

启用卷时,无法启动任何容器Docker Toolbox

我正在运行Docker Toolbox v. 1.13.1aWindows 7 Pro Service pack 1 x64操作系统.同Virtual Box Version 5.1.14 r112924

当我尝试运行任何泊坞窗图像时,例如official postgres image从Docker Hub禁用卷,它工作正常!

但是,当我enable the volumes失败.

我尝试了所有官方文件

在VM共享文件夹作为需要,并且具有full access到它也 共享文件夹的屏幕截图

在我的postgresql示例的情况下,它崩溃与以下 log

The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.
The database cluster will be initialized with locale "en_US.utf8".
The default database encoding has accordingly been set to "UTF8". …
Run Code Online (Sandbox Code Playgroud)

virtualization virtualbox docker docker-toolbox

5
推荐指数
1
解决办法
996
查看次数

Docker-compose工具箱的机密文件未正确安装

我正在尝试使用用于开发的秘密来组成堆栈,我在docker / secrets / FILE_NAME中使用本地文件,而我在Windows 10中使用了此文件,但是我正在努力使其在win7工具箱下工作。我收到一个错误:

Cannot create container for service db: 
invalid volume specification:
 'C:\project\docker\secrets\DB_USERNAME:/run/secrets/db-username:ro'
Run Code Online (Sandbox Code Playgroud)

我试图设置COMPOSE_CONVERT_WINDOWS_PATH,但是不幸的是,这没有任何改变。我将得到与true或false相同的输出。设置绝对路径也无济于事。

Docker撰写版本1.16.1的内部版本6d1ac219 Docker版本17.10.0-ce,的内部版本f4ffd25

我的docker-compose.yml

version: '3.3'

services:
  db:
    image: postgres
    volumes:
      - db-data:/var/lib/postgresql/data
    environment:
      - POSTGRES_PASSWORD_FILE=/run/secrets/db-password
      - POSTGRES_USER_FILE=/run/secrets/db-username
      - POSTGRES_DB_FILE=/run/secrets/db-name
    secrets:
      - db-username
      - db-password
      - db-name
  web:
    build: 
      context: ./docker/machines/django/
      args:
        buildno: 1
    command: python3 manage.py runserver 0.0.0.0:8000
    volumes:
      - ./Server:/Server
    ports:
      - "8000:8000"
    depends_on:
      - db
    secrets:
      - db-username
      - db-password
      - db-name

secrets:
  db-username:
    file: ./docker/secrets/DB_USERNAME
  db-password:
    file: ./docker/secrets/DB_PASSWORD
  db-name:
    file: …
Run Code Online (Sandbox Code Playgroud)

windows-7 docker docker-compose docker-toolbox docker-secrets

5
推荐指数
1
解决办法
459
查看次数

当数据在Docker容器内更改时,Create-react-app服务器不会重新编译

我目前正在尝试在docker中运行React应用程序。我正在运行npm start容器内部运行的create-react-app软件包中包含的脚本,并且正在使用绑定安装在主机中工作并反映容器中的更改。遗憾的是,即使文件确实发生了更改,react软件包附带的重新编译功能也无法在容器内部运行。所要抓住的是,我正在使用摘要工具箱。你们知道这可能是什么问题吗?为什么不重新编译?

我的文件结构如下。

project
|   .dockerignore
|   .gitignore
|   docker-compose.yml
|   Dockerfile
|   LICENSE
|   README.md
|
\---frontend
    +---nodemodules\*
    |   package-lock.json
    |   package.json
    |   README.md
    |
    +---public
    |       index.html
    |
    \---src
        |   index.js
        |
        \---container
                App.jsx
Run Code Online (Sandbox Code Playgroud)

Docker文件

FROM node:8.11.1

COPY . /usr/src/

WORKDIR /usr/src/frontend

ENV PATH /usr/src/frontend/node_modules/.bin:$PATH

RUN npm install -g create-react-app
RUN npm install

EXPOSE 3000

CMD [ "npm", "start" ]
Run Code Online (Sandbox Code Playgroud)

docker-compose.yml

version: "3.5"

services:
  react:
    build:
      context: .
      dockerfile: Dockerfile
    volumes:
      - "./frontend:/usr/src/frontend"
      - '/usr/src/frontend/node_modules'
    ports: …
Run Code Online (Sandbox Code Playgroud)

docker reactjs docker-compose docker-toolbox create-react-app

5
推荐指数
2
解决办法
1460
查看次数

Docker Toolbox Mac命令行和Kitematics失败

我已经使用图形安装程序(官方安装程序)和安装了新的Docker Toolbox应用程序brew cask install.

在这两种情况下,虚拟机都是正确创建的,但是在环境中似乎有些错误,因为当我尝试docker-machine在命令行上执行时,它会像这样失败:

$ docker-machine env default
open /Users/adeynack/.docker/machine/machines/default/ca.pem: no such file or directory
Run Code Online (Sandbox Code Playgroud)

当我尝试时Kitematics,它会像这样失败:

Kitematics失败了

我试过了Delete VM and retry setup,没有成功.欢迎任何见解或想法.

编辑:我已经在使用VirtualBox的测试版本5.0.3.

macos docker docker-toolbox

4
推荐指数
1
解决办法
1359
查看次数

Docker存储库服务器向HTTPS客户端提供了HTTP响应

我将Docker工具箱用于Windows,我正在尝试从本文档https://docs.docker.com/registry/deploying/运行私有Docker注册表

但这对我不起作用。之后的错误:

$ docker pull 192.168.99.100:5000/my-ubuntu
Run Code Online (Sandbox Code Playgroud)

错误

$ docker pull 192.168.99.100:5000/image
Using default tag: latest
Error response from daemon: Get https://192.168.99.100:5000/v2/: http: server gave HTTP response to HTTPS client
Run Code Online (Sandbox Code Playgroud)

我认为该错误是我的Docker客户端中的问题。

有关信息,这是我的码头工人信息

Containers: 6
 Running: 4
 Paused: 0
 Stopped: 2
Images: 19
Server Version: 17.06.0-ce
Storage Driver: aufs
 Root Dir: /mnt/sda1/var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 144
 Dirperm1 Supported: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs …
Run Code Online (Sandbox Code Playgroud)

windows docker docker-toolbox

4
推荐指数
8
解决办法
6200
查看次数

带有 Visual Studio 的 Docker 工具箱 - 未启用卷共享

我正在尝试使用 Visual studio 2017 为在 Linux 容器上运行的 .net core 2.0 Web 应用程序运行 docker 支持。我正在使用 win 7 操作系统的机器上工作,所以我必须使用带有 Virtual box 的 Docker 工具箱。我已经检查过这个问题:How to get docker toolbox to work with .net core 2.0 project,但是当尝试使用 VS 运行它时,我遇到了以下问题:

未启用卷共享。在 docker ce for windows 设置中启用卷共享

到目前为止,我知道 C:\Users 下安装了一个默认卷,因此我的项目文件应该复制到此文件夹下的某个位置,以防我不想安装任何其他卷。所以我把它们复制到那里。

当我检查虚拟盒子的设置时,文件夹似乎已共享:

虚拟盒子设置。

我什至可以使用命令行 cd 进入该文件夹,但仍然无法解决这个问题。对此有什么想法吗?

virtualbox visual-studio docker .net-core docker-toolbox

4
推荐指数
1
解决办法
8423
查看次数

rsync 无法识别 Windows 路径

我试图通过在 git bash 中运行 shell 脚本来在 Windows 7(带有 Oracle VM 的 Docker 工具箱)中构建一个 docker 容器,该脚本具有带有 rsync 的命令,如下所示:

rsync -a --exclude='*/node_modules' $PROJECT_PATH/project_name/src/ ./project_name/src
Run Code Online (Sandbox Code Playgroud)

和价值$PROJECT_PATH=/c/Users/yajnesh_rai/git

这是我在控制台中看到的:

ssh: Could not resolve hostname c: Name or service not known
rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(226) [Receiver=3.1.2]
Run Code Online (Sandbox Code Playgroud)

一些在线文档说使用正斜杠作为没有驱动器名称的路径,我尝试了这种方式

$PROJECT_PATH=\\Users\\yajnesh_rai\\git
Run Code Online (Sandbox Code Playgroud)

这使得 rsync 工作,但无法复制文件,如下所示:

\Users\yajnesh_rai\git/project_name/src/folder_name/file_name: warning: directory does not exist.
Run Code Online (Sandbox Code Playgroud)

我按照本文中提到的步骤在 Windows 上安装了 rsync: https: //blog.tiger-workshop.com/add-rsync-to-git-bash-for-windows/

任何解决该问题的帮助都将受到赞赏!提前致谢

rsync docker boot2docker docker-compose docker-toolbox

4
推荐指数
1
解决办法
4863
查看次数

找不到该命令,因为PATH环境变量中不包含“ / snap / bin”

当我尝试运行git-all-secrets时,我得到了Dockerfile:命令未找到,这是包含正确信息的命令

这是问题的一个例子

root@momo22:/home/momo/git-all-secrets# docker run -it abhartiya/tools_gitallsecrets -token=9a8b60a10cf683f238e05 -org=bugcrwod
Command 'docker' is available in '/snap/bin/docker'
The command could not be located because '/snap/bin' is not included in the PATH environment variable.
docker: command not found
root@momo22:/home/momo/git-all-secrets# 
Run Code Online (Sandbox Code Playgroud)

docker docker-toolbox

4
推荐指数
3
解决办法
3181
查看次数