{"id":13846878,"url":"https://github.com/square/jetpack","last_synced_at":"2025-07-12T08:30:49.842Z","repository":{"id":2264501,"uuid":"3220643","full_name":"square/jetpack","owner":"square","description":"jet.pack: package your JRuby rack app for Jetty.","archived":true,"fork":false,"pushed_at":"2020-01-15T19:35:30.000Z","size":1536,"stargazers_count":248,"open_issues_count":6,"forks_count":31,"subscribers_count":15,"default_branch":"master","last_synced_at":"2024-09-18T11:46:33.776Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/square.png","metadata":{"files":{"readme":"README.markdown","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-01-19T20:03:36.000Z","updated_at":"2024-07-09T09:43:40.000Z","dependencies_parsed_at":"2022-09-02T03:50:55.832Z","dependency_job_id":null,"html_url":"https://github.com/square/jetpack","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/square%2Fjetpack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/square%2Fjetpack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/square%2Fjetpack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/square%2Fjetpack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/square","download_url":"https://codeload.github.com/square/jetpack/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225742063,"owners_count":17517063,"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","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":[],"created_at":"2024-08-04T18:00:49.436Z","updated_at":"2024-11-21T21:30:43.546Z","avatar_url":"https://github.com/square.png","language":"Ruby","funding_links":[],"categories":["Ruby"],"sub_categories":[],"readme":"# Jetpack\n\n[![Build Status](https://travis-ci.org/square/jetpack.svg?branch=master)](https://travis-ci.org/square/jetpack)\n\njet.pack: package your JRuby webapp for Jetty.\n\nThere are already many tools in existence that help developers run JRuby webapps on popular servlet containers,\nsuch as [trinidad](https://github.com/trinidad/trinidad), [warbler](https://github.com/jruby/warbler), [mizuno](https://github.com/matadon/mizuno), and [kirk](https://github.com/strobecorp/kirk).\nJetpack is not fundamentally different from these tools: like the rest of them it uses the [jruby-rack](https://github.com/jruby/jruby-rack) jar as a foundation. The key differences are stylistic.\n\nJetpack:\n\n* Uses [Jetty](http://jetty.codehaus.org/jetty/)... in all of its\n  out-of-the-box, XML-configuration-file glory.\n* Uses bundler to \"vendor\" all of your gems.\n* Uses the [jruby-complete jar](http://jruby.org/download), and provides\n  convenience wrapper scripts (`bin/ruby` and `bin/rake`) in your project.\n* Does not attempt to run Jetty in a ruby-first, embedded manner.\n* Does not assume JRuby is already installed in your server environment (a\n  basic JRE will do just fine).\n* Does not force your ruby webapp to load files from a jar or war.\n\nIn short, Jetpack creates a little self-contained JRuby/Jetty/vendored-gem world around your ruby project,\nwhich you only need to transport to a server and fire up using a JRE.\n\nJetpack's implementation mainly consists of an [honest, proletarian, bash-like ruby script](https://github.com/square/jetpack/blob/master/bin/jetpack).\n\n## Install\n\nDeploys need to be performed using MRI. Here is a sample section of a project Gemfile:\n\n    platforms :mri do\n      gem 'jetpack'\n    end\n\n\nCreate `config/jetpack.yml` in your project:\n\n    jruby: \"http://jruby.org.s3.amazonaws.com/downloads/1.7.25/jruby-complete-1.7.25.jar\"\n    jetty: \"http://download.eclipse.org/jetty/9.2.18.v20160721/dist/jetty-distribution-9.2.18.v20160721.zip\"\n    jruby-rack: \"http://central.maven.org/maven2/org/jruby/rack/jruby-rack/1.1.20/jruby-rack-1.1.20.jar\"\n    app_user: \"myapp\"\n    app_root: \"/usr/local/myapp/myapp\"\n\nSome other settings you might care about:\n\n    java_options: \"-Xmx2048m\"\n    http_port: 4080\n    https_port: 4443\n    max_threads: 50\n    ruby_version: 1.8\n    app_type: rack\n    keystore_type: JCEKS\n    keystore: /data/app/secrets/mystore.jceks\n    keystore_password: sekret\n    bundle_without: [test, development]\n\nRun Jetpack:\n\n    bundle exec jetpack .\n\nOf note, you'll now have:\n\n* a `bin` directory, with scripts that run ruby and rake, using jruby and with the gems defined in your project.\n* a `vendor/jetty directory`, containing everything necessary to run your app using jetty.\n  * You can try your app out by cd'ing into `vendor/jetty` and running `RAILS_ENV=development java -jar start.jar`\n  * `vendor/jetty/jetty-init` is an init script that starts your project. You should symlink `/etc/init.d/[appuser]-jetty` to this file, and then point monit at `/etc/init.d/[appuser]-jetty`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsquare%2Fjetpack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsquare%2Fjetpack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsquare%2Fjetpack/lists"}