thruster 0.0.1-x86_64-linux → 0.0.2-x86_64-linux

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7268f8a0326bba72d6d784b1ba6e8fc5f9c17346b0765244aae83a29087d508f
4
- data.tar.gz: ea583117020def9cbc26df2b713d6a1b8ed30e11333ecf2ef607c978ef45f20f
3
+ metadata.gz: fe4245ccd3e460a7e0b4355704d4365876ae8fda02bee3953ea50c2257c9b662
4
+ data.tar.gz: f8f0de25f201d224fbe1c46938082b2bc629c86c0038cbc370f80c6e8c388b68
5
5
  SHA512:
6
- metadata.gz: cf1cad5e3278dca85285ee506e308e7cf7e711c580407f3bb1171831bdcd729ebea45868964f3c7413727fcd5372f97698f36c455cf7e86792799dbf5a398966
7
- data.tar.gz: ac2b70781368dddd4cd70e01b96262e4b298a53e6d061a55ff4a4bae297a945db80dec217fccc43c4d68d7aa6ef919912f753835b22e995a35d626c03c08f4dc
6
+ metadata.gz: 06dc09f11c5a69769effe3fc0214866104609342bbccdee848f03589f6596be73250bf01f17dced57c6eeee30957f6770c366c430569daa4a83e3095a5e0aeff
7
+ data.tar.gz: 5a01e1896f716fcd7f73e66560a9d3331261dda2381e1695ddb55f217d5fe207f45f75bbdf9deff3d982f18ef0ebfe351207e782031e67a468c3f4f08028dcbc
data/README.md CHANGED
@@ -1,2 +1,91 @@
1
1
  # Thruster
2
2
 
3
+ Thruster is an HTTP/2 proxy for simple production-ready deployments of Rails
4
+ applications. It runs alongside the Puma webserver to provide a few additional
5
+ features to help your app run efficiently and safely on the open Internet:
6
+
7
+ - Automatic SSL certificate management with Let's Encrypt
8
+ - HTTP/2 support
9
+ - Basic HTTP caching
10
+ - X-Sendfile support for efficient file serving
11
+ - Automatic GZIP compression
12
+
13
+ Thruster tries to be as zero-config as possible, so most features are
14
+ automatically enabled with sensible defaults.
15
+
16
+ One exception to that is the `SSL_DOMAIN` environment variable, which is
17
+ required to enable SSL provisioning. If `SSL_DOMAIN` is not set, Thruster will
18
+ operate in HTTP-only mode.
19
+
20
+ ## Installation
21
+
22
+ Add this line to your application's Gemfile:
23
+
24
+ ```ruby
25
+ gem 'thruster'
26
+ ```
27
+
28
+ Or install it globally:
29
+
30
+ ```sh
31
+ $ gem install thruster
32
+ ```
33
+
34
+ ## Usage
35
+
36
+ To run your Puma application inside Thruster, prefix your usual command string
37
+ with `thrust`. For example:
38
+
39
+ ```sh
40
+ $ thrust bin/rails server
41
+ ```
42
+
43
+ Or with automatic SSL:
44
+
45
+ ```sh
46
+ $ SSL_DOMAIN=myapp.example.com thrust bin/rails server
47
+ ```
48
+
49
+ ## Custom configuration
50
+
51
+ Thruster provides a number of environment variables that can be used to
52
+ customize its behavior:
53
+
54
+ - `SSL_DOMAIN` - The domain name to use for SSL provisioning. If not set, SSL
55
+ will be disabled.
56
+
57
+ - `TARGET_PORT` - The port that your Puma server should run on. Defaults to
58
+ 3000. Thruster will set `PORT` to this when starting your server.
59
+
60
+ - `CACHE_SIZE` - The size of the HTTP cache in bytes. Defaults to 64MB.
61
+
62
+ - `MAX_CACHE_ITEM_SIZE` - The maximum size of a single item in the HTTP cache
63
+ in bytes. Defaults to 1MB.
64
+
65
+ - `X_SENDFILE_ENABLED` - Whether to enable X-Sendfile support. Defaults to
66
+ enabled; set to `0` or `false` to disable.
67
+
68
+ - `MAX_REQUEST_BODY` - The maximum size of a request body in bytes. Requests
69
+ larger than this size will be refused; `0` means no maximum size. Defaults to
70
+ `0`.
71
+
72
+ - `STORAGE_PATH` - The path to store Thruster's internal state. Defaults to
73
+ `./storage/thruster`.
74
+
75
+ - `BAD_GATEWAY_PAGE` - Path to an HTML file to serve when the backend server
76
+ returns a 502 Bad Gateway error. Defaults to `./public/502.html`. If there is
77
+ no file at the specific path, Thruster will serve an empty 502 response
78
+ instead.
79
+
80
+ - `HTTP_PORT` - The port to listen on for HTTP traffic. Defaults to 80.
81
+
82
+ - `HTTPS_PORT` - The port to listen on for HTTPS traffic. Defaults to 443.
83
+
84
+ - `HTTP_IDLE_TIMEOUT` - The maximum time in seconds that a client can be idle
85
+ before the connection is closed. Defaults to 60.
86
+
87
+ - `HTTP_READ_TIMEOUT` - The maximum time in seconds that a client can take to
88
+ send the request headers. Defaults to 30.
89
+
90
+ - `HTTP_WRITE_TIMEOUT` - The maximum time in seconds during which the client
91
+ must read the response. Defaults to 30.
Binary file
@@ -1,3 +1,3 @@
1
1
  module Thruster
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: thruster
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: x86_64-linux
6
6
  authors:
7
7
  - Kevin McConnell
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-02-14 00:00:00.000000000 Z
11
+ date: 2024-02-28 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: A zero-config HTTP/2 proxy for lightweight production deployments
14
14
  email: kevin@37signals.com