Closed hakarune closed 3 years ago
@datdamnzotz is our resident docker wizard and we can (typically) offer better troubleshooting over on the discord server just because a back and forth dialogue is easier even if we're not all on at the same time. The docker should be handling all the datomic setup for you... so I'm not sure why it's throwing an error.
@hakarune In your example YAML file you omitted the password from the Datomic URL
Your example file:
- DATOMIC_URL=datomic:free://datomic:4334/orcpub
The project example:
DATOMIC_URL: datomic:free://datomic:4334/orcpub?password=yourpassword
yourpassword
should match the DATOMIC_PASSWORD
Post your complete docker compose and we might be able to help you -
datomic: Name does not resolve: datomic:4335"
points to the datomic container isn't available via the network or simply isn't running.
Refer to https://github.com/Orcpub/orcpub/wiki/How-To:-Run-Orcpub-Docker-and-Traefik-2.x https://github.com/Orcpub/orcpub/blob/develop/README.md and https://github.com/Orcpub/orcpub/blob/develop/docker-compose.yaml
@hakarune In your example YAML file you omitted the password from the Datomic URL
Your example file:
- DATOMIC_URL=datomic:free://datomic:4334/orcpub
The project example:
DATOMIC_URL: datomic:free://datomic:4334/orcpub?password=yourpassword
yourpassword
should match theDATOMIC_PASSWORD
it was giving the error of invalid character with the "?" in the URL
Post your complete docker compose and we might be able to help you -
datomic: Name does not resolve: datomic:4335"
points to the datomic container isn't available via the network or simply isn't running.
Refer to https://github.com/Orcpub/orcpub/wiki/How-To:-Run-Orcpub-Docker-and-Traefik-2.x https://github.com/Orcpub/orcpub/blob/develop/README.md and https://github.com/Orcpub/orcpub/blob/develop/docker-compose.yaml
That is the whole compose file...just omitted login infos Isn't DATOMIC part of the docker? I thought it was a full-package docker that has everything. Do I need add Datomic to the compose and run it as a separate docker for Datomic?
Well THARRRs your problem. Your missing the database container (and web for that matter) Datomic is the database it needs a section like there is in the example found here under 'datomic' You'll need the 'web' container as well. https://github.com/Orcpub/orcpub/blob/develop/docker-compose.yaml <- this is not a copy paste into Portainer as you have to create the networks first.
It is really intended to be used from the docker cmd line non-swarm mode.
-OR-
You can ditch ngnix container if you want/already have traefix https://github.com/Orcpub/orcpub/wiki/How-To:-Run-Orcpub-Docker-and-Traefik-2.x <-- this is just a copy paste into Portainer as the networks are defined at the bottom.
Well THARRRs your problem. Your missing the database container (and web for that matter) Datomic is the database it needs a section like there is in the example found here under 'datomic' You'll need the 'web' container as well. https://github.com/Orcpub/orcpub/blob/develop/docker-compose.yaml <- this is not a copy paste into Portainer as you have to create the networks first.
It is really intended to be used from the docker cmd line non-swarm mode.
-OR-
You can ditch ngnix container if you want/already have traefix https://github.com/Orcpub/orcpub/wiki/How-To:-Run-Orcpub-Docker-and-Traefik-2.x <-- this is just a copy paste into Portainer as the networks are defined at the bottom.
Thanks a lot. I went with your first post and it is working from what I can see from the logs and the OrcPub briefly loads as well. So that is awesome and thank you for the help.
Unfortunately, now it's having an issue related to HTTPS. Every time I load the page it pops up, then quickly redirects to HTTP and gives me ERR_SSL_PROTOCOL_ERROR
page. I created the certs and everything according to the instructions, I also tried to remove the 301 redirect from nginx.conf, but still SSL error....
Best guess, since you didn't post your current config - is a permissions problem on the certificate files themselves. Your docker log's of the web (nginx) container are going to have the meaningful error msg.
Best guess, since you didn't post your current config - is a permissions problem on the certificate files themselves. Your docker log's of the web (nginx) container are going to have the meaningful error msg.
Sorry, I didn't post the new YML. Forgot to include it, added it below. I set the permissions to 775 on both the crt & key and running each instance as the owner of the files. Both OrcPub and Web have a couple errors, that don't seem that big.
Portainer YML Stack:
version: '3'
services:
orcpub:
image: orcpub/orcpub:latest
network_mode: "service:datomic"
container_name: orcpub
environment:
- PORT=8890
- EMAIL_SERVER_URL='smtp.gmail.com' # DNS name of your smtp server
- EMAIL_ACCESS_KEY='email@gmail.com' # User for the mail server
- EMAIL_SECRET_KEY='passwd' # Password for the user
- EMAIL_SERVER_PORT=467 # Mail server port
- EMAIL_FROM_ADDRESS='email@gmail.com' # Email address to send from, will default to 'no-reply@orcpub.com'
- EMAIL_ERRORS_TO='email@gmail.com' # Email address that errors will be sent to
- EMAIL_SSL='true' # Should SSL be used? Gmail requires this.
- EMAIL_TLS='true' # Should TLS be used?
- DATOMIC_URL=datomic:free://datomic:4334/orcpub?password=passwd3 # Url for the database
- ADMIN_PASSWORD=passwd2 #The datomic admin password (should be diffrent than the DATOMIC_PASSWORD)
- DATOMIC_PASSWORD=passwd3 #The datomic application password
- SIGNATURE='keycode' # The Secret used to hash your password in the browser, 20+ characters recommended
- PUID=1000
- PGID=100
- TZ=America/Los_Angeles
volumes:
- /home/.config/OrcPub/nginx.conf:/etc/nginx/conf.d/default.conf
- /home/.config/OrcPub/snakeoil.crt:/etc/nginx/snakeoil.crt
- /home/.config/OrcPub/snakeoil.key:/etc/nginx/snakeoil.key
- /sharedfolders/Veritas/Programs/OrcPub/homebrew/:/usr/share/nginx/html/homebrew/
- /sharedfolders/Veritas/Programs/OrcPub/data/:/data
- /home/.config/OrcPub:/config
- /sharedfolders/Veritas/Programs/logs/OrcPub:/logs
restart: unless-stopped
depends_on:
- datomic
datomic:
image: orcpub/datomic:latest
environment:
- ADMIN_PASSWORD=passwd2
# Must match the <change this> in the DATOMIC_URL above.
- DATOMIC_PASSWORD=passwd3
volumes:
- /sharedfolders/Veritas/Programs/OrcPub/data/:/data
- /sharedfolders/Veritas/Programs/logs/datomic:/logs
- /home/.config/datomic:/config
ports:
- 587:587
- 4334:4334
- 4335:4335
- 4336:4336
- 89:80
- 8890:8890
- 447:443
restart: unless-stopped
web:
image: nginx:alpine
network_mode: "service:datomic"
environment:
- PUID=1000
- PGID=100
- TZ=America/Los_Angeles
volumes:
- /home/.config/OrcPub/nginx.conf:/etc/nginx/conf.d/default.conf
- /home/.config/OrcPub/snakeoil.crt:/etc/nginx/snakeoil.crt
- /home/.config/OrcPub/snakeoil.key:/etc/nginx/snakeoil.key
- /sharedfolders/Veritas/Programs/OrcPub/homebrew/:/usr/share/nginx/html/homebrew/
restart: unless-stopped
dndgenerator:
image: orcpub/dndgenerator:latest
network_mode: "service:datomic"
environment:
- PUID=1000
- PGID=100
- TZ=America/Los_Angeles
volumes:
- /sharedfolders/Veritas/Programs/logs/datomic:/logs
- /home/.config/datomic:/config
restart: unless-stopped
OrcPub Error Log:
[qtp1027017168-42] WARN org.eclipse.jetty.http.HttpParser - bad HTTP parsed: 400 Illegal character 0x16 for HttpChannelOverHttp@4d4c8754{r=0,c=false,a=IDLE,uri=null}
[qtp1027017168-40] INFO io.pedestal.http - {:msg "GET /user", :line 78}
[qtp1027017168-41] INFO io.pedestal.http - {:msg "GET /", :line 78}
[qtp1027017168-38] WARN org.eclipse.jetty.http.HttpParser - Illegal character 0x16 in state=START for buffer HeapByteBuffer@73825517[p=1,l=517,c=8192,r=516]={\x16<<<\x03\x01\x02\x00\x01\x00\x01\xFc\x03\x03\x95\x18\xBc)\ro\x06...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00}
Web Error Log:
nginx: [emerg] host not found in upstream "orcpub" in /etc/nginx/conf.d/default.conf:20
/docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
/docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
/docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf
10-listen-on-ipv6-by-default.sh: info: /etc/nginx/conf.d/default.conf differs from the packaged version
/docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
/docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
/docker-entrypoint.sh: Configuration complete; ready for start up
Not sure why you aren't just git cloning our repo and editing the given https://github.com/Orcpub/orcpub/blob/develop/docker-compose.yaml
For your orcpub container you don't need any volumes make it like:
orcpub:
image: orcpub/orcpub:latest
environment:
- PORT=8890
- EMAIL_SERVER_URL='smtp.gmail.com' # DNS name of your smtp server
- EMAIL_ACCESS_KEY='email@gmail.com' # User for the mail server
- EMAIL_SECRET_KEY='passwd' # Password for the user
- EMAIL_SERVER_PORT=467 # Mail server port
- EMAIL_FROM_ADDRESS='email@gmail.com' # Email address to send from, will default to 'no-reply@orcpub.com'
- EMAIL_ERRORS_TO='email@gmail.com' # Email address that errors will be sent to
- EMAIL_SSL='true' # Should SSL be used? Gmail requires this.
- EMAIL_TLS='true' # Should TLS be used?
- DATOMIC_URL=datomic:free://datomic:4334/orcpub?password=passwd3 # Url for the database
- ADMIN_PASSWORD=passwd2 #The datomic admin password (should be diffrent than the DATOMIC_PASSWORD)
- DATOMIC_PASSWORD=passwd3 #The datomic application password
- SIGNATURE='keycode' # The Secret used to hash your password in the browser, 20+ characters recommended
- PUID=1000
- PGID=100
- TZ=America/Los_Angeles
restart: unless-stopped
depends_on:
- datomic
networks:
- orcpub-network
For your datomic container you don't need ports Might want to add a backup volume
datomic:
image: orcpub/datomic:latest
environment:
- ADMIN_PASSWORD=passwd2
# Must match the <change this> in the DATOMIC_URL above.
- DATOMIC_PASSWORD=passwd3
volumes:
- /sharedfolders/Veritas/Programs/OrcPub/data/:/data
- /sharedfolders/Veritas/Programs/logs/datomic:/logs
- /home/.config/datomic:/config
# Backup directory - set this to a path on the host
# To backup the orcpub database put this in a @hourly crontab on the host.
# container=$(docker ps -aqf "name=^orcpub_datomic")
# docker exec $container /datomic/bin/datomic -Xmx4g -Xms4g backup-db datomic:free://datomic:4334/orcpub?password=<change this> file:/backups/datomic/
- /var/backups:/backups
restart: unless-stopped
networks:
- orcpub-network
For your web container - you are missing ports - this is causing your SSL Problem - you published 443 to the wrong container.
web:
image: nginx:alpine
environment:
- PUID=1000
- PGID=100
- TZ=America/Los_Angeles
ports:
- "80:80"
- "443:443"
volumes:
- /home/.config/OrcPub/nginx.conf:/etc/nginx/conf.d/default.conf
- /home/.config/OrcPub/snakeoil.crt:/etc/nginx/snakeoil.crt
- /home/.config/OrcPub/snakeoil.key:/etc/nginx/snakeoil.key
- /sharedfolders/Veritas/Programs/OrcPub/homebrew/:/usr/share/nginx/html/homebrew/
restart: unless-stopped
networks:
- orcpub-network
For the generator container - doesn't need volumes.
dndgenerator:
image: orcpub/dndgenerator:latest
environment:
- PUID=1000
- PGID=100
- TZ=America/Los_Angeles
restart: unless-stopped
networks:
- orcpub-network
and add to your nginx.conf
location /generator/ {
client_max_body_size 10m;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://dndgenerator:80;
}
Biggest thing is you are missing the docker networks to connect them all
docker network create -d overlay --attachable orcpub-network
location /generator/ { client_max_body_size 10m; proxy_set_header Host $host; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Real-IP $remote_addr; proxy_pass http://dndgenerator:80; }
Cloning the repo doesn't work for Portainer and how I have my server setup. I am not running a swarm either, so network overlay is not the correct setting. Your settings and the creating a new network and removing all ports except the 80,443 & 8890 failed to work (Orcpub couldn't find datomic and would load). Just gave a long log about unable to connect to datomic.
My config works 99% of the way, generator, web, & datomic are up 100% and working; Orcpub (8890) is 50% working. Your "snakeoil" cert & key with forced SSL on 8890; that is what is causing my issue. I can open http for 8890, but then it immediately redirects to https and says SSL error. I even manually installed the cert on my machine and still couldn't open the page.
this is the only issue I am now having.
NGINX Errors:
2021/04/12 01:42:17 [emerg] 1#1: host not found in upstream "orcpub" in /etc/nginx/conf.d/default.conf:20
nginx: [emerg] host not found in upstream "orcpub" in /etc/nginx/conf.d/default.conf:20
/docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
/docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
/docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf
10-listen-on-ipv6-by-default.sh: info: /etc/nginx/conf.d/default.conf differs from the packaged version
/docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
/docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
/docker-entrypoint.sh: Configuration complete; ready for start up
config works 99% of the way, generator, web, & datomic are up 100% and working; Orcpub (8890) is 50% working. Your "snakeoil" cert & key with forced SSL on 8890; that is what is causing my issue. I can open http for 8890, but then it immediately redirects to https and says SSL error. I even manually installed the
I have found the issue. The DMV setup with docker does not allow port masking. I cannot mask as 89:80 & 447:443. When I stop the docker which already has port 80 used, and use if for DMV; everything works as intended. This is a pretty big issue IMO. Many people already run their ngnix or reverse proxy on port 80 with Docker. Not being able to mask or change the ports is a problem.
The certificates are bound to Nginx, not the orcpub container at all. You can't bind 80/443 to the same IP address twice which sounds like what you are trying to do. Either add another IP address to the host and change all your docker-compose files that use 80/443 networking to:
container1:
ports:
- "newhostIP:80:80"
- "newhostIP:443:443"
container2:
ports:
- "oldhostIP:80:80"
- "oldhostIP:443:443"
Or drop our Nginx container and use the existing reverse proxy you have bound to 80/443. Add the equivalent rules to that reverse proxy and just use one reverse proxy for all your containers. Then add that reverse proxy container to the orcpub_network
location / {
client_max_body_size 10m;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://orcpub:8890;
}
8890 is the internal webservice for Orcpub, it's not meant to be published or bound to your bridge in docker. It will try to redirect to https://ip:8890 which breaks unless it is published through the reverse proxy.
Nginx is used for publishing orcpub. 80/443 to -> 8890
So your client requests to ltd.com-> hostIP nginx:80/443->orcpub:8890 via:
location / {
client_max_body_size 10m;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://orcpub:8890;
}
The error below is nginx can't resolve the orcpub container name. Which implies that nginx and orcpub are not on the same network - check your networks: on datomic, orcpub and nginx containers. They need to be all attached to the same network so they can talk to each other.
2021/04/12 01:42:17 [emerg] 1#1: host not found in upstream "orcpub" in /etc/nginx/conf.d/default.conf:20
nginx: [emerg] host not found in upstream "orcpub" in /etc/nginx/conf.d/default.conf:20
When properly configured in portainer under networking you should see all three orcpub containers attached to the same network including nginx (this screen shot doesn't show it but orcpub_nginx should be in there) orcpub_datomic, orcpub_orcpub, and orcpub_nginx
Worked fine copy pasting our default config into portainer (update paths, running snakeoil.sh) and deploying the stack
docker: Docker version 20.10.6, build 370c289 docker-compose: docker-compose version 1.29.0, build 07737305 portainer 2.1.1
Compose used:
version: '3.8'
services:
orcpub:
image: orcpub/orcpub:latest
environment:
PORT: 8890
EMAIL_SERVER_URL: ''
EMAIL_ACCESS_KEY: ''
EMAIL_SECRET_KEY: ''
EMAIL_SERVER_PORT: 587
# Email address to send from, will default to 'no-reply@orcpub.com'
EMAIL_FROM_ADDRESS: ''
# Email address to send errors to
EMAIL_ERRORS_TO: ''
EMAIL_SSL: 'FALSE'
EMAIL_TLS: 'FALSE'
# Datomic connection string - Make sure the <change this> matches the DATOMIC_PASSWORD below
DATOMIC_URL: datomic:free://datomic:4334/orcpub?password=pass
# The secret used to hash your password in the browser, 20+ characters recommended
SIGNATURE: '<change me to something unique>'
depends_on:
- datomic
restart: always
datomic:
image: orcpub/datomic:latest
environment:
ADMIN_PASSWORD: pass1
# Must match the <change this> in the DATOMIC_URL above.
DATOMIC_PASSWORD: pass
volumes:
- /home/user/orcpub/data:/data
- /home/user/orcpub/logs:/logs
restart: always
web:
image: nginx:alpine
ports:
- "87:80"
- "447:443"
volumes:
- /home/user/orcpub/deploy/nginx.conf:/etc/nginx/conf.d/default.conf
- /home/user/orcpub/deploy/snakeoil.crt:/etc/nginx/snakeoil.crt
- /home/user/orcpub/deploy/snakeoil.key:/etc/nginx/snakeoil.key
- /home/user/orcpub/deploy/homebrew/:/usr/share/nginx/html/homebrew/
depends_on:
- orcpub
restart: always
The default http redirects will fail using the default nginx.conf Work around for that is update your nginx.conf file and add a redirect on 80:
server {
listen 80 default_server;
return 301 https://192.168.1.118:447; # Your IP address or FQDN in here
}
server {
listen 443 ssl;
server_name localhost;
ssl_certificate /etc/nginx/snakeoil.crt;
ssl_certificate_key /etc/nginx/snakeoil.key;
#charset koi8-r;
#access_log /var/log/nginx/host.access.log main;
location / {
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://orcpub:8890; #<-- Might have to change this to orcpub_orcpub_1 depending on name resolution issues.
}
One thing to note - check your cert's are actual files and not directories - if you ran the stack before running snakeoil.sh the container will link them as directories and not files.
Worked fine copy pasting our default config into portainer (update paths, running snakeoil.sh) and deploying the stack
docker: Docker version 20.10.6, build 370c289 docker-compose: docker-compose version 1.29.0, build 07737305 portainer 2.1.1
Compose used:
version: '3.8' services: orcpub: image: orcpub/orcpub:latest environment: PORT: 8890 EMAIL_SERVER_URL: '' EMAIL_ACCESS_KEY: '' EMAIL_SECRET_KEY: '' EMAIL_SERVER_PORT: 587 # Email address to send from, will default to 'no-reply@orcpub.com' EMAIL_FROM_ADDRESS: '' # Email address to send errors to EMAIL_ERRORS_TO: '' EMAIL_SSL: 'FALSE' EMAIL_TLS: 'FALSE' # Datomic connection string - Make sure the <change this> matches the DATOMIC_PASSWORD below DATOMIC_URL: datomic:free://datomic:4334/orcpub?password=pass # The secret used to hash your password in the browser, 20+ characters recommended SIGNATURE: '<change me to something unique>' depends_on: - datomic restart: always datomic: image: orcpub/datomic:latest environment: ADMIN_PASSWORD: pass1 # Must match the <change this> in the DATOMIC_URL above. DATOMIC_PASSWORD: pass volumes: - /home/user/orcpub/data:/data - /home/user/orcpub/logs:/logs restart: always web: image: nginx:alpine ports: - "87:80" - "447:443" volumes: - /home/user/orcpub/deploy/nginx.conf:/etc/nginx/conf.d/default.conf - /home/user/orcpub/deploy/snakeoil.crt:/etc/nginx/snakeoil.crt - /home/user/orcpub/deploy/snakeoil.key:/etc/nginx/snakeoil.key - /home/user/orcpub/deploy/homebrew/:/usr/share/nginx/html/homebrew/ depends_on: - orcpub restart: always
The default http redirects will fail using the default nginx.conf Work around for that is update your nginx.conf file and add a redirect on 80:
server { listen 80 default_server; return 301 https://192.168.1.118:447; # Your IP address or FQDN in here } server { listen 443 ssl; server_name localhost; ssl_certificate /etc/nginx/snakeoil.crt; ssl_certificate_key /etc/nginx/snakeoil.key; #charset koi8-r; #access_log /var/log/nginx/host.access.log main; location / { proxy_set_header Host $host; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Real-IP $remote_addr; proxy_pass http://orcpub:8890; #<-- Might have to change this to orcpub_orcpub_1 depending on name resolution issues. }
One thing to note - check your cert's are actual files and not directories - if you ran the stack before running snakeoil.sh the container will link them as directories and not files.
This fixed it. Changing the conf to the proper port finally made it work. Thank you. Sorry my setup has been a pain in the butt.
Now it's loading everything except the "homebrew" file I have and I can't get gmail or hotmail to work with the email stuff.
EMAIL ERRORS:
[clojure.core$with_bindings_STAR_ doInvoke "core.clj" 1973],
[clojure.lang.RestFn invoke "RestFn.java" 425],
[io.pedestal.interceptor.chain$leave_all invokeStatic "chain.clj" 243],
[io.pedestal.interceptor.chain$leave_all invoke "chain.clj" 237],
[io.pedestal.interceptor.chain$execute invokeStatic "chain.clj" 356],
[io.pedestal.interceptor.chain$execute invoke "chain.clj" 329],
[io.pedestal.interceptor.chain$execute invokeStatic "chain.clj" 366],
[io.pedestal.interceptor.chain$execute invoke "chain.clj" 329],
[io.pedestal.http.impl.servlet_interceptor$interceptor_service_fn$fn__24518 invoke "servlet_interceptor.clj" 350],
[io.pedestal.http.servlet.FnServlet service "servlet.clj" 28],
[org.eclipse.jetty.servlet.ServletHolder handle "ServletHolder.java" 845],
[org.eclipse.jetty.servlet.ServletHandler doHandle "ServletHandler.java" 583],
[org.eclipse.jetty.server.handler.ScopedHandler handle "ScopedHandler.java" 143],
[org.eclipse.jetty.server.handler.gzip.GzipHandler handle "GzipHandler.java" 462],
[org.eclipse.jetty.server.handler.ContextHandler doHandle "ContextHandler.java" 1162],
[org.eclipse.jetty.servlet.ServletHandler doScope "ServletHandler.java" 511],
[org.eclipse.jetty.server.handler.ContextHandler doScope "ContextHandler.java" 1092],
[org.eclipse.jetty.server.handler.ScopedHandler handle "ScopedHandler.java" 141],
[org.eclipse.jetty.server.handler.HandlerWrapper handle "HandlerWrapper.java" 134],
[org.eclipse.jetty.server.Server handle "Server.java" 518],
[org.eclipse.jetty.server.HttpChannel handle "HttpChannel.java" 308],
[org.eclipse.jetty.server.HttpConnection onFillable "HttpConnection.java" 244],
[org.eclipse.jetty.io.AbstractConnection$ReadCallback succeeded "AbstractConnection.java" 273],
[org.eclipse.jetty.io.FillInterest fillable "FillInterest.java" 95],
[org.eclipse.jetty.io.SelectChannelEndPoint$2 run "SelectChannelEndPoint.java" 93],
[org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume produceAndRun "ExecuteProduceConsume.java" 246],
[org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume run "ExecuteProduceConsume.java" 156],
[org.eclipse.jetty.util.thread.QueuedThreadPool runJob "QueuedThreadPool.java" 654],
[org.eclipse.jetty.util.thread.QueuedThreadPool$3 run "QueuedThreadPool.java" 572],
[java.lang.Thread run "Thread.java" 748]]}},
at io.pedestal.interceptor.chain$throwable__GT_ex_info.invokeStatic(chain.clj:33),
at io.pedestal.interceptor.chain$throwable__GT_ex_info.invoke(chain.clj:32),
at io.pedestal.interceptor.chain$try_error.invokeStatic(chain.clj:80),
at io.pedestal.interceptor.chain$try_error.invoke(chain.clj:62),
at io.pedestal.interceptor.chain$leave_all_with_binding.invokeStatic(chain.clj:230),
at io.pedestal.interceptor.chain$leave_all_with_binding.invoke(chain.clj:214),
at io.pedestal.interceptor.chain$leave_all$fn__21220.invoke(chain.clj:245),
at clojure.lang.AFn.applyToHelper(AFn.java:152),
at clojure.lang.AFn.applyTo(AFn.java:144),
at clojure.core$apply.invokeStatic(core.clj:665),
at clojure.core$with_bindings_STAR_.invokeStatic(core.clj:1973),
at clojure.core$with_bindings_STAR_.doInvoke(core.clj:1973),
at clojure.lang.RestFn.invoke(RestFn.java:425),
at io.pedestal.interceptor.chain$leave_all.invokeStatic(chain.clj:243),
at io.pedestal.interceptor.chain$leave_all.invoke(chain.clj:237),
at io.pedestal.interceptor.chain$execute.invokeStatic(chain.clj:356),
at io.pedestal.interceptor.chain$execute.invoke(chain.clj:329),
at io.pedestal.interceptor.chain$execute.invokeStatic(chain.clj:366),
at io.pedestal.interceptor.chain$execute.invoke(chain.clj:329),
at io.pedestal.http.impl.servlet_interceptor$interceptor_service_fn$fn__24518.invoke(servlet_interceptor.clj:350),
at io.pedestal.http.servlet.FnServlet.service(servlet.clj:28),
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:845),
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:583),
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143),
at org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:462),
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1162),
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:511),
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1092),
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141),
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134),
at org.eclipse.jetty.server.Server.handle(Server.java:518),
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:308),
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:244),
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:273),
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95),
at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93),
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:246),
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:156),
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654),
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572),
at java.lang.Thread.run(Thread.java:748),
Caused by: com.sun.mail.util.MailConnectException: Couldn't connect to host, port: 'smtp-mail.outlook.com', 587; timeout -1;,
nested exception is:,
java.net.UnknownHostException: 'smtp-mail.outlook.com',
at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:2100),
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:699),
at javax.mail.Service.connect(Service.java:366),
at postal.smtp$smtp_send_STAR_.invokeStatic(smtp.clj:33),
at postal.smtp$smtp_send_STAR_.invoke(smtp.clj:29),
at postal.smtp$smtp_send.invokeStatic(smtp.clj:58),
at postal.smtp$smtp_send.doInvoke(smtp.clj:39),
at clojure.lang.RestFn.invoke(RestFn.java:423),
at postal.core$send_message.invokeStatic(core.clj:35),
at postal.core$send_message.invoke(core.clj:29),
at orcpub.email$send_error_email.invokeStatic(email.clj:86),
at orcpub.email$send_error_email.invoke(email.clj:84),
at orcpub.routes$fn__29588.invokeStatic(routes.clj:973),
at orcpub.routes$fn__29588.invoke(routes.clj:971),
at io.pedestal.interceptor.chain$try_error.invokeStatic(chain.clj:73),
... 38 more,
Caused by: java.net.UnknownHostException: 'smtp-mail.outlook.com',
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:184),
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392),
at java.net.Socket.connect(Socket.java:589),
at java.net.Socket.connect(Socket.java:538),
at com.sun.mail.util.SocketFetcher.createSocket(SocketFetcher.java:331),
at com.sun.mail.util.SocketFetcher.getSocket(SocketFetcher.java:238),
at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:2066),
... 52 more,
[qtp1027017168-36] INFO io.pedestal.http.impl.servlet-interceptor - {:msg "sending error", :message "Internal server error: exception", :line 214},
Resolved?
Resolved?
No. Nothing ever fixed it. Even with the chatting in Discord. I was never able to get this to work at all.
Describe the bug Add to Portainer all the variables needed and dockerhub pull reqs, create key and cert, but fails to load
docker YML:
Error Log: