I just tried fly.io, as docker file was not present it started remote build of the app.
App is working but i want to redirect users from http to https and do minor config changes but don’t know how to get remote built docker file.
Dockerfile was not present?
The remote builder only starts if you pass
--remote-only or if you don’t have a local Docker daemon running. This is the thing that builds Docker images.
If you have a
Dockerfile, we’ll build it.
Yes Dockerfile was not present as i have no docker running at the moment.
so how to know what config used for the deployment?
And how to redirect from http to https ?
What does your
fly.toml look like? Redirecting from http → https has to happen in the app, if you’re using one of our builders there might be a setting.
Remote builds happen with or without a Dockerfile. It sounds like you’re using one of our built in builders?
My toml file
Yes I am using your builder.
Ah ok, what kind of application is that running? Node, Rails, etc? Most frameworks have a config setting for redirecting from http → https.
It is Next JS application.
I did wrote detailed email yesterday , if you can check firstname.lastname@example.org .
Are you serving it with express? You might need to write a little bit of JS: How to force HTTPS with Express.js - Divio Developer Handbook
You can check the
http to detect how an end user actually connected to us.
That support mailbox is largely unmonitored, the community is the best place to get help with this kind of thing.
@kurt Thank you for the help.
I will try this one.
I wonder if i could also able to get the Dockerfile generated by build for reference.
It’s actually not using a Dockerfile, it’s using a Buildpack. When you ran
flyctl launch it detected a Node app, so it’s probably using the Heroku node buildpack.
If you’d rather use a Dockerfile, you can create one, then remove the
[build] section from
fly.toml. The next docs have this example Dockerfile:
# Install dependencies only when needed FROM node:alpine AS deps # Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. RUN apk add --no-cache libc6-compat WORKDIR /app COPY package.json yarn.lock ./ RUN yarn install --frozen-lockfile # Rebuild the source code only when needed FROM node:alpine AS builder WORKDIR /app COPY . . COPY --from=deps /app/node_modules ./node_modules RUN yarn build && yarn install --production --ignore-scripts --prefer-offline # Production image, copy all the files and run next FROM node:alpine AS runner WORKDIR /app ENV NODE_ENV production RUN addgroup -g 1001 -S nodejs RUN adduser -S nextjs -u 1001 # You only need to copy next.config.js if you are NOT using the default configuration # COPY --from=builder /app/next.config.js ./ COPY --from=builder /app/public ./public COPY --from=builder --chown=nextjs:nodejs /app/.next ./.next COPY --from=builder /app/node_modules ./node_modules COPY --from=builder /app/package.json ./package.json USER nextjs EXPOSE 3000 # Next.js collects completely anonymous telemetry data about general usage. # Learn more here: https://nextjs.org/telemetry # Uncomment the following line in case you want to disable telemetry. # ENV NEXT_TELEMETRY_DISABLED 1 CMD ["yarn", "start"]