The proxy can be enabled via the config:
```
proxy:
enabled: true
hosts:
- 10.0.0.1
- 10.0.0.2
```
This will enable the proxy and cause it to be run on the hosts listed
under `hosts`, after running `kamal proxy reboot`.
Enabling the proxy disables `kamal traefik` commands and replaces them
with `kamal proxy` ones. However only the marked hosts will run the
kamal-proxy container, the rest will run Traefik as before.
50 lines
975 B
YAML
50 lines
975 B
YAML
service: app
|
|
image: app
|
|
servers:
|
|
web:
|
|
hosts:
|
|
- vm1
|
|
- vm2
|
|
workers:
|
|
hosts:
|
|
- vm3
|
|
cmd: sleep infinity
|
|
proxy:
|
|
enabled: true
|
|
hosts:
|
|
- vm2
|
|
deploy_timeout: 2s
|
|
|
|
asset_path: /usr/share/nginx/html/versions
|
|
|
|
registry:
|
|
server: registry:4443
|
|
username: root
|
|
password: root
|
|
builder:
|
|
driver: docker
|
|
arch: <%= Kamal::Utils.docker_arch %>
|
|
args:
|
|
COMMIT_SHA: <%= `git rev-parse HEAD` %>
|
|
healthcheck:
|
|
cmd: wget -qO- http://localhost > /dev/null || exit 1
|
|
max_attempts: 3
|
|
traefik:
|
|
args:
|
|
accesslog: true
|
|
accesslog.format: json
|
|
image: registry:4443/traefik:v2.10
|
|
accessories:
|
|
busybox:
|
|
service: custom-busybox
|
|
image: registry:4443/busybox:1.36.0
|
|
cmd: sh -c 'echo "Starting busybox..."; trap exit term; while true; do sleep 1; done'
|
|
roles:
|
|
- web
|
|
stop_wait_time: 1
|
|
readiness_delay: 0
|
|
aliases:
|
|
whome: version
|
|
worker_hostname: app exec -r workers -q --reuse hostname
|
|
uname: server exec -q -p uname
|