{"action":"created","issue":{"url":"https://api.github.com/repos/containous/traefik/issues/4342","repository_url":"https://api.github.com/repos/containous/traefik","labels_url":"https://api.github.com/repos/containous/traefik/issues/4342/labels{/name}","comments_url":"https://api.github.com/repos/containous/traefik/issues/4342/comments","events_url":"https://api.github.com/repos/containous/traefik/issues/4342/events","html_url":"https://github.com/containous/traefik/issues/4342","id":394592459,"node_id":"MDU6SXNzdWUzOTQ1OTI0NTk=","number":4342,"title":"Running two traefik instances in two docker swarm cluster","user":{"login":"v7lin","id":8845083,"node_id":"MDQ6VXNlcjg4NDUwODM=","avatar_url":"https://avatars3.githubusercontent.com/u/8845083?v=4","gravatar_id":"","url":"https://api.github.com/users/v7lin","html_url":"https://github.com/v7lin","followers_url":"https://api.github.com/users/v7lin/followers","following_url":"https://api.github.com/users/v7lin/following{/other_user}","gists_url":"https://api.github.com/users/v7lin/gists{/gist_id}","starred_url":"https://api.github.com/users/v7lin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/v7lin/subscriptions","organizations_url":"https://api.github.com/users/v7lin/orgs","repos_url":"https://api.github.com/users/v7lin/repos","events_url":"https://api.github.com/users/v7lin/events{/privacy}","received_events_url":"https://api.github.com/users/v7lin/received_events","type":"User","site_admin":false},"labels":[{"id":587491203,"node_id":"MDU6TGFiZWw1ODc0OTEyMDM=","url":"https://api.github.com/repos/containous/traefik/labels/area/acme","name":"area/acme","color":"bfdadc","default":false},{"id":626678146,"node_id":"MDU6TGFiZWw2MjY2NzgxNDY=","url":"https://api.github.com/repos/containous/traefik/labels/area/provider/docker/swarm","name":"area/provider/docker/swarm","color":"d4c5f9","default":false},{"id":617829381,"node_id":"MDU6TGFiZWw2MTc4MjkzODE=","url":"https://api.github.com/repos/containous/traefik/labels/contributor/waiting-for-feedback","name":"contributor/waiting-for-feedback","color":"0052cc","default":false},{"id":259872491,"node_id":"MDU6TGFiZWwyNTk4NzI0OTE=","url":"https://api.github.com/repos/containous/traefik/labels/kind/question","name":"kind/question","color":"cc317c","default":false}],"state":"open","locked":false,"assignee":{"login":"jlevesy","id":453265,"node_id":"MDQ6VXNlcjQ1MzI2NQ==","avatar_url":"https://avatars1.githubusercontent.com/u/453265?v=4","gravatar_id":"","url":"https://api.github.com/users/jlevesy","html_url":"https://github.com/jlevesy","followers_url":"https://api.github.com/users/jlevesy/followers","following_url":"https://api.github.com/users/jlevesy/following{/other_user}","gists_url":"https://api.github.com/users/jlevesy/gists{/gist_id}","starred_url":"https://api.github.com/users/jlevesy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jlevesy/subscriptions","organizations_url":"https://api.github.com/users/jlevesy/orgs","repos_url":"https://api.github.com/users/jlevesy/repos","events_url":"https://api.github.com/users/jlevesy/events{/privacy}","received_events_url":"https://api.github.com/users/jlevesy/received_events","type":"User","site_admin":false},"assignees":[{"login":"jlevesy","id":453265,"node_id":"MDQ6VXNlcjQ1MzI2NQ==","avatar_url":"https://avatars1.githubusercontent.com/u/453265?v=4","gravatar_id":"","url":"https://api.github.com/users/jlevesy","html_url":"https://github.com/jlevesy","followers_url":"https://api.github.com/users/jlevesy/followers","following_url":"https://api.github.com/users/jlevesy/following{/other_user}","gists_url":"https://api.github.com/users/jlevesy/gists{/gist_id}","starred_url":"https://api.github.com/users/jlevesy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jlevesy/subscriptions","organizations_url":"https://api.github.com/users/jlevesy/orgs","repos_url":"https://api.github.com/users/jlevesy/repos","events_url":"https://api.github.com/users/jlevesy/events{/privacy}","received_events_url":"https://api.github.com/users/jlevesy/received_events","type":"User","site_admin":false}],"milestone":null,"comments":5,"created_at":"2018-12-28T09:34:14Z","updated_at":"2019-01-03T10:16:52Z","closed_at":null,"author_association":"NONE","body":"<!--\r\nDO NOT FILE ISSUES FOR GENERAL SUPPORT QUESTIONS.\r\n\r\nThe issue tracker is for reporting bugs and feature requests only.\r\nFor end-user related support questions, please refer to one of the following:\r\n\r\n- Stack Overflow (using the \"traefik\" tag): https://stackoverflow.com/questions/tagged/traefik\r\n- the Traefik community Slack channel: https://slack.traefik.io\r\n\r\n-->\r\n\r\n\r\n### Do you want to request a *feature* or report a *bug*?\r\n\r\nBug\r\n\r\n### What did you do?\r\n\r\n<!--\r\n\r\nHOW TO WRITE A GOOD BUG REPORT?\r\n\r\n- Respect the issue template as much as possible.\r\n- If possible, use the command `traefik bug`. See https://www.youtube.com/watch?v=Lyz62L8m93I.\r\n- The title should be short and descriptive.\r\n- Explain the conditions which led you to report this issue: the context.\r\n- The context should lead to something, an idea or a problem that you’re facing.\r\n- Remain clear and concise.\r\n- Format your messages to help the reader focus on what matters and understand the structure of your message, use Markdown syntax https://help.github.com/articles/github-flavored-markdown\r\n\r\n-->\r\n\r\nclient -> traefik -> frp -> traefik -> demo service\r\n\r\n### What did you expect to see?\r\n\r\nnginx index.html\r\n\r\n### What did you see instead?\r\n\r\nvisit http://demo.haitanyule.com -> nginx index.html\r\nvisit https://demo.haitanyule.com -> Bad Gateway\r\n\r\n### Output of `traefik version`: (_What version of Traefik are you using?_)\r\n\r\n<!--\r\nFor the Traefik Docker image:\r\n    docker run [IMAGE] version\r\n    ex: docker run traefik version\r\n\r\nFor the alpine Traefik Docker image:\r\n    docker run [IMAGE] traefik version\r\n    ex: docker run traefik traefik version\r\n-->\r\n\r\n```\r\n  traefik:\r\n    image: traefik:1.7.6\r\n```\r\n\r\n### What is your environment & configuration (arguments, toml, provider, platform, ...)?\r\n\r\ntraefik for centos 7.6 server\r\n```\r\n  # 暂不支持设置时区\r\n  traefik:\r\n    image: traefik:1.7.6\r\n    ports:\r\n      - 80:80\r\n      - 443:443\r\n#      - 8080:8080\r\n    networks:\r\n      - net # traefik_net\r\n    volumes:\r\n      - /var/run/docker.sock:/var/run/docker.sock\r\n      - ../dev-ops-repo/traefik/acme:/etc/traefik/acme\r\n#    environment:\r\n#      - TZ=${TIME_ZONE:-Asia/Shanghai}\r\n    command:\r\n      - \"--api\"\r\n      - \"--entrypoints=Name:http Address::80\"\r\n      - \"--entrypoints=Name:https Address::443 TLS\"\r\n      - \"--defaultentrypoints=http,https\"\r\n      - \"--acme\"\r\n      - \"--acme.storage=/etc/traefik/acme/acme.json\"\r\n      - \"--acme.entryPoint=https\"\r\n      - \"--acme.httpChallenge.entryPoint=http\"\r\n      - \"--acme.onHostRule=true\"\r\n      - \"--acme.onDemand=false\"\r\n      - \"--acme.email=${TRAEFIK_ACME_EMAIL:-foobar@example.com}\"\r\n      - \"--docker\"\r\n      - \"--docker.exposedbydefault=false\"\r\n      - \"--docker.swarmMode\"\r\n      - \"--docker.domain=${SERVER_DOMAIN:-localhost}\"\r\n      - \"--docker.watch\"\r\n    deploy:\r\n      mode: global\r\n      placement:\r\n        constraints:\r\n          - node.role == manager # 部署位置，只在管理节点部署\r\n      update_config:\r\n        parallelism: 1\r\n        delay: 10s\r\n      restart_policy:\r\n        condition: on-failure\r\n      labels:\r\n        - \"traefik.enable=true\"\r\n        - \"traefik.docker.network=traefik_net\"\r\n        - \"traefik.port=8080\"\r\n        - \"traefik.frontend.entryPoints=http\"\r\n        - \"traefik.frontend.rule=Host:traefik.${SERVER_DOMAIN:-localhost}\"\r\n        - \"traefik.frontend.auth.basic=${TRAEFIK_AUTH_BASIC}\"\r\n```\r\n\r\nfrps for centos 7.6 server\r\n```\r\n  # bind: frp.${SERVER_DOMAIN:-localhost}\r\n  frps:\r\n    image: v7lin/frps:0.22.0\r\n    ports:\r\n#      - 80 # vhost - http\r\n#      - 443 # vhost - https\r\n#      - 6000\r\n      - 7000:7000 # bind\r\n#      - 7500 # dashboard\r\n    networks:\r\n      - traefik_net\r\n    environment:\r\n      - TZ=${TIME_ZONE:-Asia/Shanghai}\r\n    command:\r\n      - \"--log_level=info\"\r\n      - \"--token=${FRP_TOKEN:-xyzfrpsxyz}\"\r\n      - \"--dashboard_port=7500\" # 没有默认值\r\n      - \"--dashboard_user=${FRP_DASHBOARD_USER:-frps}\"\r\n      - \"--dashboard_pwd=${FRP_DASHBOARD_PWD:-xyzfrpsxyz}\"\r\n      - \"--vhost_http_port=80\"\r\n      - \"--vhost_https_port=443\"\r\n      - \"--subdomain_host=frp.${SERVER_DOMAIN:-localhost}\"\r\n    deploy:\r\n      mode: global\r\n      placement:\r\n        constraints:\r\n          - node.role == manager\r\n      update_config:\r\n        parallelism: 1\r\n        delay: 10s\r\n      restart_policy:\r\n        condition: on-failure\r\n      labels:\r\n        - \"traefik.enable=true\"\r\n        - \"traefik.docker.network=traefik_net\"\r\n        - \"traefik.vhttp.port=80\"\r\n        - \"traefik.vhttp.frontend.entryPoints=http\"\r\n        - \"traefik.vhttp.frontend.rule=HostRegexp:{subdomain:discuz|demo|test}.${SERVER_DOMAIN:-localhost},{subdomain:[a-z]+}.frpc.${SERVER_DOMAIN:-localhost},{subdomain:[a-z]+}.frp.${SERVER_DOMAIN:-localhost}\"\r\n        - \"traefik.vhttps.port=443\"\r\n        - \"traefik.vhttps.frontend.entryPoints=https\"\r\n        - \"traefik.vhttps.frontend.rule=HostRegexp:{subdomain:discuz|demo|test}.${SERVER_DOMAIN:-localhost},{subdomain:[a-z]+}.frpc.${SERVER_DOMAIN:-localhost},{subdomain:[a-z]+}.frp.${SERVER_DOMAIN:-localhost}\"\r\n        - \"traefik.dashboard.port=7500\"\r\n        - \"traefik.dashboard.frontend.entryPoints=http\"\r\n        - \"traefik.dashboard.frontend.rule=Host:frps.${SERVER_DOMAIN:-localhost}\"\r\n```\r\n\r\ntraefik & frpc for mac mini\r\n```\r\n  # 暂不支持设置时区\r\n  traefik:\r\n    image: traefik:1.7.6\r\n#    ports:\r\n#      - 80:80\r\n#      - 443:443\r\n#      - 8080:8080\r\n    networks:\r\n      - net # traefik_net\r\n      - frpc\r\n    volumes:\r\n      - /var/run/docker.sock:/var/run/docker.sock\r\n      - ../dev-ops-repo/traefik/acme:/etc/traefik/acme\r\n#    environment:\r\n#      - TZ=${TIME_ZONE:-Asia/Shanghai}\r\n    command:\r\n      - \"--api\"\r\n      - \"--entrypoints=Name:http Address::80\"\r\n      - \"--entrypoints=Name:https Address::443 TLS\"\r\n      - \"--defaultentrypoints=http,https\"\r\n      - \"--acme\"\r\n      - \"--acme.storage=/etc/traefik/acme/acme.json\"\r\n      - \"--acme.entryPoint=https\"\r\n      - \"--acme.httpChallenge.entryPoint=http\"\r\n      - \"--acme.onHostRule=true\"\r\n      - \"--acme.onDemand=false\"\r\n      - \"--acme.email=${TRAEFIK_ACME_EMAIL:-foobar@example.com}\"\r\n      - \"--docker\"\r\n      - \"--docker.exposedbydefault=false\"\r\n      - \"--docker.swarmMode\"\r\n      - \"--docker.domain=${SERVER_DOMAIN:-localhost}\"\r\n      - \"--docker.watch\"\r\n    deploy:\r\n      mode: global\r\n      placement:\r\n        constraints:\r\n          - node.role == manager\r\n      update_config:\r\n        parallelism: 1\r\n        delay: 10s\r\n      restart_policy:\r\n        condition: on-failure\r\n      labels:\r\n        - \"traefik.enable=true\"\r\n        - \"traefik.docker.network=traefik_net\"\r\n        - \"traefik.port=8080\"\r\n        - \"traefik.frontend.entryPoints=http\"\r\n        - \"traefik.frontend.rule=Host:traefik.frpc.${SERVER_DOMAIN:-localhost}\"\r\n        - \"traefik.frontend.auth.basic=${TRAEFIK_AUTH_BASIC}\"\r\n\r\n  traefik-frpc-http:\r\n    image: v7lin/frpc:0.22.0\r\n    networks:\r\n      - frpc\r\n    environment:\r\n      - TZ=${TIME_ZONE:-Asia/Shanghai}\r\n    command:\r\n      - \"http\"\r\n      - \"--proxy_name=traefik-frpc-http\"\r\n      - \"--local_ip=traefik\"\r\n      - \"--local_port=80\"\r\n      - \"--custom_domain=traefik.frpc.${SERVER_DOMAIN:-localhost},portainer.frpc.${SERVER_DOMAIN:-localhost},discuz.${SERVER_DOMAIN:-localhost},demo.${SERVER_DOMAIN:-localhost}\"\r\n      - \"--server_addr=${FRP_SERVER_DOMAIN:-host.docker.internal}:7000\"\r\n      - \"--token=${FRP_TOKEN:-xyzfrpsxyz}\"\r\n#      - \"--log_level=info\"\r\n    depends_on:\r\n      - traefik\r\n    deploy:\r\n      mode: global\r\n      placement:\r\n        constraints:\r\n          - node.role == manager\r\n      update_config:\r\n        parallelism: 1\r\n        delay: 10s\r\n      restart_policy:\r\n        condition: on-failure\r\n      labels:\r\n        - \"traefik.enable=false\"\r\n\r\n  traefik-frpc-https:\r\n    image: v7lin/frpc:0.22.0\r\n    networks:\r\n      - frpc\r\n    environment:\r\n      - TZ=${TIME_ZONE:-Asia/Shanghai}\r\n    command:\r\n      - \"https\"\r\n      - \"--proxy_name=traefik-frpc-https\"\r\n      - \"--local_ip=traefik\"\r\n      - \"--local_port=443\"\r\n      - \"--custom_domain=discuz.${SERVER_DOMAIN:-localhost},demo.${SERVER_DOMAIN:-localhost}\"\r\n      - \"--server_addr=${FRP_SERVER_DOMAIN:-host.docker.internal}:7000\"\r\n      - \"--token=${FRP_TOKEN:-xyzfrpsxyz}\"\r\n#      - \"--log_level=info\"\r\n    depends_on:\r\n      - traefik\r\n    deploy:\r\n      mode: global\r\n      placement:\r\n        constraints:\r\n          - node.role == manager\r\n      update_config:\r\n        parallelism: 1\r\n        delay: 10s\r\n      restart_policy:\r\n        condition: on-failure\r\n      labels:\r\n        - \"traefik.enable=false\"\r\n```\r\n\r\ndemo for mac mini\r\n```\r\n  demo:\r\n    image: nginx:1.15.8-alpine\r\n#    ports:\r\n#      - 80\r\n    networks:\r\n      - traefik_net\r\n    environment:\r\n      - TZ=${TIME_ZONE:-Asia/Shanghai}\r\n    deploy:\r\n      replicas: 2\r\n      update_config:\r\n        parallelism: 1\r\n        delay: 10s\r\n      restart_policy:\r\n        condition: on-failure\r\n      labels:\r\n        - \"traefik.enable=true\"\r\n        - \"traefik.docker.network=traefik_net\"\r\n        - \"traefik.port=80\"\r\n#        - \"traefik.frontend.redirect.entryPoint=https\"\r\n        - \"traefik.frontend.rule=Host:demo.${SERVER_DOMAIN:-localhost}\"\r\n```\r\n\r\n<!--\r\nAdd more configuration information here.\r\n-->\r\n\r\n\r\n### If applicable, please paste the log output in DEBUG level (`--logLevel=DEBUG` switch)\r\n\r\nmac mini traefik logs\r\n``` \r\ntime=\"2018-12-28T09:02:45Z\" level=error msg=\"Unable to obtain ACME certificate for domains \\\"demo.haitanyule.com\\\" detected thanks to rule \\\"Host:demo.haitanyule.com\\\" : unable to generate a certificate for the domains [demo.haitanyule.com]: acme: Error -> One or more domains had a problem:\\n[demo.haitanyule.com] acme: Error 403 - urn:ietf:params:acme:error:unauthorized - Invalid response from http://demo.haitanyule.com/.well-known/acme-challenge/c1JF-BRD9NCgvNMhmpeLyu6tYB88mQkx7VBXRTtV45Y [47.254.16.15]: 404\\n\"\r\n```\r\n"},"comment":{"url":"https://api.github.com/repos/containous/traefik/issues/comments/451102917","html_url":"https://github.com/containous/traefik/issues/4342#issuecomment-451102917","issue_url":"https://api.github.com/repos/containous/traefik/issues/4342","id":451102917,"node_id":"MDEyOklzc3VlQ29tbWVudDQ1MTEwMjkxNw==","user":{"login":"jlevesy","id":453265,"node_id":"MDQ6VXNlcjQ1MzI2NQ==","avatar_url":"https://avatars1.githubusercontent.com/u/453265?v=4","gravatar_id":"","url":"https://api.github.com/users/jlevesy","html_url":"https://github.com/jlevesy","followers_url":"https://api.github.com/users/jlevesy/followers","following_url":"https://api.github.com/users/jlevesy/following{/other_user}","gists_url":"https://api.github.com/users/jlevesy/gists{/gist_id}","starred_url":"https://api.github.com/users/jlevesy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jlevesy/subscriptions","organizations_url":"https://api.github.com/users/jlevesy/orgs","repos_url":"https://api.github.com/users/jlevesy/repos","events_url":"https://api.github.com/users/jlevesy/events{/privacy}","received_events_url":"https://api.github.com/users/jlevesy/received_events","type":"User","site_admin":false},"created_at":"2019-01-03T10:16:52Z","updated_at":"2019-01-03T10:16:52Z","author_association":"NONE","body":"> then traefik on Mac which will get certificates from Let's Encrypt\r\n\r\nHmm, are you sure that this Traefik instance is able to pass any of the Let's Encrypt challenge ? Can you check the logs ?  If not it will fallback to a self signed certificate which is invalid so the Traefik(centos) instance will not be able to forward the request. \r\n\r\nYou can bypass certificate validation for a specific backend by enabling `insecureSkipVerify` (Label `traefik.<segment_name>.frontend.auth.forward.tls.insecureSkipVerify=true`) on it, it will then accept  aninvalid certificate, but this not a good solution from a security point of view."}}
{"actor":{"display_login":"jlevesy"}}