pluja / blogo

A lightweight blogging engine that backs itself up to Nostr!
https://blogo.site
MIT License
137 stars 14 forks source link

[Bug]: I think the last step SSL isn't happening #25

Closed GreenArrowlol closed 2 months ago

GreenArrowlol commented 2 months ago

What happened?

blog.arrowtan.site is showing me an Apache2 Default page image

I changed ports because other programs are already using it

services:
  caddy:
    image: lucaslorentz/caddy-docker-proxy:latest
    container_name: caddy
    ports:
      - "81:81"
      - "444:444"
    networks:
      - caddy
    restart: unless-stopped
    volumes:
      - caddy_data:/data
      - /var/run/docker.sock:/var/run/docker.sock:ro

  blogo:
    image: pluja/blogo:latest
    container_name: blogo
    restart: unless-stopped
    networks:
      - caddy
    volumes:
      - ./articles:/app/articles
    environment:
      # CONFIG
      BLOGO_TITLE: ArrowBlog
      BLOGO_DESCRIPTION: The Best blog for Minecraft server creation
      BLOGO_KEYWORDS: blog,open source, Minecraft, java, Minecraft java, best
      BLOGO_URL: blog.arrowtan.site
      #BLOGO_ANALYTICS: '<script defer src="https://my.analytics.site/script.js"></script>'
      TIMEZONE: UTC

      # NOSTR CONFIG
      PUBLISH_TO_NOSTR: false
      #NOSTR_NSEC: ""
      #NOSTR_RELAYS: "wss://nostr-pub.wellorder.net,wss://relay.damus.io,wss://relay.nostr.band"

    labels:
      caddy: REPLACE_WITH_YOUR_DOMAIN
      caddy.reverse_proxy: "{{upstreams 3000}}"

networks:
  caddy:
    name: caddy

volumes:
  caddy_data:

Operating System

Linux

Relevant log output

caddy  | {"level":"info","ts":1725726979.447248,"logger":"docker-proxy","msg":"Running caddy proxy server"}
caddy  | {"level":"info","ts":1725726979.4498396,"logger":"admin","msg":"admin endpoint started","address":"localhost:2019","enforce_origin":false,"origins":["//localhost:2019","//[::1]:2019","//127.0.0.1:2019"]}
caddy  | {"level":"info","ts":1725726979.4504545,"msg":"autosaved config (load with --resume flag)","file":"/config/caddy/autosave.json"}
caddy  | {"level":"info","ts":1725726979.4505758,"logger":"docker-proxy","msg":"Running caddy proxy controller"}
caddy  | {"level":"info","ts":1725726979.452353,"logger":"docker-proxy","msg":"Start","CaddyfilePath":"","EnvFile":"","LabelPrefix":"caddy","PollingInterval":30,"ProxyServiceTasks":true,"ProcessCaddyfile":true,"ScanStoppedContainers":false,"IngressNetworks":"[]","DockerSockets":[""],"DockerCertsPath":[""],"DockerAPIsVersion":[""]}
caddy  | {"level":"info","ts":1725726979.4532404,"logger":"docker-proxy","msg":"Connecting to docker events","DockerSocket":""}
caddy  | {"level":"info","ts":1725726979.4534605,"logger":"docker-proxy","msg":"Caddy ContainerID","ID":"5057fdc9668c50fb5e2ddba27e42b66e6997b698393405bbb4c643bae4dd9e9d"}
caddy  | {"level":"info","ts":1725726979.4585245,"logger":"docker-proxy","msg":"IngressNetworksMap","ingres":"map[caddy:true d28d7a8948738bc2f20fc7f836a2b6073b1f5d7ce931c0f70d8a8d439e32dfc9:true]"}
caddy  | {"level":"info","ts":1725726979.4817395,"logger":"docker-proxy","msg":"Swarm is available","new":false}
caddy  | {"level":"info","ts":1725726979.49019,"logger":"docker-proxy","msg":"New Caddyfile","caddyfile":"REPLACE_WITH_YOUR_DOMAIN {\n\treverse_proxy 172.19.0.2:3000\n}\n"}
caddy  | {"level":"info","ts":1725726979.4909768,"logger":"docker-proxy","msg":"New Config JSON","json":"{\"apps\":{\"http\":{\"servers\":{\"srv0\":{\"listen\":[\":443\"],\"routes\":[{\"match\":[{\"host\":[\"replace_with_your_domain\"]}],\"handle\":[{\"handler\":\"subroute\",\"routes\":[{\"handle\":[{\"handler\":\"reverse_proxy\",\"upstreams\":[{\"dial\":\"172.19.0.2:3000\"}]}]}]}],\"terminal\":true}]}}}}}"}
caddy  | {"level":"info","ts":1725726979.4911504,"logger":"docker-proxy","msg":"Sending configuration to","server":"localhost"}
caddy  | {"level":"info","ts":1725726979.4929879,"logger":"admin.api","msg":"received request","method":"POST","host":"localhost:2019","uri":"/load","remote_ip":"127.0.0.1","remote_port":"57866","headers":{"Accept-Encoding":["gzip"],"Content-Length":["302"],"Content-Type":["application/json"],"User-Agent":["Go-http-client/1.1"]}}
caddy  | {"level":"info","ts":1725726979.4940803,"logger":"admin","msg":"admin endpoint started","address":"localhost:2019","enforce_origin":false,"origins":["//localhost:2019","//[::1]:2019","//127.0.0.1:2019"]}
caddy  | {"level":"info","ts":1725726979.4946826,"logger":"http.auto_https","msg":"server is listening only on the HTTPS port but has no TLS connection policies; adding one to enable TLS","server_name":"srv0","https_port":443}
caddy  | {"level":"info","ts":1725726979.4947243,"logger":"http.auto_https","msg":"enabling automatic HTTP->HTTPS redirects","server_name":"srv0"}
caddy  | {"level":"info","ts":1725726979.4953644,"logger":"http","msg":"enabling HTTP/3 listener","addr":":443"}
caddy  | {"level":"info","ts":1725726979.4956794,"msg":"failed to sufficiently increase receive buffer size (was: 208 kiB, wanted: 7168 kiB, got: 416 kiB). See https://github.com/quic-go/quic-go/wiki/UDP-Buffer-Sizes for details."}
caddy  | {"level":"info","ts":1725726979.4960957,"logger":"http.log","msg":"server running","name":"srv0","protocols":["h1","h2","h3"]}
caddy  | {"level":"info","ts":1725726979.4962761,"logger":"http.log","msg":"server running","name":"remaining_auto_https_redirects","protocols":["h1","h2","h3"]}
caddy  | {"level":"info","ts":1725726979.496296,"logger":"http","msg":"enabling automatic TLS certificate management","domains":["replace_with_your_domain"]}
caddy  | {"level":"info","ts":1725726979.4967797,"msg":"autosaved config (load with --resume flag)","file":"/config/caddy/autosave.json"}
caddy  | {"level":"info","ts":1725726979.496797,"logger":"admin.api","msg":"load complete"}
caddy  | {"level":"info","ts":1725726979.497307,"logger":"tls.cache.maintenance","msg":"started background certificate maintenance","cache":"0xc00063b700"}
caddy  | {"level":"info","ts":1725726979.4982316,"logger":"tls.obtain","msg":"acquiring lock","identifier":"replace_with_your_domain"}
caddy  | {"level":"info","ts":1725726979.498427,"logger":"admin","msg":"stopped previous server","address":"localhost:2019"}
caddy  | {"level":"info","ts":1725726979.5048838,"logger":"tls","msg":"cleaning storage unit","storage":"FileStorage:/data/caddy"}
caddy  | {"level":"info","ts":1725726979.5053992,"logger":"tls","msg":"finished cleaning storage units"}
caddy  | {"level":"info","ts":1725726979.5057583,"logger":"docker-proxy","msg":"Successfully configured","server":"localhost"}
caddy  | {"level":"info","ts":1725726979.5092769,"logger":"tls.obtain","msg":"lock acquired","identifier":"replace_with_your_domain"}
caddy  | {"level":"info","ts":1725726979.5095506,"logger":"tls.obtain","msg":"obtaining certificate","identifier":"replace_with_your_domain"}
caddy  | {"level":"info","ts":1725726979.717689,"logger":"http","msg":"waiting on internal rate limiter","identifiers":["replace_with_your_domain"],"ca":"https://acme-v02.api.letsencrypt.org/directory","account":""}
caddy  | {"level":"info","ts":1725726979.7178848,"logger":"http","msg":"done waiting on internal rate limiter","identifiers":["replace_with_your_domain"],"ca":"https://acme-v02.api.letsencrypt.org/directory","account":""}
caddy  | {"level":"info","ts":1725726979.7181284,"logger":"http","msg":"using ACME account","account_id":"https://acme-v02.api.letsencrypt.org/acme/acct/1934097976","account_contact":[]}
caddy  | {"level":"error","ts":1725726979.757686,"logger":"tls.obtain","msg":"could not get certificate from issuer","identifier":"replace_with_your_domain","issuer":"acme-v02.api.letsencrypt.org-directory","error":"HTTP 400 urn:ietf:params:acme:error:rejectedIdentifier - Invalid identifiers requested :: Cannot issue for \"replace_with_your_domain\": Domain name contains an invalid character"}caddy  | {"level":"error","ts":1725726979.757904,"logger":"tls.obtain","msg":"will retry","error":"[replace_with_your_domain] Obtain: [replace_with_your_domain] creating new order: attempt 1: https://acme-v02.api.letsencrypt.org/acme/new-order: HTTP 400 urn:ietf:params:acme:error:rejectedIdentifier - Invalid identifiers requested :: Cannot issue for \"replace_with_your_domain\": Domain name contains an invalid character (ca=https://acme-v02.api.letsencrypt.org/directory)","attempt":1,"retrying_in":60,"elapsed":0.248559853,"max_duration":2592000}
caddy  | {"level":"info","ts":1725727039.759403,"logger":"tls.obtain","msg":"obtaining certificate","identifier":"replace_with_your_domain"}
caddy  | {"level":"info","ts":1725727039.9771721,"logger":"http","msg":"using ACME account","account_id":"https://acme-staging-v02.api.letsencrypt.org/acme/acct/162373633","account_contact":[]}
caddy  | {"level":"error","ts":1725727040.0174134,"logger":"tls.obtain","msg":"could not get certificate from issuer","identifier":"replace_with_your_domain","issuer":"acme-v02.api.letsencrypt.org-directory","error":"HTTP 400 urn:ietf:params:acme:error:rejectedIdentifier - Invalid identifiers requested :: Cannot issue for \"replace_with_your_domain\": Domain name contains an invalid character"}
caddy  | {"level":"error","ts":1725727040.017662,"logger":"tls.obtain","msg":"will retry","error":"[replace_with_your_domain] Obtain: [replace_with_your_domain] creating new order: attempt 1: https://acme-staging-v02.api.letsencrypt.org/acme/new-order: HTTP 400 urn:ietf:params:acme:error:rejectedIdentifier - Invalid identifiers requested :: Cannot issue for \"replace_with_your_domain\": Domain name contains an invalid character (ca=https://acme-staging-v02.api.letsencrypt.org/directory)","attempt":2,"retrying_in":120,"elapsed":60.508310099,"max_duration":2592000}
caddy  | {"level":"info","ts":1725727160.0185637,"logger":"tls.obtain","msg":"obtaining certificate","identifier":"replace_with_your_domain"}
caddy  | {"level":"info","ts":1725727160.0225666,"logger":"http","msg":"using ACME account","account_id":"https://acme-staging-v02.api.letsencrypt.org/acme/acct/162373633","account_contact":[]}
caddy  | {"level":"error","ts":1725727160.1004558,"logger":"tls.obtain","msg":"could not get certificate from issuer","identifier":"replace_with_your_domain","issuer":"acme-v02.api.letsencrypt.org-directory","error":"HTTP 400 urn:ietf:params:acme:error:rejectedIdentifier - Invalid identifiers requested :: Cannot issue for \"replace_with_your_domain\": Domain name contains an invalid character"}
caddy  | {"level":"error","ts":1725727160.1006048,"logger":"tls.obtain","msg":"will retry","error":"[replace_with_your_domain] Obtain: [replace_with_your_domain] creating new order: attempt 1: https://acme-staging-v02.api.letsencrypt.org/acme/new-order: HTTP 400 urn:ietf:params:acme:error:rejectedIdentifier - Invalid identifiers requested :: Cannot issue for \"replace_with_your_domain\": Domain name contains an invalid character (ca=https://acme-staging-v02.api.letsencrypt.org/directory)","attempt":3,"retrying_in":120,"elapsed":180.591255105,"max_duration":2592000}
caddy  | {"level":"info","ts":1725727224.0502582,"msg":"shutting down apps, then terminating","signal":"SIGTERM"}
caddy  | {"level":"warn","ts":1725727224.0506155,"msg":"exiting; byeee!! 👋","signal":"SIGTERM"}
caddy  | {"level":"info","ts":1725727224.0509567,"logger":"http","msg":"servers shutting down with eternal grace period"}
caddy  | {"level":"info","ts":1725727224.052752,"logger":"tls.obtain","msg":"releasing lock","identifier":"replace_with_your_domain"}
caddy  | {"level":"error","ts":1725727224.053127,"logger":"tls","msg":"job failed","error":"replace_with_your_domain: obtaining certificate: context canceled"}
caddy  | {"level":"info","ts":1725727224.0548694,"logger":"admin","msg":"stopped previous server","address":"localhost:2019"}
caddy  | {"level":"info","ts":1725727224.054927,"msg":"shutdown complete","signal":"SIGTERM","exit_code":0}
caddy  | {"level":"info","ts":1725727385.8484519,"logger":"docker-proxy","msg":"Running caddy proxy server"}
caddy  | {"level":"info","ts":1725727385.8636382,"logger":"admin","msg":"admin endpoint started","address":"localhost:2019","enforce_origin":false,"origins":["//[::1]:2019","//127.0.0.1:2019","//localhost:2019"]}
caddy  | {"level":"info","ts":1725727385.8647716,"msg":"autosaved config (load with --resume flag)","file":"/config/caddy/autosave.json"}
caddy  | {"level":"info","ts":1725727385.8647888,"logger":"docker-proxy","msg":"Running caddy proxy controller"}
caddy  | {"level":"info","ts":1725727385.8750813,"logger":"docker-proxy","msg":"Start","CaddyfilePath":"","EnvFile":"","LabelPrefix":"caddy","PollingInterval":30,"ProxyServiceTasks":true,"ProcessCaddyfile":true,"ScanStoppedContainers":false,"IngressNetworks":"[]","DockerSockets":[""],"DockerCertsPath":[""],"DockerAPIsVersion":[""]}
caddy  | {"level":"info","ts":1725727385.8815227,"logger":"docker-proxy","msg":"Connecting to docker events","DockerSocket":""}
caddy  | {"level":"info","ts":1725727385.8854623,"logger":"docker-proxy","msg":"Caddy ContainerID","ID":"5057fdc9668c50fb5e2ddba27e42b66e6997b698393405bbb4c643bae4dd9e9d"}
caddy  | {"level":"info","ts":1725727385.9072468,"logger":"docker-proxy","msg":"IngressNetworksMap","ingres":"map[caddy:true d28d7a8948738bc2f20fc7f836a2b6073b1f5d7ce931c0f70d8a8d439e32dfc9:true]"}
caddy  | {"level":"info","ts":1725727385.9781008,"logger":"docker-proxy","msg":"Swarm is available","new":false}
caddy  | {"level":"info","ts":1725727386.0077407,"logger":"docker-proxy","msg":"New Caddyfile","caddyfile":"REPLACE_WITH_YOUR_DOMAIN {\n\treverse_proxy 172.19.0.3:3000\n}\n"}
caddy  | {"level":"info","ts":1725727386.0093062,"logger":"docker-proxy","msg":"New Config JSON","json":"{\"apps\":{\"http\":{\"servers\":{\"srv0\":{\"listen\":[\":443\"],\"routes\":[{\"match\":[{\"host\":[\"replace_with_your_domain\"]}],\"handle\":[{\"handler\":\"subroute\",\"routes\":[{\"handle\":[{\"handler\":\"reverse_proxy\",\"upstreams\":[{\"dial\":\"172.19.0.3:3000\"}]}]}]}],\"terminal\":true}]}}}}}"}
caddy  | {"level":"info","ts":1725727386.0096831,"logger":"docker-proxy","msg":"Sending configuration to","server":"localhost"}
caddy  | {"level":"info","ts":1725727386.0139391,"logger":"admin.api","msg":"received request","method":"POST","host":"localhost:2019","uri":"/load","remote_ip":"127.0.0.1","remote_port":"50576","headers":{"Accept-Encoding":["gzip"],"Content-Length":["302"],"Content-Type":["application/json"],"User-Agent":["Go-http-client/1.1"]}}
caddy  | {"level":"info","ts":1725727386.0155969,"logger":"admin","msg":"admin endpoint started","address":"localhost:2019","enforce_origin":false,"origins":["//localhost:2019","//[::1]:2019","//127.0.0.1:2019"]}
caddy  | {"level":"info","ts":1725727386.0184445,"logger":"tls.cache.maintenance","msg":"started background certificate maintenance","cache":"0xc000850800"}
caddy  | {"level":"info","ts":1725727386.0215187,"logger":"http.auto_https","msg":"server is listening only on the HTTPS port but has no TLS connection policies; adding one to enable TLS","server_name":"srv0","https_port":443}
caddy  | {"level":"info","ts":1725727386.0217674,"logger":"http.auto_https","msg":"enabling automatic HTTP->HTTPS redirects","server_name":"srv0"}
caddy  | {"level":"info","ts":1725727386.0245774,"logger":"http","msg":"enabling HTTP/3 listener","addr":":443"}
caddy  | {"level":"info","ts":1725727386.0253062,"msg":"failed to sufficiently increase receive buffer size (was: 208 kiB, wanted: 7168 kiB, got: 416 kiB). See https://github.com/quic-go/quic-go/wiki/UDP-Buffer-Sizes for details."}
caddy  | {"level":"info","ts":1725727386.0267305,"logger":"http.log","msg":"server running","name":"srv0","protocols":["h1","h2","h3"]}
caddy  | {"level":"info","ts":1725727386.0271192,"logger":"http.log","msg":"server running","name":"remaining_auto_https_redirects","protocols":["h1","h2","h3"]}
caddy  | {"level":"info","ts":1725727386.0273468,"logger":"http","msg":"enabling automatic TLS certificate management","domains":["replace_with_your_domain"]}
caddy  | {"level":"info","ts":1725727386.0289483,"logger":"tls.obtain","msg":"acquiring lock","identifier":"replace_with_your_domain"}
caddy  | {"level":"info","ts":1725727386.0308046,"msg":"autosaved config (load with --resume flag)","file":"/config/caddy/autosave.json"}
caddy  | {"level":"info","ts":1725727386.0308714,"logger":"admin.api","msg":"load complete"}
caddy  | {"level":"info","ts":1725727386.0354495,"logger":"tls.obtain","msg":"lock acquired","identifier":"replace_with_your_domain"}
caddy  | {"level":"info","ts":1725727386.035599,"logger":"tls.obtain","msg":"obtaining certificate","identifier":"replace_with_your_domain"}
caddy  | {"level":"info","ts":1725727386.0381591,"logger":"http","msg":"waiting on internal rate limiter","identifiers":["replace_with_your_domain"],"ca":"https://acme-v02.api.letsencrypt.org/directory","account":""}
caddy  | {"level":"info","ts":1725727386.0381896,"logger":"http","msg":"done waiting on internal rate limiter","identifiers":["replace_with_your_domain"],"ca":"https://acme-v02.api.letsencrypt.org/directory","account":""}
caddy  | {"level":"info","ts":1725727386.038214,"logger":"http","msg":"using ACME account","account_id":"https://acme-v02.api.letsencrypt.org/acme/acct/1934097976","account_contact":[]}
caddy  | {"level":"info","ts":1725727386.038586,"logger":"admin","msg":"stopped previous server","address":"localhost:2019"}
caddy  | {"level":"info","ts":1725727386.0399113,"logger":"docker-proxy","msg":"Successfully configured","server":"localhost"}
caddy  | {"level":"info","ts":1725727386.0421298,"logger":"tls","msg":"storage cleaning happened too recently; skipping for now","storage":"FileStorage:/data/caddy","instance":"0114b7ae-1a08-4cd6-aa97-dec566e4e269","try_again":1725813786.0421278,"try_again_in":86399.999999464}
caddy  | {"level":"info","ts":1725727386.0422196,"logger":"tls","msg":"finished cleaning storage units"}
caddy  | {"level":"error","ts":1725727386.183281,"logger":"tls.obtain","msg":"could not get certificate from issuer","identifier":"replace_with_your_domain","issuer":"acme-v02.api.letsencrypt.org-directory","error":"HTTP 400 urn:ietf:params:acme:error:rejectedIdentifier - Invalid identifiers requested :: Cannot issue for \"replace_with_your_domain\": Domain name contains an invalid character"}caddy  | {"level":"error","ts":1725727386.1833887,"logger":"tls.obtain","msg":"will retry","error":"[replace_with_your_domain] Obtain: [replace_with_your_domain] creating new order: attempt 1: https://acme-v02.api.letsencrypt.org/acme/new-order: HTTP 400 urn:ietf:params:acme:error:rejectedIdentifier - Invalid identifiers requested :: Cannot issue for \"replace_with_your_domain\": Domain name contains an invalid character (ca=https://acme-v02.api.letsencrypt.org/directory)","attempt":1,"retrying_in":60,"elapsed":0.147905871,"max_duration":2592000}
caddy  | {"level":"info","ts":1725727446.1869254,"logger":"tls.obtain","msg":"obtaining certificate","identifier":"replace_with_your_domain"}
caddy  | {"level":"info","ts":1725727446.209523,"logger":"http","msg":"using ACME account","account_id":"https://acme-staging-v02.api.letsencrypt.org/acme/acct/162373633","account_contact":[]}
caddy  | {"level":"error","ts":1725727446.4138446,"logger":"tls.obtain","msg":"could not get certificate from issuer","identifier":"replace_with_your_domain","issuer":"acme-v02.api.letsencrypt.org-directory","error":"HTTP 400 urn:ietf:params:acme:error:rejectedIdentifier - Invalid identifiers requested :: Cannot issue for \"replace_with_your_domain\": Domain name contains an invalid character"}
caddy  | {"level":"error","ts":1725727446.414191,"logger":"tls.obtain","msg":"will retry","error":"[replace_with_your_domain] Obtain: [replace_with_your_domain] creating new order: attempt 1: https://acme-staging-v02.api.letsencrypt.org/acme/new-order: HTTP 400 urn:ietf:params:acme:error:rejectedIdentifier - Invalid identifiers requested :: Cannot issue for \"replace_with_your_domain\": Domain name contains an invalid character (ca=https://acme-staging-v02.api.letsencrypt.org/directory)","attempt":2,"retrying_in":120,"elapsed":60.378483148,"max_duration":2592000}
caddy  | {"level":"info","ts":1725727566.4153547,"logger":"tls.obtain","msg":"obtaining certificate","identifier":"replace_with_your_domain"}
caddy  | {"level":"info","ts":1725727566.4196856,"logger":"http","msg":"using ACME account","account_id":"https://acme-staging-v02.api.letsencrypt.org/acme/acct/162373633","account_contact":[]}
caddy  | {"level":"error","ts":1725727566.5025473,"logger":"tls.obtain","msg":"could not get certificate from issuer","identifier":"replace_with_your_domain","issuer":"acme-v02.api.letsencrypt.org-directory","error":"HTTP 400 urn:ietf:params:acme:error:rejectedIdentifier - Invalid identifiers requested :: Cannot issue for \"replace_with_your_domain\": Domain name contains an invalid character"}
caddy  | {"level":"error","ts":1725727566.5028052,"logger":"tls.obtain","msg":"will retry","error":"[replace_with_your_domain] Obtain: [replace_with_your_domain] creating new order: attempt 1: https://acme-staging-v02.api.letsencrypt.org/acme/new-order: HTTP 400 urn:ietf:params:acme:error:rejectedIdentifier - Invalid identifiers requested :: Cannot issue for \"replace_with_your_domain\": Domain name contains an invalid character (ca=https://acme-staging-v02.api.letsencrypt.org/directory)","attempt":3,"retrying_in":120,"elapsed":180.467275676,"max_duration":2592000}

Code of Conduct

GreenArrowlol commented 2 months ago

sorry I totally forgot to update labels: caddy: REPLACE_WITH_YOUR_DOMAIN too I only see one

GreenArrowlol commented 2 months ago

seems like it needs to be 80 and 443 and left unchanged.