#Dagger engine won't start with proxy set up

1 messages · Page 1 of 1 (latest)

hard shale
#

Hello! I am trying to run basic dagger pipeline but I'm stuck at the very beginning. Locally, I am using MacOS and everything works flawlessly. But we also have a development server with much more power therefore making the builds faster. Anyway, I installed dagger on both of this devices and on this development server there is proxy set up making issues when starting dagger engine. I try to run simply dagger functions -vvv.
The error message I get is this:
Error: start engine: attach to telemetry: context deadline exceeded. I saw that dagger engine is sending telemetry to dagger.io.

Can you please tell me which endpoints is it trying to reach when starting dagger engine so that I can add them to no_proxy environment variable?

Additionally, I tried to set up DO_NOT_TRACK=1 to avoid sending telemetry just for testing purposes but it didn't help.

Or do you have some other idea what could I be doing wrong?

tawdry pelican
#

Hey Fran, I am afraid you may be getting bit by some of the issues here: https://github.com/dagger/dagger/issues/6599

Unfortunately there is no clean workaround right now for the latest version of dagger with modules but we are working on it.

GitHub

What is the issue? For security reasons many companies man-in-the-middle all SSL traffic to the internet with their own certificate. This causes a x509: certificate signed by unknown authority issu...

south cipher
#

@hard shale separately from our telemetry server, would you proxy typically block access to external docker registries? If so, that's probably 2 distinct problems. Possibly a third is accessing python, go or typescript package registries (depending on the SDK you plan to use)

fervent mortar
#

Worth checking at work side of things, if anything gets blocked, i had to get my networking team to open up the firewall from an aws account so dagger could actually run for me (locally it was working fine)

hard shale
#

thank you guys for the answers.
To use jenkins I have to connected to VPN.

@tawdry pelican , thanks for this link. This is very valuable information. Do you have any idea when is it planned to be implemented?

@south cipher thank you for your question. I wasn't aware how it worked but I asked a team in charge.
On the node itself there are proxy no restrictions to access external docker registries.
But one cannot access them from within a container, which is the case here as the dagger engine itself is a container.
You also mentioned SDK, I'd like to use go SDK. That's the step I expect tu stumble upon issues when calling some go Functions.
I assume I need to add daggerverse as well to be able to pull other modules.

I there a way of making the dagger engine startup more verbose?

@fervent mortar , thank you for sharing your experience, I have a feeling that the right proxy configuration could help me.

One more thing. I don't know if it's worth mentioning but on my dagger cloud I'm able to see these failed attempts of starting a dagger engine.

hollow vector
#

@hard shale if you do a docker ps, do you see a failed engine container?

#

or it doesn't even get to start?

hard shale
#

@hollow vector Well, I see the created container whose status is restarting and it looks like an endless loop. It's recurring logs are provided below:

hollow vector
hollow vector
hollow vector
#

I'd suggest running modprobe iptable_nat in your server @hard shale and I think that'll fix the engine starting issue. There's still going to be other problems with the proxy thing, but ping me tomorrow and we can try to find workarounds

hard shale
#

@hollow vector Linux version is: Red Hat Enterprise Linux release 8.9 (Ootpa)
✅ Thanks a lot for the command. That worked like a charm for the dagger-engine startup (as you said 😃 ), but I couldn't get dagger init --sdk=go potato running due to proxy setup. I get the following error:

hollow vector
eager sluice
tawdry pelican
eager sluice
# tawdry pelican There are a lot of inter related issues here, Can you share the output errors yo...

First Response:
When running the dagger init for python I get an exit 1 when it tried to do this
...
writing internal/telemetry/span.go
running post-command: go mod tidy
post-command failed: exit status 1
Stderr:
...
go: downloading github.com/pelletier/go-toml/v2 v2.1.1
go: python-sdk imports
github.com/iancoleman/strcase: github.com/iancoleman/strcase@v0.3.0: Get "https://proxy.golang.org/github.com/iancoleman/strcase/@v/v0.3.0.zip": tls: failed to verify certificate: x509: certificate signed by unknown authority
go: python-sdk imports
github.com/pelletier/go-toml/v2: github.com/pelletier/go-toml/v2@v2.1.1: Get "https://proxy.golang.org/github.com/pelletier/go-toml/v2/@v/v2.1.1.zip": tls: failed to verify certificate: x509: certificate signed by unknown authority
go: python-sdk imports
...

Note, I have a corpo custom cert I need to set it to trust

hollow vector
#

I am not sure what workaround I should take here, I want to make this as offline as possible

👋 FWIW there's no current way to make dagger work in fully airgapped / offline environments. Here's a list of currently identified issues that we're working on:
https://github.com/dagger/dagger/issues/6275

GitHub

What is the issue? Assume closed intranet, with no Internet access. I’ve seen questions about this in Discord and it’s essentially what this OP is asking for: #5417 There’s a few pieces of document...

eager sluice
hollow vector
eager sluice
hollow vector
eager sluice