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 HTTP PHP as example #21

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

razvand
Copy link

@razvand razvand commented Dec 1, 2023

Introduce PHP as binary compatibility run; run a simple HTTP server in PHP. Extract PHP binaries and files 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
  • http_server.php: the PHP HTTP server implementation
  • php.ini: PHP configuration file

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 1, 2023
@razvand razvand force-pushed the razvand/examples/http-php branch 3 times, most recently from 088a00d to 3081a38 Compare December 3, 2023 18:53
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.

All good.

Introduce PHP as binary compatibility run; run a simple HTTP server in
PHP. Extract PHP binaries and files 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
* `http_server.php`: the PHP HTTP server implementation
* `php.ini`: PHP configuration file

`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 <[email protected]>
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.

All good, thanks.

Approved-by: Stefan Jumarea [email protected]

Copy link
Member

@Mihnea0Firoiu Mihnea0Firoiu left a comment

Choose a reason for hiding this comment

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

All good.
Reviewed-by: Mihnea Firoiu [email protected]

razvand pushed a commit that referenced this pull request Mar 18, 2024
Reviewed-by: Alexander Jung <[email protected]>
Approved-by: Alexander Jung <[email protected]>
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
Status: No status
Development

Successfully merging this pull request may close these issues.

3 participants