Tecnativa / doodba

Base image for making the creation of customized Odoo environments a piece of cake
Apache License 2.0
423 stars 302 forks source link

Cannot acces production instance on ubuntu, (Subdomain problem?) #611

Closed bosd closed 3 months ago

bosd commented 3 months ago

Could not get an production instance running on a new ubuntu VPS (AMD).

Describe the bug

It seems that there is an issue between the inverseproxy and the doodba instance. When the inverse proxy is not running I get an This site can’t be reached, Empty response (as expected) When inverse proxy is running (and doodba project not) there is an 404 not found (as expected) When both are up and running there is an endless loading with a gateway time-out.

Expected behavior I was expecting to be able to acces my odoo instance. just by having the containers up and running. Same as with my other older vps'es

To Reproduce

Steps to reproduce the behavior:

  1. Created a new doodba project ( Set the domain, use for db filter .* )
  2. Pointed the domain to the IP of the VPS
  3. Created a inverseproxy, with template from readme.
    Only changes are my email and version bump to trafik 1.7. Due to this
  4. Get both the inverse proxy and dooba project up and running.
  5. When visiting the domain, the odoo logs do'nt show any movement.

The logs where not really helpfull yet finding the problem. Here is an excerpt from the inverseproxy. Complanining about the domain.

proxy-1 | ERRO[2024-05-14T03:46:51Z] Unable to obtain ACME certificate for domains "odoo.fr.freedxxxxx.net" detected thanks to rule "Host:odoo.fr.freedxxxxx.net" : unable to generate a certificate for the domains [odoo.fr.freedxxxxx.net]: error: one or more domains had a problem:

[odoo.fr.freedxxxxx.net] acme: error: 400 :: urn:ietf:params:acme:error:dns :: DNS problem: NXDOMAIN looking up A for odoo.fr.freedxxxxx.net - check that a DNS record exists for this domain; 

DNS problem: NXDOMAIN looking up AAAA for odoo.fr.freedxxxxx.net - check that a DNS record exists for this domain

Well, actually this might be a lead.. It looks like the inverseproxy is looking for subdomain odoo.fr.freedxxxxx.net on the dns record. But why? I configured the hosts as:

> - hosts:
    - freedxxxxx.net

Additional context VERSION="24.04 LTS (Noble Numbat)" Docker version 26.1.2, build 211e74 Doodba template version 6.1.5

bosd commented 3 months ago

Want ahead and created the subdomain, the inverseproxy is somehow asking for. Well, at leat according to the logger there is a certificate delivered.

proxy-1 | INFO[2024-05-14T04:41:06Z] legolog: [INFO] [odoo.fr.freedxxxxx.net] acme: Could not find solver for: tls-alpn-01
proxy-1 | INFO[2024-05-14T04:41:06Z] legolog: [INFO] [odoo.fr.freedxxxxx.net] acme: use http-01 solver
proxy-1 | INFO[2024-05-14T04:41:06Z] legolog: [INFO] [odoo.fr.freedxxxxx.net] acme: Trying to solve HTTP-01
proxy-1 | INFO[2024-05-14T04:41:11Z] legolog: [INFO] [odoo.fr.freedxxxxx.net] The server validated our request
proxy-1 | INFO[2024-05-14T04:41:11Z] legolog: [INFO] [odoo.fr.freedxxxxx.net] acme: Validations succeeded; requesting certificates
proxy-1 | INFO[2024-05-14T04:41:15Z] legolog: [INFO] [odoo.fr.freedxxxxx.net] Server responded with a certificate.
proxy-1 | INFO[2024-05-14T04:41:15Z] Server configuration reloaded on :80
proxy-1 | INFO[2024-05-14T04:41:15Z] Server configuration reloaded on :443
A new release has been found: 3.0.0. Please consider updating.

But anyway, it resolves in a time-out as well

pedrobaeza commented 3 months ago

In fact we are using already Traefik 2 (and trying the v3). @josep-tecnativa can you please put the configuration for it (and update the README).

bosd commented 3 months ago

Thanks 🙏, I'm looking forward to it, as I'm kinda blocked right now.

josep-tecnativa commented 3 months ago

For now, if you chose Traefik in the second question, you are already able to use Traefik 2 imagen I think you should try to use Traefik 2 in your inverse proxy

bosd commented 3 months ago

Thanks @josep-tecnativa

I tried updating the inverseproxy to traefik2.0. It is not happy at all..

``` proxy-1 | --entrypoints..proxyprotocol.trustedips (Default: "") proxy-1 | Trust only selected IPs. proxy-1 | proxy-1 | --entrypoints..transport.lifecycle.gracetimeout (Default: "10") proxy-1 | Duration to give active requests a chance to finish before Traefik stops. proxy-1 | proxy-1 | --entrypoints..transport.lifecycle.requestacceptgracetimeout (Default: "0") proxy-1 | Duration to keep accepting requests before Traefik initiates the graceful proxy-1 | shutdown procedure. proxy-1 | proxy-1 | --entrypoints..transport.respondingtimeouts.idletimeout (Default: "180") proxy-1 | IdleTimeout is the maximum amount duration an idle (keep-alive) connection will proxy-1 | remain idle before closing itself. If zero, no timeout is set. proxy-1 | proxy-1 | --entrypoints..transport.respondingtimeouts.readtimeout (Default: "0") proxy-1 | ReadTimeout is the maximum duration for reading the entire request, including proxy-1 | the body. If zero, no timeout is set. proxy-1 | proxy-1 | --entrypoints..transport.respondingtimeouts.writetimeout (Default: "0") proxy-1 | WriteTimeout is the maximum duration before timing out writes of the response. proxy-1 | If zero, no timeout is set. proxy-1 | proxy-1 | --global.checknewversion (Default: "true") proxy-1 | Periodically check if a new version has been released. proxy-1 | proxy-1 | --global.sendanonymoususage proxy-1 | Periodically send anonymous usage statistics. If the option is not specified, it proxy-1 | will be enabled by default. proxy-1 | proxy-1 | --hostresolver (Default: "false") proxy-1 | Enable CNAME Flattening. proxy-1 | proxy-1 | --hostresolver.cnameflattening (Default: "false") proxy-1 | A flag to enable/disable CNAME flattening proxy-1 | proxy-1 | --hostresolver.resolvconfig (Default: "/etc/resolv.conf") proxy-1 | resolv.conf used for DNS resolving proxy-1 | proxy-1 | --hostresolver.resolvdepth (Default: "5") proxy-1 | The maximal depth of DNS recursive resolving proxy-1 | proxy-1 | --log (Default: "false") proxy-1 | Traefik log settings. proxy-1 | proxy-1 | --log.filepath (Default: "") proxy-1 | Traefik log file path. Stdout is used when omitted or empty. proxy-1 | proxy-1 | --log.format (Default: "common") proxy-1 | Traefik log format: json | common proxy-1 | proxy-1 | --log.level (Default: "ERROR") proxy-1 | Log level set to traefik logs. proxy-1 | proxy-1 | --metrics.datadog (Default: "false") proxy-1 | Datadog metrics exporter type. proxy-1 | proxy-1 | --metrics.datadog.addentrypointslabels (Default: "true") proxy-1 | Enable metrics on entry points. proxy-1 | proxy-1 | --metrics.datadog.address (Default: "localhost:8125") proxy-1 | Datadog's address. proxy-1 | proxy-1 | --metrics.datadog.addserviceslabels (Default: "true") proxy-1 | Enable metrics on services. proxy-1 | proxy-1 | --metrics.datadog.pushinterval (Default: "10") proxy-1 | Datadog push interval. proxy-1 | proxy-1 | --metrics.influxdb (Default: "false") proxy-1 | InfluxDB metrics exporter type. proxy-1 | proxy-1 | --metrics.influxdb.addentrypointslabels (Default: "true") proxy-1 | Enable metrics on entry points. proxy-1 | proxy-1 | --metrics.influxdb.address (Default: "localhost:8089") proxy-1 | InfluxDB address. proxy-1 | proxy-1 | --metrics.influxdb.addserviceslabels (Default: "true") proxy-1 | Enable metrics on services. proxy-1 | proxy-1 | --metrics.influxdb.database (Default: "") proxy-1 | InfluxDB database used when protocol is http. proxy-1 | proxy-1 | --metrics.influxdb.password (Default: "") proxy-1 | InfluxDB password (only with http). proxy-1 | proxy-1 | --metrics.influxdb.protocol (Default: "udp") proxy-1 | InfluxDB address protocol (udp or http). proxy-1 | proxy-1 | --metrics.influxdb.pushinterval (Default: "10") proxy-1 | InfluxDB push interval. proxy-1 | proxy-1 | --metrics.influxdb.retentionpolicy (Default: "") proxy-1 | InfluxDB retention policy used when protocol is http. proxy-1 | proxy-1 | --metrics.influxdb.username (Default: "") proxy-1 | InfluxDB username (only with http). proxy-1 | proxy-1 | --metrics.prometheus (Default: "false") proxy-1 | Prometheus metrics exporter type. proxy-1 | proxy-1 | --metrics.prometheus.addentrypointslabels (Default: "true") proxy-1 | Enable metrics on entry points. proxy-1 | proxy-1 | --metrics.prometheus.addserviceslabels (Default: "true") proxy-1 | Enable metrics on services. proxy-1 | proxy-1 | --metrics.prometheus.buckets (Default: "0.100000, 0.300000, 1.200000, 5.000000") proxy-1 | Buckets for latency metrics. proxy-1 | proxy-1 | --metrics.prometheus.entrypoint (Default: "traefik") proxy-1 | EntryPoint proxy-1 | proxy-1 | --metrics.statsd (Default: "false") proxy-1 | StatsD metrics exporter type. proxy-1 | proxy-1 | --metrics.statsd.addentrypointslabels (Default: "true") proxy-1 | Enable metrics on entry points. proxy-1 | proxy-1 | --metrics.statsd.address (Default: "localhost:8125") proxy-1 | StatsD address. proxy-1 | proxy-1 | --metrics.statsd.addserviceslabels (Default: "true") proxy-1 | Enable metrics on services. proxy-1 | proxy-1 | --metrics.statsd.pushinterval (Default: "10") proxy-1 | StatsD push interval. proxy-1 | proxy-1 | --ping (Default: "false") proxy-1 | Enable ping. proxy-1 | proxy-1 | --ping.entrypoint (Default: "traefik") proxy-1 | EntryPoint proxy-1 | proxy-1 | --providers.docker (Default: "false") proxy-1 | Enable Docker backend with default settings. proxy-1 | proxy-1 | --providers.docker.constraints (Default: "") proxy-1 | Constraints is an expression that Traefik matches against the container's labels proxy-1 | to determine whether to create any route for that container. proxy-1 | proxy-1 | --providers.docker.defaultrule (Default: "Host(`{{ normalize .Name }}`)") proxy-1 | Default rule. proxy-1 | proxy-1 | --providers.docker.endpoint (Default: "unix:///var/run/docker.sock") proxy-1 | Docker server endpoint. Can be a tcp or a unix socket endpoint. proxy-1 | proxy-1 | --providers.docker.exposedbydefault (Default: "true") proxy-1 | Expose containers by default. proxy-1 | proxy-1 | --providers.docker.network (Default: "") proxy-1 | Default Docker network used. proxy-1 | proxy-1 | --providers.docker.swarmmode (Default: "false") proxy-1 | Use Docker on Swarm Mode. proxy-1 | proxy-1 | --providers.docker.swarmmoderefreshseconds (Default: "15") proxy-1 | Polling interval for swarm mode. proxy-1 | proxy-1 | --providers.docker.tls.ca (Default: "") proxy-1 | TLS CA proxy-1 | proxy-1 | --providers.docker.tls.caoptional (Default: "false") proxy-1 | TLS CA.Optional proxy-1 | proxy-1 | --providers.docker.tls.cert (Default: "") proxy-1 | TLS cert proxy-1 | proxy-1 | --providers.docker.tls.insecureskipverify (Default: "false") proxy-1 | TLS insecure skip verify proxy-1 | proxy-1 | --providers.docker.tls.key (Default: "") proxy-1 | TLS key proxy-1 | proxy-1 | --providers.docker.usebindportip (Default: "false") proxy-1 | Use the ip address from the bound port, rather than from the inner network. proxy-1 | proxy-1 | --providers.docker.watch (Default: "true") proxy-1 | Watch provider. proxy-1 | proxy-1 | --providers.file.debugloggeneratedtemplate (Default: "false") proxy-1 | Enable debug logging of generated configuration template. proxy-1 | proxy-1 | --providers.file.directory (Default: "") proxy-1 | Load configuration from one or more .toml files in a directory. proxy-1 | proxy-1 | --providers.file.filename (Default: "") proxy-1 | Override default configuration template. For advanced users :) proxy-1 | proxy-1 | --providers.file.watch (Default: "true") proxy-1 | Watch provider. proxy-1 | proxy-1 | --providers.kubernetescrd (Default: "false") proxy-1 | Enable Kubernetes backend with default settings. proxy-1 | proxy-1 | --providers.kubernetescrd.certauthfilepath (Default: "") proxy-1 | Kubernetes certificate authority file path (not needed for in-cluster client). proxy-1 | proxy-1 | --providers.kubernetescrd.disablepasshostheaders (Default: "false") proxy-1 | Kubernetes disable PassHost Headers. proxy-1 | proxy-1 | --providers.kubernetescrd.endpoint (Default: "") proxy-1 | Kubernetes server endpoint (required for external cluster client). proxy-1 | proxy-1 | --providers.kubernetescrd.ingressclass (Default: "") proxy-1 | Value of kubernetes.io/ingress.class annotation to watch for. proxy-1 | proxy-1 | --providers.kubernetescrd.labelselector (Default: "") proxy-1 | Kubernetes label selector to use. proxy-1 | proxy-1 | --providers.kubernetescrd.namespaces (Default: "") proxy-1 | Kubernetes namespaces. proxy-1 | proxy-1 | --providers.kubernetescrd.throttleduration (Default: "0") proxy-1 | Ingress refresh throttle duration proxy-1 | proxy-1 | --providers.kubernetescrd.token (Default: "") proxy-1 | Kubernetes bearer token (not needed for in-cluster client). proxy-1 | proxy-1 | --providers.kubernetesingress (Default: "false") proxy-1 | Enable Kubernetes backend with default settings. proxy-1 | proxy-1 | --providers.kubernetesingress.certauthfilepath (Default: "") proxy-1 | Kubernetes certificate authority file path (not needed for in-cluster client). proxy-1 | proxy-1 | --providers.kubernetesingress.disablepasshostheaders (Default: "false") proxy-1 | Kubernetes disable PassHost Headers. proxy-1 | proxy-1 | --providers.kubernetesingress.endpoint (Default: "") proxy-1 | Kubernetes server endpoint (required for external cluster client). proxy-1 | proxy-1 | --providers.kubernetesingress.ingressclass (Default: "") proxy-1 | Value of kubernetes.io/ingress.class annotation to watch for. proxy-1 | proxy-1 | --providers.kubernetesingress.ingressendpoint.hostname (Default: "") proxy-1 | Hostname used for Kubernetes Ingress endpoints. proxy-1 | proxy-1 | --providers.kubernetesingress.ingressendpoint.ip (Default: "") proxy-1 | IP used for Kubernetes Ingress endpoints. proxy-1 | proxy-1 | --providers.kubernetesingress.ingressendpoint.publishedservice (Default: "") proxy-1 | Published Kubernetes Service to copy status from. proxy-1 | proxy-1 | --providers.kubernetesingress.labelselector (Default: "") proxy-1 | Kubernetes Ingress label selector to use. proxy-1 | proxy-1 | --providers.kubernetesingress.namespaces (Default: "") proxy-1 | Kubernetes namespaces. proxy-1 | proxy-1 | --providers.kubernetesingress.throttleduration (Default: "0") proxy-1 | Ingress refresh throttle duration proxy-1 | proxy-1 | --providers.kubernetesingress.token (Default: "") proxy-1 | Kubernetes bearer token (not needed for in-cluster client). proxy-1 | proxy-1 | --providers.marathon (Default: "false") proxy-1 | Enable Marathon backend with default settings. proxy-1 | proxy-1 | --providers.marathon.basic.httpbasicauthuser (Default: "") proxy-1 | Basic authentication User. proxy-1 | proxy-1 | --providers.marathon.basic.httpbasicpassword (Default: "") proxy-1 | Basic authentication Password. proxy-1 | proxy-1 | --providers.marathon.constraints (Default: "") proxy-1 | Constraints is an expression that Traefik matches against the application's proxy-1 | labels to determine whether to create any route for that application. proxy-1 | proxy-1 | --providers.marathon.dcostoken (Default: "") proxy-1 | DCOSToken for DCOS environment, This will override the Authorization header. proxy-1 | proxy-1 | --providers.marathon.defaultrule (Default: "Host(`{{ normalize .Name }}`)") proxy-1 | Default rule. proxy-1 | proxy-1 | --providers.marathon.dialertimeout (Default: "5") proxy-1 | Set a dialer timeout for Marathon. proxy-1 | proxy-1 | --providers.marathon.endpoint (Default: "http://127.0.0.1:8080") proxy-1 | Marathon server endpoint. You can also specify multiple endpoint for Marathon. proxy-1 | proxy-1 | --providers.marathon.exposedbydefault (Default: "true") proxy-1 | Expose Marathon apps by default. proxy-1 | proxy-1 | --providers.marathon.forcetaskhostname (Default: "false") proxy-1 | Force to use the task's hostname. proxy-1 | proxy-1 | --providers.marathon.keepalive (Default: "10") proxy-1 | Set a TCP Keep Alive time. proxy-1 | proxy-1 | --providers.marathon.respectreadinesschecks (Default: "false") proxy-1 | Filter out tasks with non-successful readiness checks during deployments. proxy-1 | proxy-1 | --providers.marathon.responseheadertimeout (Default: "60") proxy-1 | Set a response header timeout for Marathon. proxy-1 | proxy-1 | --providers.marathon.tls.ca (Default: "") proxy-1 | TLS CA proxy-1 | proxy-1 | --providers.marathon.tls.caoptional (Default: "false") proxy-1 | TLS CA.Optional proxy-1 | proxy-1 | --providers.marathon.tls.cert (Default: "") proxy-1 | TLS cert proxy-1 | proxy-1 | --providers.marathon.tls.insecureskipverify (Default: "false") proxy-1 | TLS insecure skip verify proxy-1 | proxy-1 | --providers.marathon.tls.key (Default: "") proxy-1 | TLS key proxy-1 | proxy-1 | --providers.marathon.tlshandshaketimeout (Default: "5") proxy-1 | Set a TLS handshake timeout for Marathon. proxy-1 | proxy-1 | --providers.marathon.trace (Default: "false") proxy-1 | Display additional provider logs. proxy-1 | proxy-1 | --providers.marathon.watch (Default: "true") proxy-1 | Watch provider. proxy-1 | proxy-1 | --providers.providersthrottleduration (Default: "2") proxy-1 | Backends throttle duration: minimum duration between 2 events from providers proxy-1 | before applying a new configuration. It avoids unnecessary reloads if multiples proxy-1 | events are sent in a short amount of time. proxy-1 | proxy-1 | --providers.rancher (Default: "false") proxy-1 | Enable Rancher backend with default settings. proxy-1 | proxy-1 | --providers.rancher.constraints (Default: "") proxy-1 | Constraints is an expression that Traefik matches against the container's labels proxy-1 | to determine whether to create any route for that container. proxy-1 | proxy-1 | --providers.rancher.defaultrule (Default: "Host(`{{ normalize .Name }}`)") proxy-1 | Default rule. proxy-1 | proxy-1 | --providers.rancher.enableservicehealthfilter (Default: "true") proxy-1 | Filter services with unhealthy states and inactive states. proxy-1 | proxy-1 | --providers.rancher.exposedbydefault (Default: "true") proxy-1 | Expose containers by default. proxy-1 | proxy-1 | --providers.rancher.intervalpoll (Default: "false") proxy-1 | Poll the Rancher metadata service every 'rancher.refreshseconds' (less proxy-1 | accurate). proxy-1 | proxy-1 | --providers.rancher.prefix (Default: "latest") proxy-1 | Prefix used for accessing the Rancher metadata service. proxy-1 | proxy-1 | --providers.rancher.refreshseconds (Default: "15") proxy-1 | Defines the polling interval in seconds. proxy-1 | proxy-1 | --providers.rancher.watch (Default: "true") proxy-1 | Watch provider. proxy-1 | proxy-1 | --providers.rest (Default: "false") proxy-1 | Enable Rest backend with default settings. proxy-1 | proxy-1 | --providers.rest.insecure (Default: "false") proxy-1 | Activate REST Provider directly on the entryPoint named traefik. proxy-1 | proxy-1 | --serverstransport.forwardingtimeouts.dialtimeout (Default: "30") proxy-1 | The amount of time to wait until a connection to a backend server can be proxy-1 | established. If zero, no timeout exists. proxy-1 | proxy-1 | --serverstransport.forwardingtimeouts.idleconntimeout (Default: "90") proxy-1 | The maximum period for which an idle HTTP keep-alive connection will remain open proxy-1 | before closing itself proxy-1 | proxy-1 | --serverstransport.forwardingtimeouts.responseheadertimeout (Default: "0") proxy-1 | The amount of time to wait for a server's response headers after fully writing proxy-1 | the request (including its body, if any). If zero, no timeout exists. proxy-1 | proxy-1 | --serverstransport.insecureskipverify (Default: "false") proxy-1 | Disable SSL certificate verification. proxy-1 | proxy-1 | --serverstransport.maxidleconnsperhost (Default: "200") proxy-1 | If non-zero, controls the maximum idle (keep-alive) to keep per-host. If zero, proxy-1 | DefaultMaxIdleConnsPerHost is used proxy-1 | proxy-1 | --serverstransport.rootcas (Default: "") proxy-1 | Add cert file for self-signed certificate. proxy-1 | proxy-1 | --tracing (Default: "false") proxy-1 | OpenTracing configuration. proxy-1 | proxy-1 | --tracing.datadog (Default: "false") proxy-1 | Settings for Datadog. proxy-1 | proxy-1 | --tracing.datadog.bagageprefixheadername (Default: "") proxy-1 | Specifies the header name prefix that will be used to store baggage items in a proxy-1 | map. proxy-1 | proxy-1 | --tracing.datadog.debug (Default: "false") proxy-1 | Enable Datadog debug. proxy-1 | proxy-1 | --tracing.datadog.globaltag (Default: "") proxy-1 | Key:Value tag to be set on all the spans. proxy-1 | proxy-1 | --tracing.datadog.localagenthostport (Default: "localhost:8126") proxy-1 | Set datadog-agent's host:port that the reporter will used. proxy-1 | proxy-1 | --tracing.datadog.parentidheadername (Default: "") proxy-1 | Specifies the header name that will be used to store the parent ID. proxy-1 | proxy-1 | --tracing.datadog.prioritysampling (Default: "false") proxy-1 | Enable priority sampling. When using distributed tracing, this option must be proxy-1 | enabled in order to get all the parts of a distributed trace sampled. proxy-1 | proxy-1 | --tracing.datadog.samplingpriorityheadername (Default: "") proxy-1 | Specifies the header name that will be used to store the sampling priority. proxy-1 | proxy-1 | --tracing.datadog.traceidheadername (Default: "") proxy-1 | Specifies the header name that will be used to store the trace ID. proxy-1 | proxy-1 | --tracing.haystack (Default: "false") proxy-1 | Settings for Haystack. proxy-1 | proxy-1 | --tracing.haystack.baggageprefixheadername (Default: "") proxy-1 | Specifies the header name prefix that will be used to store baggage items in a proxy-1 | map. proxy-1 | proxy-1 | --tracing.haystack.globaltag (Default: "") proxy-1 | Key:Value tag to be set on all the spans. proxy-1 | proxy-1 | --tracing.haystack.localagenthost (Default: "LocalAgentHost") proxy-1 | Set haystack-agent's host that the reporter will used. proxy-1 | proxy-1 | --tracing.haystack.localagentport (Default: "35000") proxy-1 | Set haystack-agent's port that the reporter will used. proxy-1 | proxy-1 | --tracing.haystack.parentidheadername (Default: "") proxy-1 | Specifies the header name that will be used to store the parent ID. proxy-1 | proxy-1 | --tracing.haystack.spanidheadername (Default: "") proxy-1 | Specifies the header name that will be used to store the span ID. proxy-1 | proxy-1 | --tracing.haystack.traceidheadername (Default: "") proxy-1 | Specifies the header name that will be used to store the trace ID. proxy-1 | proxy-1 | --tracing.instana (Default: "false") proxy-1 | Settings for Instana. proxy-1 | proxy-1 | --tracing.instana.localagenthost (Default: "localhost") proxy-1 | Set instana-agent's host that the reporter will used. proxy-1 | proxy-1 | --tracing.instana.localagentport (Default: "42699") proxy-1 | Set instana-agent's port that the reporter will used. proxy-1 | proxy-1 | --tracing.instana.loglevel (Default: "info") proxy-1 | Set instana-agent's log level. ('error','warn','info','debug') proxy-1 | proxy-1 | --tracing.jaeger (Default: "false") proxy-1 | Settings for Jaeger. proxy-1 | proxy-1 | --tracing.jaeger.collector.endpoint (Default: "") proxy-1 | Instructs reporter to send spans to jaeger-collector at this URL. proxy-1 | proxy-1 | --tracing.jaeger.collector.password (Default: "") proxy-1 | Password for basic http authentication when sending spans to jaeger-collector. proxy-1 | proxy-1 | --tracing.jaeger.collector.user (Default: "") proxy-1 | User for basic http authentication when sending spans to jaeger-collector. proxy-1 | proxy-1 | --tracing.jaeger.gen128bit (Default: "false") proxy-1 | Generate 128 bit span IDs. proxy-1 | proxy-1 | --tracing.jaeger.localagenthostport (Default: "127.0.0.1:6831") proxy-1 | Set jaeger-agent's host:port that the reporter will used. proxy-1 | proxy-1 | --tracing.jaeger.propagation (Default: "jaeger") proxy-1 | Which propagation format to use (jaeger/b3). proxy-1 | proxy-1 | --tracing.jaeger.samplingparam (Default: "1.000000") proxy-1 | Set the sampling parameter. proxy-1 | proxy-1 | --tracing.jaeger.samplingserverurl (Default: "http://localhost:5778/sampling") proxy-1 | Set the sampling server url. proxy-1 | proxy-1 | --tracing.jaeger.samplingtype (Default: "const") proxy-1 | Set the sampling type. proxy-1 | proxy-1 | --tracing.jaeger.tracecontextheadername (Default: "uber-trace-id") proxy-1 | Set the header to use for the trace-id. proxy-1 | proxy-1 | --tracing.servicename (Default: "traefik") proxy-1 | Set the name for this service. proxy-1 | proxy-1 | --tracing.spannamelimit (Default: "0") proxy-1 | Set the maximum character limit for Span names (default 0 = no limit). proxy-1 | proxy-1 | --tracing.zipkin (Default: "false") proxy-1 | Settings for Zipkin. proxy-1 | proxy-1 | --tracing.zipkin.httpendpoint (Default: "http://localhost:9411/api/v2/spans") proxy-1 | HTTP Endpoint to report traces to. proxy-1 | proxy-1 | --tracing.zipkin.id128bit (Default: "true") proxy-1 | Use Zipkin 128 bit root span IDs. proxy-1 | proxy-1 | --tracing.zipkin.samespan (Default: "false") proxy-1 | Use Zipkin SameSpan RPC style traces. proxy-1 | proxy-1 | --tracing.zipkin.samplerate (Default: "1.000000") proxy-1 | The rate between 0.0 and 1.0 of requests to trace. proxy-1 | proxy-1 | 2024/05/16 09:45:58 command traefik error: flag needs an argument: -Docker.Watch ```

Can you please document how to do it?

josep-tecnativa commented 3 months ago

Chech this out: https://github.com/Tecnativa/doodba-copier-template/blob/8db06e6d814d21b4e1548200222105b9009e4946/docs/faq.md

bosd commented 3 months ago

Thanks, that inverse proxy seems to be working. Booting it up, presents me a Welcome to Nginx when visiting the domain.

Then starting the project with docker compose -f prod.yaml up --build --remove-orphans. I'll get a very long wait.. untul it provides a black screen with a Gateway Timeout.

pedrobaeza commented 3 months ago

Check https://github.com/Tecnativa/doodba-copier-template/pull/469

bosd commented 3 months ago

Thanks, Fixed it with the new traefik 2.0 inverseproxy from the template. Then.. docker compose -p inverseproxy -f inverseproxy.yaml up -d