diff --git a/.gitea/workflows/release.yaml b/.gitea/workflows/release.yaml index 84fae62..7515fb4 100644 --- a/.gitea/workflows/release.yaml +++ b/.gitea/workflows/release.yaml @@ -21,3 +21,8 @@ jobs: run: | git tag "${{ gitea.event.inputs.version }}" git push origin "${{ gitea.event.inputs.version }}" + - name: Push Docker Image + run: | + echo "${{ secrets.PAT }}" | docker login -u ${{ gitea.actor }} --password-stdin koti.casa/numenor-labs + docker build -t koti.casa/numenor-labs/dsfx:${{ gitea.event.inputs.version }} . + docker push koti.casa/numenor-labs/dsfx:${{ gitea.event.inputs.version }} diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..e19a349 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,15 @@ +FROM golang:1.24 AS builder + +WORKDIR /app + +COPY . . + +RUN GOOS=linux CGO_ENABLED=0 go build -o /app/dsfx ./cmd/dsfxnode + +FROM scratch + +COPY --from=builder /app/dsfx /app/dsfx + +EXPOSE 8000 + +ENTRYPOINT ["/app/dsfx"] diff --git a/docs/hosting.md b/docs/hosting.md index 79ca27d..28b0d85 100644 --- a/docs/hosting.md +++ b/docs/hosting.md @@ -1,3 +1,22 @@ # Hosting -Work in progress. +## Installation + +We currently support two installation methods for DSFX: Docker and manual installation. + +### Docker + +To run DSFX using Docker, you first need to log into the gitea registry. You can do this with the +following command. + +```bash +export GITEA_PAT="hex string of pat created in gitea console" + +echo $GITEA_PAT | docker login koti.casa -u --password-stdin +``` + +Then, you can pull the DSFX image from the registry and run it. + +```bash +docker run -d --name dsfx -p 8080:8080numenorlabs/dsfx +```