oneuptime icon indicating copy to clipboard operation
oneuptime copied to clipboard

Oops, something went wrong

Open shor0814 opened this issue 1 year ago • 7 comments

I am not having much luck with this. Brand new install, I have not gotten a login yet.

Environment: Alpine Linux with Docker inside a Proxmox VM 230G drive space (12% in use) 16G RAM Docker with multiple other working containers

Current Cloudflare settings have proxy disabled for both testuptime.mydomain.com (A record pointing to IP address) and status.mydomain.com (CNAME record pointing to testuptime.mydomain.com) which should mimic a pure http instance.

Env settings are

# Please change this to domain of the server where oneuptime is hosted on.
HOST=testuptime.mydomain.com

# OneUptime Port. This is the port where OneUptime will be hosted on.
ONEUPTIME_HTTP_PORT=80

# ==============================================
# SETTING UP TLS/SSL CERTIFICATES
# ==============================================
# OneUptime DOES NOT support setting up SSL/TLS certificates. You need to setup SSL/TLS certificates on your own.
# If you need to use SSL/TLS certificates, then you need to use a reverse proxy like Nginx/Caddy and use LetsEncrypt to provision the certificates.
# You then need to point the reverse proxy to the OneUptime server.
# Once you have done that,
# - You can set the HTTP_PROTOCOL to https
# - Change the HOST to the domain name of the server where reverse proxy is hosted.
HTTP_PROTOCOL=http

# Secrets - PLEASE CHANGE THESE. Please change these to something random. All of these can be different values.
ONEUPTIME_SECRET=REDACTED
DATABASE_PASSWORD=REDACTED
CLICKHOUSE_PASSWORD=REDACTED
REDIS_PASSWORD=REDACTED
ENCRYPTION_SECRET=REDACTED
GLOBAL_PROBE_1_KEY=REDACTED
GLOBAL_PROBE_2_KEY=REDACTED
INTERNAL_SMTP_PASSWORD=REDACTED

# If you are connecting Status Pages to custom domains, then this will be the port where the status page will be hosted on.
# This should be https port because oneuptime automatically generates ssl certs from lets encrypt.
STATUS_PAGE_HTTPS_PORT=443


# If you would like to attach status page to custom domains use this setting.
# For example, lets say you would like the status page to be hosted on status.yourcompany.com, then
# 1. Create a A record in your DNS provider with the name "oneuptime.yourcompany.com" and value to Public IP of the server oneuptime is deployed on.
# 2. Set the STATUS_PAGE_CNAME_RECORD to "oneuptime.yourcompany.com"
# 3. Create CNAME record in your DNS provider with the name "status.yourcompany.com" and value "oneuptime.yourcompany.com"
STATUS_PAGE_CNAME_RECORD=testuptime.mydomain.com

When I navigate to the http://testuptime.mydomain.com, I get the following error Screenshot 2024-10-24 144152

After reloading the page Screenshot 2024-10-24 144140

And the last portion of the docker.log file that is repeated after each refresh.

time="2024-10-24T14:42:35.725674362-07:00" level=info msg="ignoring event" container=78a2c95bf4f8c72dc429bffe87e114a3b4c2ac82ca4a83b8f2b93a5fe3053b8f module=libcontainerd namespace=moby-101.65533 topic=/tasks/delete type="*events.TaskDelete"
time="2024-10-24T14:42:35.725995490-07:00" level=info msg="shim disconnected" id=78a2c95bf4f8c72dc429bffe87e114a3b4c2ac82ca4a83b8f2b93a5fe3053b8f namespace=moby-101.65533
time="2024-10-24T14:42:35.726039515-07:00" level=warning msg="cleaning up after shim disconnected" id=78a2c95bf4f8c72dc429bffe87e114a3b4c2ac82ca4a83b8f2b93a5fe3053b8f namespace=moby-101.65533
time="2024-10-24T14:42:35.726047483-07:00" level=info msg="cleaning up dead shim" namespace=moby-101.65533
time="2024-10-24T14:42:36.037682642-07:00" level=info msg="loading plugin \"io.containerd.event.v1.publisher\"..." runtime=io.containerd.runc.v2 type=io.containerd.event.v1
time="2024-10-24T14:42:36.037744758-07:00" level=info msg="loading plugin \"io.containerd.internal.v1.shutdown\"..." runtime=io.containerd.runc.v2 type=io.containerd.internal.v1
time="2024-10-24T14:42:36.037759738-07:00" level=info msg="loading plugin \"io.containerd.ttrpc.v1.task\"..." runtime=io.containerd.runc.v2 type=io.containerd.ttrpc.v1
time="2024-10-24T14:42:36.037842402-07:00" level=info msg="loading plugin \"io.containerd.ttrpc.v1.pause\"..." runtime=io.containerd.runc.v2 type=io.containerd.ttrpc.v1
time="2024-10-24T14:42:45.831880926-07:00" level=info msg="shim disconnected" id=1b9be94f939c17f03f3a9dadd15d132e9002966e179a2ebfd083f0677f74fe12 namespace=moby-101.65533
time="2024-10-24T14:42:45.832034907-07:00" level=warning msg="cleaning up after shim disconnected" id=1b9be94f939c17f03f3a9dadd15d132e9002966e179a2ebfd083f0677f74fe12 namespace=moby-101.65533
time="2024-10-24T14:42:45.832044077-07:00" level=info msg="cleaning up dead shim" namespace=moby-101.65533
time="2024-10-24T14:42:45.832315980-07:00" level=info msg="ignoring event" container=1b9be94f939c17f03f3a9dadd15d132e9002966e179a2ebfd083f0677f74fe12 module=libcontainerd namespace=moby-101.65533 topic=/tasks/delete type="*events.TaskDelete"
time="2024-10-24T14:42:46.190630883-07:00" level=info msg="loading plugin \"io.containerd.event.v1.publisher\"..." runtime=io.containerd.runc.v2 type=io.containerd.event.v1
time="2024-10-24T14:42:46.192145639-07:00" level=info msg="loading plugin \"io.containerd.internal.v1.shutdown\"..." runtime=io.containerd.runc.v2 type=io.containerd.internal.v1
time="2024-10-24T14:42:46.192162519-07:00" level=info msg="loading plugin \"io.containerd.ttrpc.v1.task\"..." runtime=io.containerd.runc.v2 type=io.containerd.ttrpc.v1
time="2024-10-24T14:42:46.192316146-07:00" level=info msg="loading plugin \"io.containerd.ttrpc.v1.pause\"..." runtime=io.containerd.runc.v2 type=io.containerd.ttrpc.v1

I have tried multiple different settings, http/https, Cloudflare proxy on/off, I generally get 502 errors, 525 SSL issues, or QUIC protocol errors. I will keep trying, but ultimately I want to run this behind a Cloudflare Tunnel. I can't even get a basic page working let alone tunnels.

As a side note, I did get a tunnel configured and built into the .yaml file, but again, various errors abound, so I went back to basics.

Help is appreciated as this looks like an outstanding product that is more feature rich than Uptime-Kuma, but, if I can't get the basics working, not really useful.

Thanks, Shawn

shor0814 avatar Oct 24 '24 22:10 shor0814

What are the logs of the containers that are running?

simlarsen avatar Oct 25 '24 06:10 simlarsen

Here are all of the log files including the docker.log from /var/log in docker.zip and the container logs in logs.tgz.zip (yes, it is a zipped tgz since GitHub rejected my tgz file even though it says it is supported)

docker.zip logs.tgz.zip

Thanks for the look.

shor0814 avatar Oct 25 '24 17:10 shor0814

I dont think these are OneUptime logs.

simlarsen avatar Oct 28 '24 15:10 simlarsen

I dont think these are OneUptime logs.

What would the oneuptime logs look like? I generated them from docker logs....

#!/bin/bash docker logs oneuptime-ingestor-1 > oneuptime-ingestor-1.log docker logs oneuptime-api-reference-1 > oneuptime-api-reference-1.log docker logs oneuptime-status-page-1 > oneuptime-status-page-1.log docker logs oneuptime-app-1 > oneuptime-app-1.log docker logs oneuptime-probe-2-1 > oneuptime-probe-2-1.log docker logs oneuptime-haraka-1 > oneuptime-haraka-1.log docker logs oneuptime-workflow-1 > oneuptime-workflow-1.log docker logs oneuptime-redis-1 > oneuptime-redis-1.log docker logs oneuptime-otel-collector-1 > oneuptime-otel-collector-1.log docker logs oneuptime-worker-1 > oneuptime-worker-1.log docker logs oneuptime-isolated-vm-1 > oneuptime-isolated-vm-1.log docker logs oneuptime-probe-1-1 > oneuptime-probe-1-1.log docker logs oneuptime-home-1 > oneuptime-home-1.log docker logs oneuptime-admin-dashboard-1 > oneuptime-admin-dashboard-1.log docker logs oneuptime-dashboard-1 > oneuptime-dashboard-1.log docker logs oneuptime-docs-1 > oneuptime-docs-1.log docker logs oneuptime-clickhouse-1 > oneuptime-clickhouse-1.log docker logs oneuptime-ingress-1 > oneuptime-ingress-1.log docker logs oneuptime-postgres-1 > oneuptime-postgres-1.log docker logs oneuptime-accounts-1 > oneuptime-accounts-1.log

I also included the docker.log from /var/log, not sure where else to find the logs you are asking for.

shor0814 avatar Oct 28 '24 23:10 shor0814

See if you can reach http://testuptime.mydomain.com/accounts/login to create your initial account. Once the account is created you can then implement your reverse proxy to send your HTTPS traffic to the HTTP OneUptime backend and change your oneuptime config to https and then docker compose down and docker compose up -d

HTTP_PROTOCOL=https

That's what worked for me on 2 self hosted docker deployments this week... Also, I'm using HAProxy for my reverse proxy.

akronoff avatar Nov 27 '24 14:11 akronoff

See if you can reach http://testuptime.mydomain.com/accounts/login to create your initial account. Once the account is created you can then implement your reverse proxy to send your HTTPS traffic to the HTTP OneUptime backend and change your oneuptime config to https and then docker compose down and docker compose up -d

HTTP_PROTOCOL=https

That's what worked for me on 2 self hosted docker deployments this week... Also, I'm using HAProxy for my reverse proxy.

As of today, for some reason I can't get it to even start running, seems something isn't working with nginx as the a list of ports never shows 80 or 443 at all. I might have to re-start from scratch and try your suggestion.

shor0814 avatar Dec 01 '24 07:12 shor0814

Gave up on the Docker instance, and went to a K8S. Turns out, that isn't working either, the guy doing it for me keeps running into issues with clickhouse restarting due to wrong permissions or something. I don't know, these things get frustrating at times. I was under the impression that Docker and K8S were supposed to make life easier!

shor0814 avatar Dec 24 '24 20:12 shor0814