| ADD alpine-minirootfs-3.23.4-x86_64.tar.gz / # buildkit |
| CMD ["/bin/sh"] |
| RUN /bin/sh -c apk upgrade --no-cache && apk add --no-cache nodejs curl bash tini ca-certificates # buildkit |
| RUN /bin/sh -c mkdir -p /tmp/npm-install # buildkit |
| WORKDIR /tmp/npm-install |
| RUN /bin/sh -c curl -fsSL https://registry.npmjs.org/npm/-/npm-11.13.0.tgz -o npm.tgz # buildkit |
| RUN /bin/sh -c expected="a4ffa1de3bf1c7f9d5e3dd24fe2921970bdb1589d647f4083eaaaab3be974b7e" && actual=$(sha256sum npm.tgz | cut -d' ' -f1) && [ "$actual" = "$expected" ] && echo "✅ NPM Tarball Checksum OK" || (echo "❌ NPM Tarball Checksum failed!" && exit 1) # buildkit |
| RUN /bin/sh -c tar -xzf npm.tgz && cd package && node bin/npm-cli.js install -g npm@11.13.0 && cd / && rm -rf /tmp/npm-install # buildkit |
| RUN /bin/sh -c npm install -g pnpm@10.33.2 @import-meta-env/cli@0.7.4 # buildkit |
| RUN /bin/sh -c mkdir -p /tmp/glob-fix && cd /tmp/glob-fix && npm install glob@11.1.0 && rm -rf /usr/lib/node_modules/@import-meta-env/cli/node_modules/glob && cp -r node_modules/glob /usr/lib/node_modules/@import-meta-env/cli/node_modules/ && rm -rf /tmp/glob-fix # buildkit |
| RUN /bin/sh -c mkdir -p /tmp/serialize-fix && cd /tmp/serialize-fix && npm install serialize-javascript@7.0.3 && rm -rf /usr/lib/node_modules/@import-meta-env/cli/node_modules/serialize-javascript && cp -r node_modules/serialize-javascript /usr/lib/node_modules/@import-meta-env/cli/node_modules/ && rm -rf /tmp/serialize-fix # buildkit |
| COPY /tmp/caddy-build/cmd/caddy/caddy /usr/bin/caddy # buildkit |
| ENV PRODUCTION=true |
| ENV PORT=8080 |
| LABEL org.opencontainers.image.source=https://github.com/hoppscotch/hoppscotch org.opencontainers.image.url=https://docs.hoppscotch.io org.opencontainers.image.licenses=MIT |
| COPY /usr/src/app/packages/hoppscotch-backend/backend.Caddyfile /etc/caddy/backend.Caddyfile # buildkit |
| COPY /dist/backend /dist/backend # buildkit |
| COPY /usr/src/app/packages/hoppscotch-backend/prod_run.mjs /dist/backend # buildkit |
| COPY /usr/src/app/packages/hoppscotch-selfhost-web/webapp-server/webapp-server /usr/local/bin/ # buildkit |
| RUN /bin/sh -c mkdir -p /site/selfhost-web # buildkit |
| COPY /usr/src/app/packages/hoppscotch-selfhost-web/dist /site/selfhost-web # buildkit |
| COPY /usr/src/app/aio_run.mjs /usr/src/app/aio_run.mjs # buildkit |
| COPY /usr/src/app/packages/hoppscotch-selfhost-web/dist /site/selfhost-web # buildkit |
| COPY /usr/src/app/packages/hoppscotch-sh-admin/dist-multiport-setup /site/sh-admin-multiport-setup # buildkit |
| COPY /usr/src/app/packages/hoppscotch-sh-admin/dist-subpath-access /site/sh-admin-subpath-access # buildkit |
| COPY aio-multiport-setup.Caddyfile /etc/caddy/aio-multiport-setup.Caddyfile # buildkit |
| COPY aio-subpath-access.Caddyfile /etc/caddy/aio-subpath-access.Caddyfile # buildkit |
| ENTRYPOINT ["tini" "--"] |
| COPY --chmod=755 healthcheck.sh / # buildkit |
| HEALTHCHECK &{["CMD-SHELL" "/bin/sh /healthcheck.sh"] "2s" "0s" "15s" "0s" '\x00'} |
| WORKDIR /dist/backend |
| CMD ["node" "/usr/src/app/aio_run.mjs"] |
| EXPOSE [3170/tcp] |
| EXPOSE [3000/tcp] |
| EXPOSE [3100/tcp] |
| EXPOSE [3200/tcp] |
| EXPOSE [80/tcp] |