falcon 0.52.1 → 0.52.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/context/deployment.md +65 -1
- data/context/index.yaml +15 -15
- data/lib/falcon/version.rb +1 -1
- data/readme.md +1 -1
- data.tar.gz.sig +0 -0
- metadata +1 -1
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0f0eb04a60a0e8100f830405fc1a55fa3cc1a31f8b8ad76922aba21c8bfc6796
|
4
|
+
data.tar.gz: 9491638bdf672c83ad490af7e192dabc903d5743061fa4fa95228f8fe195e772
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d4068f413136896989dabcf1642040a2dfc118176968aa91b249cfecf055801823df0f40912b774008c99ac2e2a87b178e842d54368458c0d6595ad8dcc36f6c
|
7
|
+
data.tar.gz: 1078328b527bfd6ec35041dfbd9e542d0b0a2c0018850bdf447ad6160d190ee9ad876d64b222b4dec571b8f56f2550c26a171190e0c8f060fd4a959b236089d0
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/context/deployment.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# Deployment
|
2
2
|
|
3
|
-
This guide explains how to
|
3
|
+
This guide explains how to deploy applications using the Falcon web server. It covers the recommended deployment methods, configuration options, and examples for different environments, including systemd and kubernetes.
|
4
4
|
|
5
5
|
Falcon can be deployed into production either as a standalone application server, or as a virtual host routing to multiple applications. Both configurations can run behind a load balancer, but `falcon virtual` is designed to be zero-configuration deployment option.
|
6
6
|
|
@@ -145,6 +145,50 @@ service hostname do
|
|
145
145
|
require_relative "config/environment"
|
146
146
|
~~~
|
147
147
|
|
148
|
+
### Kubernetes Integration
|
149
|
+
|
150
|
+
Falcon can be deployed in a Kubernetes cluster using the `falcon host` command. You can use the following example to create a Kubernetes deployment for Falcon:
|
151
|
+
|
152
|
+
```yaml
|
153
|
+
apiVersion: apps/v1
|
154
|
+
kind: Deployment
|
155
|
+
metadata:
|
156
|
+
name: falcon
|
157
|
+
spec:
|
158
|
+
replicas: 1
|
159
|
+
selector:
|
160
|
+
matchLabels:
|
161
|
+
app: falcon
|
162
|
+
template:
|
163
|
+
metadata:
|
164
|
+
labels:
|
165
|
+
app: falcon
|
166
|
+
spec:
|
167
|
+
containers:
|
168
|
+
- name: my-app
|
169
|
+
image: my-app-image:latest
|
170
|
+
env:
|
171
|
+
- name: NOTIFY_LOG
|
172
|
+
value: "/tmp/notify.log"
|
173
|
+
ports:
|
174
|
+
- containerPort: 9292
|
175
|
+
readinessProbe:
|
176
|
+
exec:
|
177
|
+
command: ["bundle", "exec", "bake", "async:container:notify:log:ready?"]
|
178
|
+
initialDelaySeconds: 5
|
179
|
+
periodSeconds: 5
|
180
|
+
failureThreshold: 12
|
181
|
+
|
182
|
+
# Assuming you are running Rails and have bound to port 3000:
|
183
|
+
livenessProbe:
|
184
|
+
httpGet:
|
185
|
+
path: /up
|
186
|
+
port: 3000
|
187
|
+
initialDelaySeconds: 10
|
188
|
+
periodSeconds: 10
|
189
|
+
failureThreshold: 3
|
190
|
+
```
|
191
|
+
|
148
192
|
## Falcon Virtual
|
149
193
|
|
150
194
|
Falcon virtual provides a virtual host proxy and HTTP-to-HTTPS redirection for multiple applications. It is designed to be a zero-configuration deployment option, allowing you to run multiple applications on the same server.
|
@@ -164,3 +208,23 @@ falcon virtual /srv/http/*/falcon.rb
|
|
164
208
|
By default, it binds to both HTTP and HTTPS ports, and automatically redirects HTTP requests to HTTPS. It also supports TLS SNI for resolving the certificates.
|
165
209
|
|
166
210
|
See the [docker example](https://github.com/socketry/falcon-virtual-docker-example) for a complete working example.
|
211
|
+
|
212
|
+
### systemd Service File
|
213
|
+
|
214
|
+
You can create a systemd service file to manage the Falcon virtual service. Here is an example of a systemd service file for Falcon:
|
215
|
+
|
216
|
+
```ini
|
217
|
+
[Unit]
|
218
|
+
Description=Falcon Virtual Service
|
219
|
+
After=network.target
|
220
|
+
|
221
|
+
[Service]
|
222
|
+
Type=notify
|
223
|
+
User=http
|
224
|
+
WorkingDirectory=/srv/http
|
225
|
+
ExecStart=/usr/local/bin/falcon virtual /srv/http/*/falcon.rb
|
226
|
+
Restart=always
|
227
|
+
|
228
|
+
[Install]
|
229
|
+
WantedBy=multi-user.target
|
230
|
+
```
|
data/context/index.yaml
CHANGED
@@ -1,34 +1,34 @@
|
|
1
1
|
# Automatically generated context index for Utopia::Project guides.
|
2
2
|
# Do not edit then files in this directory directly, instead edit the guides and then run `bake utopia:project:agent:context:update`.
|
3
3
|
---
|
4
|
-
|
4
|
+
description: A fast, asynchronous, rack-compatible web server.
|
5
|
+
metadata:
|
6
|
+
documentation_uri: https://socketry.github.io/falcon/
|
7
|
+
source_code_uri: https://github.com/socketry/falcon.git
|
8
|
+
files:
|
9
|
+
- path: getting-started.md
|
5
10
|
title: Getting Started
|
6
|
-
order: 1
|
7
11
|
description: This guide gives an overview of how to use Falcon for running Ruby
|
8
12
|
web applications.
|
9
|
-
rails-integration
|
13
|
+
- path: rails-integration.md
|
10
14
|
title: Rails Integration
|
11
|
-
order: 2
|
12
15
|
description: This guide explains how to host Rails applications with Falcon.
|
13
|
-
deployment
|
16
|
+
- path: deployment.md
|
14
17
|
title: Deployment
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
+
description: This guide explains how to deploy applications using the Falcon web
|
19
|
+
server. It covers the recommended deployment methods, configuration options, and
|
20
|
+
examples for different environments, including systemd and kubernetes.
|
21
|
+
- path: performance-tuning.md
|
18
22
|
title: Performance Tuning
|
19
|
-
order: 4
|
20
23
|
description: This guide explains the performance characteristics of Falcon.
|
21
|
-
websockets
|
24
|
+
- path: websockets.md
|
22
25
|
title: WebSockets
|
23
|
-
order: 5
|
24
26
|
description: This guide explains how to use WebSockets with Falcon.
|
25
|
-
interim-responses
|
27
|
+
- path: interim-responses.md
|
26
28
|
title: Interim Responses
|
27
|
-
order: 6
|
28
29
|
description: This guide explains how to use interim responses in Falcon to send
|
29
30
|
early hints to the client.
|
30
|
-
how-it-works
|
31
|
+
- path: how-it-works.md
|
31
32
|
title: How It Works
|
32
|
-
order: 10
|
33
33
|
description: This guide gives an overview of how Falcon handles an incoming web
|
34
34
|
request.
|
data/lib/falcon/version.rb
CHANGED
data/readme.md
CHANGED
@@ -33,7 +33,7 @@ Please see the [project documentation](https://socketry.github.io/falcon/) for m
|
|
33
33
|
|
34
34
|
- [Rails Integration](https://socketry.github.io/falcon/guides/rails-integration/index) - This guide explains how to host Rails applications with Falcon.
|
35
35
|
|
36
|
-
- [Deployment](https://socketry.github.io/falcon/guides/deployment/index) - This guide explains how to
|
36
|
+
- [Deployment](https://socketry.github.io/falcon/guides/deployment/index) - This guide explains how to deploy applications using the Falcon web server. It covers the recommended deployment methods, configuration options, and examples for different environments, including systemd and kubernetes.
|
37
37
|
|
38
38
|
- [Performance Tuning](https://socketry.github.io/falcon/guides/performance-tuning/index) - This guide explains the performance characteristics of Falcon.
|
39
39
|
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
metadata.gz.sig
CHANGED
Binary file
|