diff --git a/README.md b/README.md index d95cd00..9bae088 100644 --- a/README.md +++ b/README.md @@ -151,6 +151,76 @@ After running `just build`, a number of scripts will be available: See `justfile` for defined commands. +To test zooid locally without having to set up SSL, follow these simple instructions: + +Create a `compose.yml` file with the following content: + +```yml +services: + zooid: + image: ghcr.io/coracle-social/zooid + restart: unless-stopped + container_name: zooid + volumes: + - ./zooid/config:/app/config:z + - ./zooid/media:/app/media:z + - ./zooid/data:/app/data:z + networks: + - nginx + + nginx: + image: nginx + restart: unless-stopped + container_name: nginx + volumes: + - ./zooid/nginx.conf:/etc/nginx/conf.d/nginx.conf + - /dev/null:/etc/nginx/conf.d/default.conf:ro # avoids conflicts with default config + ports: + - "3334:80" + networks: + - nginx + +networks: + nginx: + driver: bridge +``` + +Make a `zooid` folder with the following structure: +``` +zooid/ +├── config/ +│ └── relay.toml +├── data/ +├── media/ +└── nginx.conf +``` + +Your `nginx.conf` should have the following content: + +```json +server { + listen 80; + listen [::]:80; + server_name localhost; + + location / { + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + + proxy_pass http://zooid:3334; + proxy_read_timeout 86400; + } +} +``` + +To run, just run either `podman compose up` OR `docker compose up` + ## Deploying Zooid can be run using an OCI container: