All Projects → microsoft → Oryx

microsoft / Oryx

Licence: other
Build your repo automatically.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Oryx

kubernetes-the-hard-way-on-azure
Bootstrap Kubernetes the hard way on Microsoft Azure Platform. No scripts.
Stars: ✭ 321 (+13.43%)
Mutual labels:  azure
Unity Builder
Build Unity projects for different platforms
Stars: ✭ 258 (-8.83%)
Mutual labels:  build
Arvados
An open source platform for managing and analyzing biomedical big data
Stars: ✭ 274 (-3.18%)
Mutual labels:  azure
build-time-tracker
Gradle plugin that prints the time taken by the tasks in a build
Stars: ✭ 27 (-90.46%)
Mutual labels:  build
Azure Devops Python Api
Azure DevOps Python API
Stars: ✭ 257 (-9.19%)
Mutual labels:  azure
Azure Iot Sdk Python
A Python SDK for connecting devices to Microsoft Azure IoT services
Stars: ✭ 261 (-7.77%)
Mutual labels:  azure
cbtool
Cloud Rapid Experimentation and Analysis Toolkit
Stars: ✭ 65 (-77.03%)
Mutual labels:  azure
Antdeploy
Tools to deploy applications to remote server(iis,windowsService,linuxService,docker) support netframwork and dotnetcore,support rollback and increment deploy
Stars: ✭ 279 (-1.41%)
Mutual labels:  build
Service Fabric
We've moved!
Stars: ✭ 258 (-8.83%)
Mutual labels:  azure
Frontend Bootcamp Online
Repositório responsável pelo Front-End Bootcamp Online
Stars: ✭ 274 (-3.18%)
Mutual labels:  azure
Industrial Iot
Azure Industrial IoT Platform
Stars: ✭ 256 (-9.54%)
Mutual labels:  azure
Ccodashboard
Welcome to the Continuous Cloud Optimization Power BI Dashboard GitHub Project. In this repository you will find all the guidance and files needed to deploy the Dashboard in your environment to take benefit of a single pane of glass to get insights about your Azure resources and services.
Stars: ✭ 256 (-9.54%)
Mutual labels:  azure
Azure Functions Python Samples
Azure Functions Python Sample Codes
Stars: ✭ 266 (-6.01%)
Mutual labels:  azure
SimpleBuildInterface
A simple build interface for Unity CLI. Support all platforms without executeMethod option.
Stars: ✭ 23 (-91.87%)
Mutual labels:  build
Cloudscraper
CloudScraper: Tool to enumerate targets in search of cloud resources. S3 Buckets, Azure Blobs, Digital Ocean Storage Space.
Stars: ✭ 276 (-2.47%)
Mutual labels:  azure
faaskit
A lightweight middleware framework for functions as a service
Stars: ✭ 24 (-91.52%)
Mutual labels:  azure
Bazel Remote
A remote cache for Bazel
Stars: ✭ 260 (-8.13%)
Mutual labels:  build
Appservice Acmebot
Automated ACME issuer for Azure App Service (Web Apps / Functions / Containers)
Stars: ✭ 281 (-0.71%)
Mutual labels:  azure
Quicklib
Quick development library (AutoMapper, LinQ, IOC Dependency Injection, MemoryCache, Scheduled tasks, Config, Serializers, etc) with crossplatform support for Delphi/Firemonkey (Windows,Linux,OSX/IOS/Android) and freepascal (Windows/Linux).
Stars: ✭ 274 (-3.18%)
Mutual labels:  azure
Scoutsuite
Multi-Cloud Security Auditing Tool
Stars: ✭ 3,803 (+1243.82%)
Mutual labels:  azure

Oryx

Build Status

Oryx is a build system which automatically compiles source code repos into runnable artifacts. It is used to build web apps for Azure App Service and other platforms.

To receive updates on runtimes and versions supported by Oryx and App Service, subscribe to Azure Updates or watch the github.com/Azure/app-service-announcements tracker.

Oryx generates and runs an opinionated build script within a build container based on analysis of a codebase's contents. For example, if package.json is discovered in the repo Oryx includes npm run build in the build script; or if requirements.txt is found it includes pip install -r requirements.txt.

Oryx also generates a run-time startup script for the app including typical start commands like npm run start for Node.js or a WSGI module and server for Python.

The built artifacts and start script are loaded into a minimalistic run container and run.

Supported platforms and versions

Link

Patches (0.0.x) are applied as soon as possible after they are released upstream.

Get started

Though built first for use within Azure services, you can also use the Oryx build system yourself for troubleshooting and tests. Following are simple instructions; for complete background see our architecture doc.

Oryx includes two command-line applications; the first is included in the build image and generates a build script by analyzing a codebase. The second is included in run images and generates a startup script. Both are aliased and accessible as oryx in their respective images.

oryx build

When oryx build is run, the system detects which programming platforms appear to be in use and applies toolsets appropriate for each one. You can override the default choices through configuration.

The --output (or -o) parameter specifies where prepared artifacts will be placed; if not specified the source directory is used for output as well.

For all options, specify oryx --help.

oryx create-script -appPath

When oryx is run in the runtime images it generates a start script named run.sh, by default in the same folder as the compiled artifact.

Build and run an app

To build and run an app from a repo, follow these approximate steps. An example script follows.

  1. Mount the repo as a volume in Oryx's docker.io/oryxprod/build container.
  2. Run oryx build ... within the repo directory to build a runnable artifact.
  3. Mount the output directory from build in an appropriate Oryx "run" container, such as docker.io/oryxprod/node-10.14.
  4. Run oryx ... within the "run" container to write a startup script.
  5. Run the generated startup script, by default /run.sh.
# Run these from the root of the repo.
# build
docker run --volume $(pwd):/repo \
    'mcr.microsoft.com/oryx/build:latest' \
    oryx build /repo --output /repo

# run

# the -p/--publish and -e/--env flags specify and open a host port
docker run --detach --rm \
    --volume $(pwd):/app \
    --env PORT=8080 \
    --publish 8080:8080 \
    'mcr.microsoft.com/oryx/node:10' \
    sh -c 'oryx create-script -appPath /app && /run.sh'

Components

Oryx consists of a build image, a collection of runtime images, a build script generator, and a collection of startup script generators. For more details, refer to our architecture page.

Contributing

See CONTRIBUTING.md.

License

MIT, see LICENSE.md.

Security

Security issues and bugs should be reported privately, via email, to the Microsoft Security Response Center (MSRC) at [email protected]. You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Further information, including the MSRC PGP key, can be found in the Security TechCenter.

Data/Telemetry

When utilized within Azure services, this project collects usage data and sends it to Microsoft to help improve our products and services. Read Microsoft's privacy statement to learn more.

This project follows the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ. Contact [email protected] with questions and comments.

Disable Data Collection

To prevent Oryx command line tools from collecting any data, set the environment variable ORYX_DISABLE_TELEMETRY to true.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].