mirror of
https://github.com/clearlinux/graphene.git
synced 2026-09-04 21:01:40 +00:00
We decided to merge the sample app integrations submodule back because working with git submodules turned out to be really painful. The only blocker for this was the fact, that previously it contained a lot of binary blobs and copy-pasted sources, but this was cleaned up recently. Credits: (authors of particular integration examples, extracted from commits and PR history in https://github.com/oscarlab/graphene-tests) apache: Chia-Che Tsai <chiache@tamu.edu>, Dmitrii Kuvaiskii <dmitrii.kuvaiskii@intel.com> bash: Chia-Che Tsai <chiache@tamu.edu>, Dmitrii Kuvaiskii <dmitrii.kuvaiskii@intel.com> blender: borysp <borysp@invisiblethingslab.com> busybox: borysp <borysp@invisiblethingslab.com> capnproto: Dmitrii Kuvaiskii <dmitrii.kuvaiskii@intel.com> curl: Dmitrii Kuvaiskii <dmitrii.kuvaiskii@intel.com> gcc: Thomas Knauth <thomas.knauth@intel.com> lighttpd: Chia-Che Tsai <chiache@tamu.edu>, Thomas Knauth <thomas.knauth@intel.com> lmbench: Chia-Che Tsai <chiache@tamu.edu> memcached: Dmitrii Kuvaiskii <dmitrii.kuvaiskii@intel.com> nginx: Dmitrii Kuvaiskii <dmitrii.kuvaiskii@intel.com> nodejs: jack.wxz <jack.wxz@alibaba-inc.com> nodejs-express-server: Eduardo Rodriguez <erodrig@us.ibm.com> openvino: Dmitrii Kuvaiskii <dmitrii.kuvaiskii@intel.com> python-scipy-insecure: Chia-Che Tsai <chiache@tamu.edu>, Dmitrii Kuvaiskii <dmitrii.kuvaiskii@intel.com> python-simple: Chia-Che Tsai <chiache@tamu.edu>, Dmitrii Kuvaiskii <dmitrii.kuvaiskii@intel.com> pytorch: Thomas Knauth <thomas.knauth@intel.com> r: Chia-Che Tsai <chiache@tamu.edu> redis: Dmitrii Kuvaiskii <dmitrii.kuvaiskii@intel.com> tensorflow: Thomas Knauth <thomas.knauth@intel.com> LTP was moved to LibOS/shim/test/ltp. It was recently rewritten by Wojtek Porczyk <woju@invisiblethingslab.com>.
30 lines
1.3 KiB
Markdown
30 lines
1.3 KiB
Markdown
# Running Node.js express server with Graphene SGX
|
|
|
|
This is a Node.js application, runs an express server, listening on a given port.
|
|
|
|
## Environment
|
|
|
|
This application was tested with Node.js version 8.
|
|
|
|
## Requirements
|
|
|
|
This project requires Node.js to be installed.
|
|
See https://nodejs.org/ for more details on how to install Node.js.
|
|
|
|
## Steps to run with SGX
|
|
|
|
1. Run `npm install`, which installs all dependencies and modules needed for this application.
|
|
See `package.json` for more details on Node.js dependencies needed for this project.
|
|
At this point, the application itself can be executed without SGX by running `node helloworld.js`.
|
|
2. Run `make SGX=1` in order to build the application using SGX.
|
|
3. Once the application is built, and manifest files are generated, execute application by running:
|
|
`./pal_loader SGX nodejs.manifest.sgx helloworld.js 3000`
|
|
4. The expected output should be the following: `Example app listening on port 3000!`
|
|
|
|
## Steps to run without SGX
|
|
|
|
1. Run `npm install`, which installs all dependencies and modules needed for this application.
|
|
See `package.json` for more details on Node.js dependencies needed for this project.
|
|
2. Run `node helloworld.js 3000`.
|
|
3. The expected output should be the following: `Example app listening on port 3000!`
|