Installed it with docker behind nginx proxy manager. Use default config files.

When I click on login I have "Relay responded but no Kind 0 metadata found. You may not be whitelisted or your Kind 0 is not synced. Try using a client to write your Kind 0 to this relay.".

Relay is green on Primal. I added my relay on Amethyst and pushed an update. Same. Do I need to whitelist m'y self ? https://grain.fractalized.net if you want to test ⚡

Reply to this note

Please Login to reply.

Discussion

So the docker install will install the latest tag version. That is the old version pre- full client library. This is a pre-release so to check this out, you would have to use a binary. Or you can check out the testing docs if you want to spin up a docker container for the current source code. When I do the full release the docker file will build the right release.

it's better now you can check on https:/grain.fractalized.net ⚡ (startup is way more fast btw). I'll test it today! I published a gh repo because I build and published the image to the hub https://github.com/PastaGringo/grain-nostr-docker. Could be nice to able to modify config files with docker compose env vars. I could do it (AI tbh) when final release is shipped 😃

More env vars are coming in the next update! You'll also be able to log into the web UI and configure it from the web if you are the admin pubkey. I left out an ignore file for now anyways. Build is still very fast without it. You're the expert at docker though. Lmk if you see anything off.

Or maybe try this to build the prerelease for docker

```

FROM alpine:latest

# Install dependencies for downloading and extracting releases

RUN apk add --no-cache ca-certificates curl jq unzip tar gzip wget

WORKDIR /tmp

# Detect architecture and download appropriate pre-release

RUN ARCH=$(uname -m) && \

case $ARCH in \

x86_64) GRAIN_ARCH="amd64" ;; \

aarch64) GRAIN_ARCH="arm64" ;; \

*) echo "Unsupported architecture: $ARCH" && exit 1 ;; \

esac && \

echo "Detected architecture: $ARCH -> grain-linux-$GRAIN_ARCH" && \

PRERELEASE_VERSION=$(curl -s https://api.github.com/repos/0ceanslim/grain/releases | jq -r '.[] | select(.prerelease == true) | .tag_name' | head -n1) && \

if [ -z "$PRERELEASE_VERSION" ]; then \

echo "No pre-release found, falling back to latest release" && \

PRERELEASE_VERSION=$(curl -s https://api.github.com/repos/0ceanslim/grain/releases/latest | jq -r .tag_name); \

fi && \

echo "Downloading GRAIN pre-release version: $PRERELEASE_VERSION for linux-$GRAIN_ARCH" && \

DOWNLOAD_URL="https://github.com/0ceanslim/grain/releases/download/$PRERELEASE_VERSION/grain-linux-$GRAIN_ARCH.tar.gz" && \

curl -L "$DOWNLOAD_URL" -o grain-release.tar.gz && \

echo "Extracting release..." && \

tar -xzf grain-release.tar.gz && \

EXTRACTED_DIR=$(tar -tzf grain-release.tar.gz | head -1 | cut -f1 -d"/") && \

echo "Moving files from $EXTRACTED_DIR to /app..." && \

mkdir -p /app && \

mv "$EXTRACTED_DIR"/* /app/ && \

chmod +x /app/grain && \

rm -rf /tmp/*

WORKDIR /app

# Create non-root user for security

RUN addgroup -g 1001 grain && \

adduser -D -s /bin/sh -u 1001 -G grain grain && \

chown -R grain:grain /app

USER grain

EXPOSE 8181

HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \

CMD wget --no-verbose --tries=1 --spider http://localhost:8181/ || exit 1

CMD ["./grain"]

```

I've added documentation to the repo now for running the prerelease version

🙏🏻

Thank you for testing. Lmk if all goes well.