-
-
Notifications
You must be signed in to change notification settings - Fork 54
Configurations
Here's a simple example of a configuration file:
providers:
docker:
local: $DOCKER_HOST
The config.yml
file is divided into several sections:
- autocert: Handles SSL certificate settings. Optional.
-
entrypoint: Manages GoDoxy entrypoints (port 80 and 443). Optional.
- middlewares: Defines middleware settings. Optional.
- access_log: Configures access logs. Optional.
-
providers: Sets up orchestrators. This is required.
- include: Includes route configuration files. Optional.
- docker: Configures Docker providers. Optional.
- notification: Configures notifications for health monitoring. Optional.
- match_domains: List of domains to match. Optional.
- homepage: Configures homepage settings. Optional.
For SSL certificates, you can either use an existing one or set up automatic certificates.
autocert:
provider: local
# path relative to /app
cert_path: certs/cert.crt
key_path: certs/priv.key
autocert:
provider: cloudflare
email: [email protected]
domains:
- "*.yourdomain.com"
options:
auth_token: your-zone-api-token
Check on WebUI or Supported-DNS‐01-Providers
If you encounter issues, try these steps:
-
Set
LEGO_DISABLE_CNAME_SUPPORT=1
if your domain has a CNAME record. -
Use a different DNS server.
services: app: container_name: godoxy ... environment: - LEGO_DISABLE_CNAME_SUPPORT=1 dns: - 1.1.1.1 - 1.1.1.2
This section defines how GoDoxy handles incoming requests.
entrypoint:
middlewares:
- use: CIDRWhitelist
allow:
- "127.0.0.1"
- "10.0.0.0/8"
- "192.168.0.0/16"
status: 403
message: "Forbidden"
access_log:
format: combined
path: /app/logs/access.log
filters: ...
fields: ...
This part defines how your application should interact with other services.
- include: Includes static route configuration files. Optional.
- docker: Configures Docker providers. Optional.
- notification: Configures notifications for health monitoring. Optional.
providers:
include:
- file1.yml
- file2.yml
docker:
local: $DOCKER_HOST
remote-1: tcp://10.0.2.1:2375
remote-2: ssh://root:[email protected]
notification:
- name: gotify
provider: gotify
url: https://gotify.example.com
token: your-token
Specify which domains your application should respond to.
match_domains:
- yourdomain.com
- subdomain.yourapp.com
See also: Certificates and domain matching
Configure how GoDoxy handles the WebUI App dashboard.
homepage:
use_default_categories: true
To set up multiple Docker nodes, run the following docker compose file on the other node:
docker-proxy:
container_name: docker-proxy
image: tecnativa/docker-socket-proxy
privileged: true
environment:
- ALLOW_START=1
- ALLOW_STOP=1
- ALLOW_RESTARTS=1
- CONTAINERS=1
- EVENTS=1
- PING=1
- POST=1
- VERSION=1
volumes:
- /var/run/docker.sock:/var/run/docker.sock
restart: always
ports:
- <ip>:2375:2375
# or less secure way
# - 2375:2375
Add this to your config.yml
under providers.docker
:
providers:
docker:
local: $DOCKER_HOST
server-1: tcp://<ip>:2375 # add it here