You have to specify configuration file using flag -proxy-file
. Using binary file command is proxy -proxy-file=/path/proxy_config.toml
Then, you can run the docker image, mounting (-v) a proxy_config.toml inside the container (you could also make a custom Dockerfile with "ADD my-custom-proxy-config.toml /my-custom-proxy-config.toml"). E.g.
docker run -v /home/myuser/foulkon/proxy_config.toml:/proxy.toml tecsisa/foulkon proxy
This config file is a TOML file that has several parts:
Server | Server config properties | Values | Default | Optional |
---|---|---|---|---|
host | Worker's hostname. | localhost |
No | |
port | Worker's port. | 8001 |
No | |
certfile | Absolute path for public certificate. | /etc/secrets/public.pem |
Yes | |
keyfile | Absolute path for private key. | /etc/secrets/private.pem |
Yes | |
worker-host | Full host where worker is. | http://localhost:8000 |
No |
Note: Don't use Foulkon proxy without certificate in production.
Logger | Logger configuration properties. | Values | Default | Optional |
---|---|---|---|---|
type | Type of logger to use. | file , default |
default |
Yes |
level | Log level. | debug , info , warning , error , fatal , panic |
info |
Yes |
dir | Full path where log file is. It won't be autogenerated. | /tmp/foulkon.log |
No if logger type is file |
Resources | Resources managed by proxy | Values |
---|---|---|
id | Unique identifier for this resource. | my-resource-id |
host | Full URL for destination host. | https://my-resource-server/ |
url | Relative path for destination host. | /get |
method | HTTP verb. | GET |
urn | URN representation for this resource. | urn:ews:example:instance1:resource/get |
action | Action related to this resource. | example:get |
Note: All parameters are mandatory.