-
-
Notifications
You must be signed in to change notification settings - Fork 75
Expand file tree
/
Copy pathfly.example.toml
More file actions
79 lines (65 loc) · 1.94 KB
/
fly.example.toml
File metadata and controls
79 lines (65 loc) · 1.94 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# Example Fly.io configuration for deploying your own uptermd server
# Copy this file to fly.toml and customize the app name and other settings
app = "my-uptermd-server" # Change this to your desired app name
primary_region = "iad" # Change to your preferred region (iad, fra, nrt, etc.)
kill_signal = "SIGINT"
kill_timeout = "5s"
[build]
dockerfile = "Dockerfile.uptermd"
build-target = "uptermd-fly"
[experimental]
entrypoint = ["uptermd-fly"]
# Routing Configuration:
# - If FLY_CONSUL_URL environment variable is set: uses Consul routing for multi-machine deployments
# - If FLY_CONSUL_URL is not set: uses embedded routing for single-machine deployments (simpler setup)
# For personal use, you don't need to set FLY_CONSUL_URL - embedded mode will be used automatically
# Resource allocation - adjust based on your needs
[vm]
cpu_kind = "shared"
cpus = 1
memory_mb = 256 # Increase if you expect high usage
# SSH service (port 22)
[[services]]
protocol = "tcp"
internal_port = 2222
auto_stop_machines = false
auto_start_machines = true
min_machines_running = 1 # Start with 1 for cost efficiency
[[services.ports]]
port = 22
handlers = ["proxy_proto"]
proxy_proto_options = { version = "v2" }
[services.concurrency]
type = "connections"
hard_limit = 500 # Reduced for personal use
soft_limit = 400
[[services.tcp_checks]]
interval = "15s"
timeout = "2s"
grace_period = "5s"
restart_limit = 3
# WebSocket service (ports 80/443)
[[services]]
protocol = "tcp"
internal_port = 8080
auto_stop_machines = false
auto_start_machines = true
min_machines_running = 1 # Start with 1 for cost efficiency
[[services.ports]]
port = 80
handlers = ["http"]
force_https = true
[[services.ports]]
port = 443
handlers = ["tls", "http"]
[services.concurrency]
type = "connections"
hard_limit = 500 # Reduced for personal use
soft_limit = 400
[[services.http_checks]]
interval = "30s"
timeout = "5s"
grace_period = "10s"
restart_limit = 3
path = "/health"
protocol = "http"