小编Sve*_*eur的帖子

Docker - 无法在现有文件上挂载卷,文件存在

我正在尝试在Docker中为我的应用程序构建一个数据容器.我运行此命令以显示一些卷:

docker run --name svenv.nl-data -v /etc/environment -v /etc/ssl/certs -v /var/lib/mysql -d svenv/svenv.nl-data
Run Code Online (Sandbox Code Playgroud)

问题是我从这个命令得到这个错误:

Error response from daemon: cannot mount volume over existing file, file exists /var/lib/docker/aufs/mnt/aefa66cf55357e2e1e4f84c2d4d2d03fa2375c8900fe3c0e1e6bc02f13e54d05/etc/environment
Run Code Online (Sandbox Code Playgroud)

如果我正确理解Docker文档.支持为单个文件创建卷.所以我不明白为什么我会收到这个错误.

有人可以向我解释这个吗?我在Ubuntu 14.04上运行Docker 1.9.1.

ubuntu volumes docker

13
推荐指数
2
解决办法
2万
查看次数

Cordova iOS Cross原始请求仅支持HTTP

我正在构建一个iOS应用程序,最近将cordova-ios升级到4.1.0并开始使用:cordova-plugin-wkwebview-engine.

问题是,现在我Cross origin requests are only supported for HTTP在尝试加载依赖项时收到错误消息,因此应用程序将无法启动.

它试图在file://上加载systemjs依赖项,但我包含在我的config.js中.

我不知道如何解决这个问题.有没有人有这个bevaviour的经验?

cordova版本:6.1,0 cordova ios版本:4.1.0

相关的config.xml位:

<access origin="*" />
<feature name="CDVWKWebViewEngine">
  <param name="ios-package" value="CDVWKWebViewEngine" />
</feature>

<preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />
Run Code Online (Sandbox Code Playgroud)

whitelist ios cordova

6
推荐指数
5
解决办法
2829
查看次数

Docker 在构建期间发布端口

我正在使用 Docker 构建 nginx 环境。我想知道是否可以在构建期间公开发布端口(80、443),以便 LetsEncrypt 可以在构建时运行(它需要对(中间)容器中的服务器进行网络访问)。

这可能吗?

build docker lets-encrypt

6
推荐指数
1
解决办法
1904
查看次数

Aurelia在重复之前附加了触发器

我正在尝试在Aurelia中设置某些逻辑,这些逻辑会影响由repeat.for循环的DOM节点.如果我正确理解文档,那么视图的附加()回调在DOM渲染之后被调用,并且是放置这种逻辑的地方.

问题是attach()回调似乎在repeat.for绑定完成之前被触发,只留下部分渲染的dom.

为了说明问题:

我有一个自定义元素包含:

<template>
    <ul>
      <li repeat.for="thing of things"></li>
    </ul>
</template>
Run Code Online (Sandbox Code Playgroud)

一旦调用了attach(),我希望有一个包含所有li元素的渲染DOM.简单地转储dom显示为空

如何实现一个可以访问那些li节点的回调?

javascript templates aurelia

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

docker-compose 没有将主机名添加到 /etc/hosts

我正在研究一个 docker-compose 配置,它应该启动一个连接到 dnsmasq 容器的 openvpn 容器。openvpn 服务器应该会自动发现 dnsmasq 容器并将其用作 dns 服务器。发现是通过在 /etc/hosts 文件中搜索条目“dnsmasq”来完成的。

我有以下 docker-compose.yml 文件:

version: '2'
services:
  data:
    build: ./
  dnsmasq:
    cap_add:
      - NET_ADMIN
    hostname: dnsmasq
    image: <dnsmasq image>
    ports:
      - 53:53/udp
    restart: always
  openvpn:
    cap_add:
      - NET_ADMIN
    depends_on:
      - data
      - dnsmasq
    image: <openvpn image>
    ports:
      - 1194:1194/udp
    restart: always
    volumes_from:
      - data
Run Code Online (Sandbox Code Playgroud)

我已将“dnsmasq”指定为 dnsmasq 容器的主机名,并希望它出现在 openvpn 容器的“/etc/hosts”中。这似乎不会发生。

这是来自 openvpn 容器内的 /etc/hosts 的转储:

openvpn_1  | 127.0.0.1  localhost
openvpn_1  | ::1    localhost ip6-localhost ip6-loopback
openvpn_1  | fe00::0 …
Run Code Online (Sandbox Code Playgroud)

networking dnsmasq openvpn docker docker-compose

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

Ansible和docker:本地构建映像被拉出并导致失败

我正在使用Ansible为我的服务器配置使我的网站工作所需的任何东西.目标是安装一个基本系统并为其提供运行应用程序的docker容器(目前它只是一个应用程序).

我面临的问题是我的docker镜像不是在dockerhub或其他东西托管.相反,它是由Ansible任务构建的.但是,当我试图运行构建的图像时,Ansible试图拉它(这是不可能的)然后死掉.

这就是剧本部分的样子:

- name: check or build image
  docker_image:
    path=/srv/svenv.nl-docker
    name='svenv/svenv.nl'
    state=build

- name: start svenv/svenv.nl container
  docker:
    name: svenv.nl
    volumes:
    - /srv/svenv.nl-docker/data/var/lib/mysql/:/var/lib/mysql/
    - /srv/svenv.nl-docker/data/svenv.nl/svenv/media:/svenv.nl/svenv/media
    ports:
    - 80:80
    - 3306:3306
    image: svenv/svenv.nl
Run Code Online (Sandbox Code Playgroud)

当我运行它时,失败表明svenv/svenv.nl从存储库中被拉出,它不存在,所以它崩溃了:

failed: [vps02.svenv.nl] => {"changes": ["{\"status\":\"Pulling repository svenv/svenv.nl\"}\r\n", "{\"errorDetail\":{\"message\":\"Error: image svenv/svenv.nl:latest not found\"},\"error\":\"Error: image svenv/svenv.nl:latest not found\"}\r\n"], "failed": true, "status": ""}
msg: Unrecognized status from pull.

FATAL: all hosts have already failed -- aborting
Run Code Online (Sandbox Code Playgroud)

我的问题是:

我怎么能够

  • 建立一个本地码头
  • 然后将其作为容器启动而不拉动它

unix linux ansible docker

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