thingsboard集群docker swarm部署报getsockopt failed strangely: Operation not permitted
生活随笔
收集整理的這篇文章主要介紹了
thingsboard集群docker swarm部署报getsockopt failed strangely: Operation not permitted
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
thingsboard的集群部署通過docker-compose方式部署時沒有出現任何問題,但是使用portainer(docker swarm)方式進行部署時haproxy服務報"getsockopt failed strangely: Operation not permitted"錯誤信息,具體哪里出了錯沒有具體提示信息,在thingsboard github社區也發了帖子最終該項目開發人員沒有給出方案,無奈自己選擇了其他方案,不再使用thingsboard官網給出的xalauc/haproxy-certbot:1.7.9鏡像,選擇了haproxy:1.7.12鏡像解決了這個問題,具體docker-compose相關配置如下所示:
haproxy:restart: alwaysimage: haproxy:1.7.12deploy:placement:constraints: # 添加條件約束- node.labels.server==tbports:- "80:80"- "443:443"- "1883:1883"- "9999:9999"cap_add:- NET_ADMINprivileged: truevolumes:- /home/haproxy/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfgenvironment:HTTP_PORT: 80HTTPS_PORT: 443MQTT_PORT: 1883FORCE_HTTPS_REDIRECT: "false"links:- tb-core1- tb-core2- tb-rule-engine1- tb-rule-engine2- tb-web-ui1- tb-mqtt-transport1- tb-mqtt-transport2- tb-http-transport1haproxy.cfg做了精簡,刪去了https部分,如下所示:
#HA Proxy Config globalulimit-n 500000maxconn 99999maxpipes 99999tune.maxaccept 500log 127.0.0.1 local0log 127.0.0.1 local1 noticedefaultslog globalmode httptimeout connect 5000mstimeout client 50000mstimeout server 50000mstimeout tunnel 1h # timeout to use with WebSocket and CONNECTdefault-server init-addr none#enable resolving throught docker dns and avoid crashing if service is down while proxy is starting resolvers docker_resolvernameserver dns 127.0.0.11:53listen statsbind *:9999stats enablestats hide-versionstats uri /statsstats auth admin:admin@123listen mqtt-inbind *:${MQTT_PORT}mode tcpoption clitcpka # For TCP keep-alivetimeout client 3htimeout server 3hoption tcplogbalance leastconnserver tbMqtt1 tb-mqtt-transport1:1883 check inter 5s resolvers docker_resolver resolve-prefer ipv4server tbMqtt2 tb-mqtt-transport2:1883 check inter 5s resolvers docker_resolver resolve-prefer ipv4frontend http-inbind *:${HTTP_PORT}option forwardforreqadd X-Forwarded-Proto:\ httpacl transport_http_acl path_beg /api/v1/acl letsencrypt_http_acl path_beg /.well-known/acme-challenge/acl tb_api_acl path_beg /api/ /swagger /webjars /v2/ /static/rulenode/ /oauth2/ /login/oauth2/use_backend letsencrypt_http if letsencrypt_http_acluse_backend tb-http-backend if transport_http_acluse_backend tb-api-backend if tb_api_acldefault_backend tb-web-backendbackend letsencrypt_httpserver letsencrypt_http_srv 127.0.0.1:8080backend tb-web-backendbalance leastconnoption tcp-checkoption log-health-checksserver tbWeb1 tb-web-ui1:8080 check inter 5s resolvers docker_resolver resolve-prefer ipv4server tbWeb2 tb-web-ui2:8080 check inter 5s resolvers docker_resolver resolve-prefer ipv4http-request set-header X-Forwarded-Port %[dst_port]backend tb-http-backendbalance leastconnoption tcp-checkoption log-health-checksserver tbHttp1 tb-http-transport1:8081 check inter 5s resolvers docker_resolver resolve-prefer ipv4server tbHttp2 tb-http-transport2:8081 check inter 5s resolvers docker_resolver resolve-prefer ipv4backend tb-api-backendbalance sourceoption tcp-checkoption log-health-checksserver tbApi1 tb-core1:8080 check inter 5s resolvers docker_resolver resolve-prefer ipv4server tbApi2 tb-core2:8080 check inter 5s resolvers docker_resolver resolve-prefer ipv4http-request set-header X-Forwarded-Port %[dst_port]?
總結
以上是生活随笔為你收集整理的thingsboard集群docker swarm部署报getsockopt failed strangely: Operation not permitted的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 注塑模具设计时,需要依据哪些设定原则?
- 下一篇: setsockopt和getsockop