Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(examples): Introduce Node Prisma as example #31

Merged
merged 1 commit into from
Jun 20, 2024

Conversation

razvand
Copy link

@razvand razvand commented Dec 3, 2023

Introduce a Node Prisma example as binary compatibility run. Install Node and Prism using Dockerfile. Then run it with the base kernel images from ../../kernels/.

Add typical files for a bincompat app:

  • Kraftfile: build / run rules, including pulling the base image
  • Dockerfile: filesystem, including binary and libraries
  • Makefile: used to generate the root filesystem from the Dockerfile rules
  • README.md: instructions to set up, build and run the application
  • config.yaml: configuration file to generate scripts to the application

config.yaml is used to generate run scripts using the ../../utils/bincompat/generate.py script.

The kernels in ../../kernels are generated by running the ../../utils/bincompat/base-build-all.sh script while inside the ../../library/base/ directory.

@razvand razvand added the enhancement New feature or request label Dec 3, 2023
@razvand razvand force-pushed the razvand/examples/node-prisma branch from cb2335f to ab106c5 Compare December 3, 2023 21:33
Copy link
Member

@StefanJum StefanJum left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This fails with a protocol not supported error. Add it to the README.

Introduce a Node Prisma example as binary compatibility run. Install
Node and Prism using `Dockerfile`. Then run it with the `base` kernel
images from `../../kernels/`.

Add typical files for a bincompat app:

* `Kraftfile`: build / run rules, including pulling the `base` image
* `Dockerfile`: filesystem, including binary and libraries
* `Makefile`: used to generate the root filesystem from the `Dockerfile`
  rules
* `README.md`: instructions to set up, build and run the application
* `config.yaml`: configuration file to generate scripts to the
  application

`config.yaml` is used to generate run scripts using the
`../../utils/bincompat/generate.py` script.

The kernels in `../../kernels` are generated by running the
`../../utils/bincompat/base-build-all.sh` script while inside the
`../../library/base/` directory.

Signed-off-by: Razvan Deaconescu <razvand@unikraft.io>
Copy link
Member

@StefanJum StefanJum left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks like it waits for connections on port 3000, not 8080.
Also, the response is

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Error</title>
</head>
<body>
<pre>Cannot GET /</pre>
</body>
</html>

is this a known issue?

@Mihnea0Firoiu
Copy link
Member

This looks like it waits for connections on port 3000, not 8080. Also, the response is

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Error</title>
</head>
<body>
<pre>Cannot GET /</pre>
</body>
</html>

is this a known issue?

I noticed the same issues.

Copy link
Member

@StefanJum StefanJum left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed-by: Stefan Jumarea stefanjumarea02@gmail.com
Approved-by: Stefan Jumarea stefanjumarea02@gmail.com

@StefanJum StefanJum merged commit 677c628 into unikraft:main Jun 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Development

Successfully merging this pull request may close these issues.

3 participants