CLI 0.0.210 deploy command does not respect the --dockerfile path option

I just upgraded the version of the CLI on my machine from 0.0.186 to 0.0.210. After the upgrade, my deployment flow is now broken (it was working fine with 0.0.186).
From the error message, it looks like the dockerfile option is not respected anymore. The command I am using to deploy my service is the following flyctl deploy --config ./sigle/fly.toml --dockerfile ./sigle/Dockerfile --remote-only.

Error:

==> Validating app configuration
--> Validating app configuration done
Services
TCP 80/443 ⇢ 3000
Waiting for remote builder fly-builder-shy-water-268...
==> Creating build context
--> Creating build context done
==> Building image with Docker
Error error building: error building with docker: Error response from daemon: Cannot locate specified Dockerfile: Dockerfile

Repo: GitHub - pradel/sigle: A beautiful decentralized and open source blog maker

Any help welcome as I can’t deploy my app anymore :frowning:

Doh. Can you try just flyctl deploy ./sigle/ as a workaround? I filed a bug about this here, we should have it fixed up by tomorrow: fly deploy --dockerfile doesn't find right dockerfile · Issue #403 · superfly/flyctl · GitHub

As I need to access the docker context outside the sigle folder, this workaround is not working unfortunately.

What error do you get when you run with the ./sigle/ arg? It should be able to reference context in other folders.

fyi we’re looking into the bug now. Breaking deploys is bad and we shouldn’t do it.

1 Like

it looks like it’s not able to add the files outside of the sigle folder

➜ flyctl deploy ./sigle/ --remote-only
Deploying sigle
==> Validating app configuration
--> Validating app configuration done
Services
TCP 80/443 ⇢ 3000
Remote builder fly-builder-shy-water-268 ready
==> Creating build context
--> Creating build context done
==> Building image with Docker
Step 1/25 : FROM node:14 AS builder
14: Pulling from library/node
76b8ef87096f: Pull complete 
2e2bafe8a0f4: Pull complete 
b53ce1fd2746: Pull complete 
84a8c1bd5887: Pull complete 
7a803dc0b40f: Pull complete 
b800e94e7303: Pull complete 
8e9f42962912: Pull complete 
cc1c1f0d8c86: Pull complete 
a42c31ab44dd: Pull complete 
Digest: sha256:8eb45f4677c813ad08cef8522254640aa6a1800e75a9c213a0a651f6f3564189
Status: Downloaded newer image for node:14
 ---> d6602e31594f
Step 2/25 : WORKDIR /app
 ---> Running in 93c83893f7c5
 ---> a4555e48bc28
Step 3/25 : COPY ./.yarnrc.yml ./.yarnrc.yml
Error error building: error rendering build status stream: COPY failed: file not found in build context or excluded by .dockerignore: stat .yarnrc.yml: file does not exist

Oh I see what’s happening. If you change those to ../.yarnrc.yml it could work. I think that might be a little cleaner since it’s explicitly referencing things in a parent directory. But also, don’t spend time on it unless you want to and we’ll get the --dockerfile issue cleared up.

1 Like

@pradel.leo we just released v0.0.211 which should fix it. sorry about that!

1 Like