Subscribe and post RSS feeds to Bluesky
rss bluesky

feat: add dockerfile

Changed files
+22 -11
+11
Dockerfile
··· 1 + FROM golang:1.25-alpine AS builder 2 + WORKDIR /build 3 + COPY . . 4 + RUN go build -o bksyrss -ldflags="-w -s" . 5 + 6 + FROM alpine:latest 7 + RUN apk --no-cache add ca-certificates 8 + WORKDIR /app 9 + COPY --from=builder /build/bksyrss . 10 + VOLUME ["/data"] 11 + ENTRYPOINT ["./bksyrss"]
+11 -11
readme.md
··· 14 14 15 15 ```bash 16 16 docker run -d \ 17 - --name bksy-rss-post \ 17 + --name bksyrss \ 18 18 -v $(pwd)/data:/data \ 19 19 -e BSKY_PASSWORD="your-app-password" \ 20 - bksy-rss-post \ 20 + bksyrss \ 21 21 -feed "https://example.com/feed.xml" \ 22 22 -handle "your-handle.bsky.social" \ 23 23 -storage /data/posted_items.txt ··· 28 28 ### Basic Usage 29 29 30 30 ```bash 31 - ./bksy-rss-post \ 31 + ./bksyrss \ 32 32 -feed "https://example.com/feed.xml" \ 33 33 -handle "your-handle.bsky.social" \ 34 34 -password "your-app-password" ··· 39 39 Monitor multiple feeds by separating URLs with commas: 40 40 41 41 ```bash 42 - ./bksy-rss-post \ 42 + ./bksyrss \ 43 43 -feed "https://blog1.com/feed.xml,https://blog2.com/rss,https://news.com/atom.xml" \ 44 44 -handle "your-handle.bsky.social" \ 45 45 -password "your-app-password" ··· 49 49 50 50 ```bash 51 51 export BSKY_PASSWORD="your-app-password" 52 - ./bksy-rss-post \ 52 + ./bksyrss \ 53 53 -feed "https://example.com/feed.xml" \ 54 54 -handle "your-handle.bsky.social" 55 55 ``` ··· 73 73 #### Monitor multiple feeds 74 74 75 75 ```bash 76 - ./bksy-rss-post \ 76 + ./bksyrss \ 77 77 -feed "https://blog.com/rss,https://news.com/atom.xml,https://podcast.com/feed" \ 78 78 -handle "your-handle.bsky.social" 79 79 ``` ··· 81 81 #### Check feeds every 5 minutes 82 82 83 83 ```bash 84 - ./bksy-rss-post \ 84 + ./bksyrss \ 85 85 -feed "https://example.com/feed.xml" \ 86 86 -handle "your-handle.bsky.social" \ 87 87 -interval 5m ··· 90 90 #### Test without posting (dry-run mode) 91 91 92 92 ```bash 93 - ./bksy-rss-post \ 93 + ./bksyrss \ 94 94 -feed "https://example.com/feed.xml" \ 95 95 -handle "your-handle.bsky.social" \ 96 96 -dry-run ··· 99 99 #### Use custom storage file 100 100 101 101 ```bash 102 - ./bksy-rss-post \ 102 + ./bksyrss \ 103 103 -feed "https://example.com/feed.xml" \ 104 104 -handle "your-handle.bsky.social" \ 105 - -storage /var/lib/bksy-rss-post/posted.txt 105 + -storage /var/lib/bksyrss/posted.txt 106 106 ``` 107 107 108 108 ## Bluesky Authentication ··· 120 120 If you're using a self-hosted Personal Data Server: 121 121 122 122 ```bash 123 - ./bksy-rss-post \ 123 + ./bksyrss \ 124 124 -feed "https://example.com/feed.xml" \ 125 125 -handle "your-handle.your-pds.com" \ 126 126 -pds "https://your-pds.com"