{"id":24369946,"url":"https://github.com/unikraft/lib-nginx","last_synced_at":"2025-07-23T05:34:41.745Z","repository":{"id":35714466,"uuid":"214877575","full_name":"unikraft/lib-nginx","owner":"unikraft","description":"Unikraft port of NGINX","archived":false,"fork":false,"pushed_at":"2024-12-20T22:12:05.000Z","size":38,"stargazers_count":1,"open_issues_count":3,"forks_count":5,"subscribers_count":9,"default_branch":"staging","last_synced_at":"2025-04-10T17:41:45.362Z","etag":null,"topics":["nginx","unikraft"],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/unikraft.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"COPYING.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-10-13T19:06:35.000Z","updated_at":"2024-12-20T10:14:57.000Z","dependencies_parsed_at":"2024-06-04T01:36:49.205Z","dependency_job_id":"fcdc9082-99bc-43aa-868d-aa3c92d8e492","html_url":"https://github.com/unikraft/lib-nginx","commit_stats":null,"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"purl":"pkg:github/unikraft/lib-nginx","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unikraft%2Flib-nginx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unikraft%2Flib-nginx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unikraft%2Flib-nginx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unikraft%2Flib-nginx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/unikraft","download_url":"https://codeload.github.com/unikraft/lib-nginx/tar.gz/refs/heads/staging","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unikraft%2Flib-nginx/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266624813,"owners_count":23958301,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-23T02:00:09.312Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["nginx","unikraft"],"created_at":"2025-01-19T04:11:07.404Z","updated_at":"2025-07-23T05:34:41.722Z","avatar_url":"https://github.com/unikraft.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Nginx for Unikraft\nThis is the port of Nginx for Unikraft as external library.\n\n## Build\nNginx depends on the following libraries, that need to\nbe added to `Makefile` in this order:\n\n* `pthreads`, e.g. `pthread-embedded`\n* `libc`, e.g. `newlib`\n* network stack, e.g. `lwip`\n\nBefore you proceed to writing your own application, you can use the `main()`\nfunction provided in the Nginx glue code by enabling it in its configuration\nmenu.\n\n## Root filesystem\n### Creating the filesystem\nNginx needs a filesystem which should contain its configuration files, HTML\nfiles and log files. Therefore, the filesystem needs to be created before\nrunning the VM. You may find such an example in `nginx-rootfs-example/`\nsubdirectory.\n\n### Using the filesystem\nMounting the filesystem is a transparent operation. All you have to do\nis to provide the right Qemu parameters in order for Unikraft to mount\nthe filesystem.  We will use the 9pfs support for filesystems and for\nthis you will need to use the following parameters:\n\n```bash\n-fsdev local,id=myid,path=\u003csome directory\u003e,security_model=none \\\n-device virtio-9p-pci,fsdev=myid,mount_tag=test,disable-modern=on,disable-legacy=off\n```\n\nYou should also use `vfs.rootdev=test` to specify the 9pfs mounting\ntag to Unikraft. To enable 9pfs, you'll need to select the following\nmenu options, all under `Library Configuration`:\n\n* `uk9p: 9p client`\n* `vfscore: VFS Core Interface`\n\t  \u0026rarr; `vfscore: Configuration`\n\t  \u0026rarr; `Automatically mount a root filesysytem`\n\t  \u0026rarr; `Default root filesystem`\n\t  \u0026rarr; `9PFS`\n* `uk library parameter`\n\n## Further information\nPlease refer to the `README.md` as well as the documentation in the `doc/`\nsubdirectory of the main unikraft repository.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Funikraft%2Flib-nginx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Funikraft%2Flib-nginx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Funikraft%2Flib-nginx/lists"}