Skip to content

Error creating a new tailnet. #86

@nack0

Description

@nack0

Hi,
I'm having problems creating a new tailnet. I was unable to track down the problem. Apologies if it's something obvious and not an ionscale issue. Thank you for anytime you spend on this.

Info:

Version: 0.18.0
Platform: Docker
DNS Provider: Cloudflare
OIDC Provider: Google

Error:

> de ionscale ionscale tailnets create --name "cloud"
Error: unavailable: dial tcp [::1]:8443: connect: connection refused

docker-compose.yaml:

services:
    ionscale:
        container_name: ionscale
        restart: unless-stopped
        networks:
          ionscale_nw:
        env_file: ".env"     
        volumes:
            - ./config.yaml:/etc/ionscale/config.yaml
            - ./data:/data
            - ./ionscale.log:/var/log/ionscale.log
        ports:
            - 443:443
            - 3478:3478/udp
            - 8443:8443
        image: ghcr.io/jsiebens/ionscale:latest
        command: server --config /etc/ionscale/config.yaml

networks:
  ionscale_nw:
     external: true

config.yaml:

listen_addr: ":8080"               
stun_listen_addr: ":3478"          
metrics_listen_addr: ":9091"       
public_addr: "${IONSCALE_DOMAIN}:443"      
stun_public_addr: "${IONSCALE_DOMAIN}:3478" 

tls:
  disable: false                   
  force_https: true                
  acme: true                       
  acme_email: "${IONSCALE_ACME_EMAIL}"
  acme_ca: "https://acme-staging-v02.api.letsencrypt.org/directory" # STAGING 
  # acme_ca: "https://acme-v02.api.letsencrypt.org/directory"  
  acme_path: "./data"              

database:
  url: "/data/ionscale.db?_pragma=busy_timeout(5000)&_pragma=journal_mode(WAL)"

derp:
  server:
    disabled: false                
    region_id: 1000                
    region_code: "ionscale"        
    region_name: "ionscale Embedded DERP"

keys:
  system_admin_key: "${IONSCALE_SYSTEM_ADMIN_KEY}"

poll_net:
  keep_alive_interval: "60s"

auth:
  provider:
    issuer: "https://accounts.google.com"     
    client_id: "${OIDC_CLIENT_ID}"            
    client_secret: "${OIDC_CLIENT_SECRET}" 
    additional_scopes: ["profile", "email"] 

  system_admins:
    emails: ["${IONSCALE_ACME_EMAIL}"]

dns:
  magic_dns_suffix: "${IONSCALE_DOMAIN}"

  provider:
    name: "cloudflare"              
    zone: "${IONSCALE_DOMAIN}"      
    config:                         
      auth_token: "${DNS_API_TOKEN}"

logging:
  level: "debug"                     
  format: "text"                    
  file: "/var/log/ionscale.log"    

ionscale.log:

2025-06-04T21:50:55.301Z	INFO	ionscale	server/server.go:49	Starting ionscale server
2025-06-04T21:50:55.303Z	DEBUG	ionscale.db	database/database.go:171	Statement executed	{"sql": "SELECT count(*) FROM sqlite_master WHERE type='table' AND name=\"migrations\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00004268}
2025-06-04T21:50:55.303Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT count(*) FROM `migrations` WHERE id = \"202209070900\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00006708, "rows": 1}
2025-06-04T21:50:55.303Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT count(*) FROM `migrations` WHERE id = \"202209251530\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00003768, "rows": 1}
2025-06-04T21:50:55.303Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT count(*) FROM `migrations` WHERE id = \"202209251532a\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00003176, "rows": 1}
2025-06-04T21:50:55.304Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT count(*) FROM `migrations` WHERE id = \"202209251532b\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00002748, "rows": 1}
2025-06-04T21:50:55.304Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT count(*) FROM `migrations` WHERE id = \"202210040828\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00002584, "rows": 1}
2025-06-04T21:50:55.304Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT count(*) FROM `migrations` WHERE id = \"202210070814\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00003264, "rows": 1}
2025-06-04T21:50:55.304Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT count(*) FROM `migrations` WHERE id = \"202210080700\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.000050681, "rows": 1}
2025-06-04T21:50:55.304Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT count(*) FROM `migrations` WHERE id = \"202211031100\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00003104, "rows": 1}
2025-06-04T21:50:55.304Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT count(*) FROM `migrations` WHERE id = \"202212201300\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00002648, "rows": 1}
2025-06-04T21:50:55.304Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT count(*) FROM `migrations` WHERE id = \"202212270800\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00002852, "rows": 1}
2025-06-04T21:50:55.304Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT count(*) FROM `migrations` WHERE id = \"202312271200\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00002868, "rows": 1}
2025-06-04T21:50:55.304Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT count(*) FROM `migrations` WHERE id = \"202312290900\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.000026041, "rows": 1}
2025-06-04T21:50:55.304Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT count(*) FROM `migrations` WHERE id = \"202401061400\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00002584, "rows": 1}
2025-06-04T21:50:55.304Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT count(*) FROM `migrations` WHERE id = \"202402120800\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00002508, "rows": 1}
2025-06-04T21:50:55.304Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT count(*) FROM `migrations` WHERE id = \"202403130830\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00002444, "rows": 1}
2025-06-04T21:50:55.304Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT count(*) FROM `migrations` WHERE id = \"202502150830\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00002708, "rows": 1}
2025-06-04T21:50:55.304Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT `server_configs`.`key`,`server_configs`.`value` FROM `server_configs` WHERE key = \"control_keys\" LIMIT 1", "start_time": "2025-06-04T21:50:55Z", "duration": 0.000167001, "rows": 1}
2025-06-04T21:50:55.304Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT `server_configs`.`key`,`server_configs`.`value` FROM `server_configs` WHERE key = \"jwks\" LIMIT 1", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00006184, "rows": 1}
2025-06-04T21:50:55.305Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT `server_configs`.`key`,`server_configs`.`value` FROM `server_configs` WHERE key = \"control_keys\" LIMIT 1", "start_time": "2025-06-04T21:50:55Z", "duration": 0.00012064, "rows": 1}
2025-06-04T21:50:55.305Z	INFO	ionscale.certmagic.maintenance	certmagic@v0.20.0/maintain.go:63	started background certificate maintenance	{"cache": "0x4000515980"}
2025-06-04T21:50:55.305Z	WARN	ionscale.certmagic	certmagic@v0.20.0/certificates.go:239	stapling OCSP	{"error": "no OCSP stapling for [[REDACTED]]: no OCSP server specified in certificate", "identifiers": ["[REDACTED]"]}
2025-06-04T21:50:55.305Z	DEBUG	ionscale.certmagic	certmagic@v0.20.0/cache.go:271	added certificate to cache	{"subjects": [[REDACTED]], "expiration": "2025-09-02T20:18:19.000Z", "managed": true, "issuer_key": "acme-staging-v02.api.letsencrypt.org-directory", "hash": "8a79354e6f73b115f2c2c796d059d8431f98ddc0ad8fed94ced10b3ec27a2de8", "cache_size": 1, "cache_capacity": 0}
2025-06-04T21:50:55.307Z	DEBUG	ionscale.db	database/database.go:173	Statement executed	{"sql": "SELECT `machines`.`id`,`machines`.`name`,`machines`.`name_idx`,`machines`.`machine_key`,`machines`.`node_key`,`machines`.`disco_key`,`machines`.`ephemeral`,`machines`.`registered_tags`,`machines`.`tags`,`machines`.`key_expiry_disabled`,`machines`.`authorized`,`machines`.`use_os_hostname`,`machines`.`host_info`,`machines`.`endpoints`,`machines`.`allow_ips`,`machines`.`auto_allow_ips`,`machines`.`ipv4`,`machines`.`ipv6`,`machines`.`created_at`,`machines`.`expires_at`,`machines`.`last_seen`,`machines`.`user_id`,`machines`.`tailnet_id` FROM `machines` WHERE ephemeral = true AND last_seen < \"2025-06-04 21:20:55.305\"", "start_time": "2025-06-04T21:50:55Z", "duration": 0.001695286, "rows": 0}
2025-06-04T21:50:55.347Z	WARN	ionscale	dns/provider.go:71	Builtin cloudflare DNS plugin is deprecated and will be removed in a future release.
2025-06-04T21:50:55.354Z	INFO	ionscale	server/server.go:248	TLS is enabled with ACME	{"domain": "[REDACTED]"}
2025-06-04T21:50:55.354Z	INFO	ionscale	server/server.go:249	Server is running	{"url": "[REDACTED]", "addr": ":8080", "metrics_addr": ":9091", "stun_addr": ":3478"}
2025-06-04T21:51:01.840Z	INFO	ionscale	server/server.go:224	Shutting down ionscale server

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions