构建从VSTS到Azure容器服务的CI / CD管道我遇到了挂载traefik.toml和docker.sock文件的问题 .
部署使用SSH隧道创建文件夹/ Deploy /并复制docker-compose.yml和traefik.toml . 文件在那里,容器被旋转 . 但是没有由traefik处理,因为它没有“看到”容器 .
traefik教程显示我们可以在_1268946中安装类似的东西:
version: '2'
services:
proxy:
build:
context: .
dockerfile: /Traefik/dockerfile
restart: always
command: --web --docker --docker.domain=docker.localhost --logLevel=DEBUG
networks:
- internal
ports:
- "80:80"
- "8080:8080"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /dev/null:/traefik.toml
这在我的Windows 10机器上运行完全正常,运行docker 17.09.0-ce但是当部署到Azure-Container-Service时,我收到以下错误:
ERROR: Named volume "\var\run\docker.sock:/var/run/docker.sock:rw" is used in service "proxy" but no declaration was found in the volumes section.
https://github.com/docker/compose/issues/3073选择额外的点( . )来表示它是到主机卷的映射 . 尝试过它,没有错误,但它实际上没有挂载 .
"Mounts": [
{
"Type": "bind",
"Source": "/home/dutchitworks/deploy/.\\var\\run\\docker.sock",
"Destination": "/var/run/docker.sock",
"Mode": "rw",
"RW": true,
"Propagation": "rprivate"
},
{
"Type": "bind",
"Source": "/home/dutchitworks/deploy/.\\dev\\null",
"Destination": "/traefik.toml",
"Mode": "rw",
"RW": true,
"Propagation": "rprivate"
}
],
它添加了/ home / dutchitworks / deploy / . 来自某个地方......
有关如何正确映射traefik.toml的任何想法都会受到欢迎......