Tag: traefik

与docker后端Traefik导致糟糕的度假

我build立了一个debian服务器,我安装了docker和docker-compose。 我在我的sudo用户的家中创build了一个具有以下层级的文件夹: ~/docker-project – docker-compose.yml – /traefik/traefik.toml 我做一个docker-compose up -d一个-D所有东西都开始我可以达到traefik.mydomain.com有其他子域一样工作SSL证书。 但是,如果我去任何我的子域到达我dockerized的Web服务,我得到一个坏的网关消息在我的浏览器。 如果我去我的服务器IP地址,并把正确的端口,我看到我的web服务工作完美。 所以我认为我configurationdocker / traefik关系时犯了一个错误,但是我找不到在哪里。 这是我的traefik.toml : defaultEntryPoints = ["http", "https"] ################################################################ # Web configuration backend ################################################################ [web] address = ":8080" [web.auth.basic] # User: user | Password: password users = ["user:hashedpassword"] ################################################################ # Entry-points configuration ################################################################ [entryPoints] [entryPoints.http] address = ":80" [entryPoints.http.redirect] entryPoint = "https" […]

编辑Docker容器内的文件

我如何编辑在主机上下载的Docker容器中的configuration文件? 我正在使用这个教程,但我不知道在哪里可以find并编辑traefik.toml文件

docker工MariaDb – 远程访问

我试图设置通过Traefik远程访问MariaDb: MariaDB docker-compose.yml version: "2" services: jpz-mariadb: image: mariadb:latest environment: – MYSQL_ROOT_PASSWORD=root – MYSQL_DATABASE=database – MYSQL_USER=user – MYSQL_PASSWORD=pass networks: – web volumes: – ./db:/docker-entrypoint-initdb.d – jpz-mariadb:/var/lib/mysql:nocopy # I want to manage volumes manually. labels: – 'traefik.backend=jpz-mariadb' – 'traefik.frontend.rule=Host:mariadb.localtest.me' jpz-pma: image: phpmyadmin/phpmyadmin environment: PMA_HOST: jpz-mariadb PHP_UPLOAD_MAX_FILESIZE: 1G PHP_MAX_INPUT_VARS: 1G networks: – web labels: – 'traefik.backend=jpz-pma' – […]

Traefik:让我们encryption+其他证书

我有3个节点群,我希望使用TRAEFIK与Let'sEncryp和我自己的证书由公司www.tbs-internet.com生成。 可能吗? 目前它与Let's Encrypt一起使用,但不与我的其他证书一起使用。 使用configuration文件,我在Traefik的日志中有以下错误: time="2017-07-05T12:07:57Z" level=info msg="Preparing server http &{Network: Address::80 TLS:<nil> Redirect:<nil> Auth:0xc420339360 Compress:false}" time="2017-07-05T12:07:57Z" level=info msg="Preparing server https &{Network: Address::443 TLS:0xc4204fe600 Redirect:<nil> Auth:0xc4203396c0 Compress:false}" time="2017-07-05T12:07:57Z" level=info msg="Starting server on :80" time="2017-07-05T12:07:57Z" level=error msg="Error creating TLS config: tls: failed to parse private key" time="2017-07-05T12:07:57Z" level=fatal msg="Error preparing server: tls: failed to parse private […]

Traefik http使用docker标签redirect到https

我在swarm模式下使用traefik作为docker服务。 Traefik接受一些标签来configuration它将如何处理docker容器并为其创build代理。 我可以在traefik.frontend.entryPoints=https服务中定义一个标签traefik.frontend.entryPoints=https来覆盖Traefik的defaultEntryPoints ,但是用户需要使用https进行请求。 我想公开入口点, http和https ,但是如果用户使用http发出请求,Traefik将其redirect到https 。 是否有可能使用entryPoints.http.redirect作为docker标签来强制redirect某些特定的服务? 我不想将它设置在traefik.toml文件中,因为它将应用于所有服务,我只想要一些服务,而不是所有的服务。 问候

不能用ssl启动Docker的traefik容器

我试图用ssl运行traefik – 在一个自签名证书上。 这是我的docker-compose.yml文件 traefik: image: traefik restart: unless-stopped command: -c /dev/null –web –docker –logLevel=INFO –defaultEntryPoints='https' –entryPoints="Name:https Address::443 TLS:/certs/cert.pem,/certs/key.pem" –entryPoints="Name:http Address::80 Redirect.EntryPoint:https" ports: – '80:80' – '443:443' – '8080:8080' volumes: – /var/run/docker.sock:/var/run/docker.sock – ./certs:/certs/ 运行docker-compose up – 我在日志中得到这个错误: level=error msg="Error creating TLS config: bad TLS Certificate KeyFile format, expected a path" 之后: level=fatal msg="Error preparing […]

docker群模式的反向代理

我有一个群集,一个经理和一个工人,我有多个服务这些正在运行这个群集不同的端口。 所以我想要将多个域映射到这些服务。 像nginx虚拟主机一样 例; x.com => xservice:8080 y.com => yservice:8081 z.com => zservice:8082 我听说https://traefik.io/解决了这个问题。 但我不喜欢这个。 这个问题的最佳做法是什么?

是否有可能将Traefik限制到当前(docker-compose)堆栈?

目的 我有一台运行Rancher的服务器(Docker)。 在那个服务器上,我有几个不相关的堆栈。 我想让Traefik成为这个堆栈的主要交互点。 并使其负载平衡/根据path将请求代理到不同的容器。 我想让它将/api的stream量发送到后端server服务。 并发送/到frontend服务的stream量。 当前状态 这里是我docker-compose.yml的瘦身版本,只显示相关的服务: yml version: '2' services: server: image: server labels: – "traefik.frontend.rule=PathPrefix:/api" – "traefik.enable=true" – "traefik.port=80" frontend: image: frontend labels: – "traefik.frontend.rule=PathPrefix:/" – "traefik.enable=true" – "traefik.port=80" proxy: image: traefik:v1.4 command: –web –accessLog –rancher –rancher.exposedbydefault=false –rancher.metadata=true volumes: – /dev/null:/traefik.toml 然后使用监听公共端口的Rancher负载均衡器,将请求redirect到app1.example.com到我的proxy服务。 然后它将请求并根据path将stream量redirect到两个容器中的每一个。 我还将stream量redirect到traefik.app1.example.com到相同的proxy服务,到端口8080访问Web UI。 如果我只有一个堆栈,它的工作原理。 问题 如果我添加另一个堆栈(或者如果我复制了堆栈)并使用Traefik标签获得更多服务, app1的proxy将从app2的服务和任何声明Traefik标签的其他堆栈读取标签。 然后,在app1的proxy的Web UI中,我可以看到来自所有不同堆栈的所有后端。 […]

Traefik https不完全安全

我尝试使用Docker容器configuration我的服务器与Traefik。 我configuration了Traefik,所以它的工作,我有仪表板页面。 事情是我想有我自己的GitLab服务器。 我拉了GitLab泊坞窗图像,并创build了一个docker-compose文件。 即使GitLab容器需要很长时间才能启动,它似乎工作。 我能够从Traefik仪表板看到Gitlab后端。 问题是,当我试图去Gitlab的地址,我的浏览器(Firefox和Chrome)告诉我,我的网页不完全安全。 这是确切的错误: Connection is not secure. Parts of this page are not secure (such as images) 我找不到为什么我得到这个错误,我的configuration是非常基本的。 这是我的Traefik.tomlconfiguration: defaultEntryPoints = ["http", "https"] # Web section is for the dashboard interface [web] address = ":8080" [web.auth.basic] users = ["admin:$apr1$TF1rGQz9$OdtHJ15PT6LGWObE4tXuK0"] # entryPoints section configures the addresses that Traefik and the proxied […]

Traefik与自签名证书

我有一个生成ACME证书的Traefik反向代理,我想在我的docker集装箱上启用SSL。 在我的容器中,我有一个自签名证书,但是Traefik拒绝连接到它。 我的docker-compose.yml : version: "2" services: magento: image: lavoweb/php-5.6 expose: – 80 – 443 volumes: – ./data/src/:/var/www/html labels: – "traefik.port=80" – "traefik.backend=swarm" – "traefik.protocol=https" – "traefik.frontend.rule=Host:1.swarm.lavoweb.net" – "traefik.docker.network=web" networks: – web – internal networks: web: external: name: web internal: driver: bridge 我得到这个错误: 内部服务器错误