diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 15eb7ad..b1dfd0e 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -94,7 +94,7 @@ jobs: - name: Build release linux armv7 binary run: rustup target install armv7-unknown-linux-musleabihf && - make release-linux-armv7-musl && + make release-linux-armv7 && cp -l target/armv7-unknown-linux-musleabihf/release-github/rqbit target/artifacts/rqbit-linux-static-armv7-musl - uses: softprops/action-gh-release@v1 with: diff --git a/Makefile b/Makefile index c87a1ed..c7b7f9b 100644 --- a/Makefile +++ b/Makefile @@ -106,9 +106,9 @@ release-linux-x86_64: @PHONY: create-target-docker create-target-docker: mkdir -p target/docker/linux/amd64 target/docker/linux/arm64 target/docker/linux/arm/v7 && \ - cp -l target/x86_64-unknown-linux-musl/release-github/rqbit target/docker/linux/amd64/rqbit && \ - cp -l target/aarch64-unknown-linux-musl/release-github/rqbit target/docker/linux/arm64/rqbit && \ - cp -l target/armv7-unknown-linux-musleabihf/release-github/rqbit target/docker/linux/arm/v7/rqbit && \ + cp -lf target/x86_64-unknown-linux-musl/release-github/rqbit target/docker/linux/amd64/rqbit && \ + cp -lf target/aarch64-unknown-linux-musl/release-github/rqbit target/docker/linux/arm64/rqbit && \ + cp -lf target/armv7-unknown-linux-musleabihf/release-github/rqbit target/docker/linux/arm/v7/rqbit && \ cp docker/Dockerfile target/Docker @PHONY: docker-build diff --git a/crates/upnp-serve/src/lib.rs b/crates/upnp-serve/src/lib.rs index c29b06f..2c70c20 100644 --- a/crates/upnp-serve/src/lib.rs +++ b/crates/upnp-serve/src/lib.rs @@ -7,7 +7,7 @@ use librqbit_sha1_wrapper::ISha1; use ssdp::SsdpRunner; use tokio_util::sync::CancellationToken; -use tracing::debug; +use tracing::{debug, info}; use upnp_types::content_directory::ContentDirectoryBrowseProvider; mod constants; @@ -63,6 +63,10 @@ impl UpnpServer { format!("http://{hostname}:{port}{http_prefix}/description.xml") }; + info!( + location = description_http_location, + "starting UPnP/SSDP announcer for MediaServer" + ); let ssdp_runner = crate::ssdp::SsdpRunner::new(ssdp::SsdpRunnerOptions { usn: usn.clone(), description_http_location, diff --git a/docker/Dockerfile b/docker/Dockerfile index 4a4770a..58ff32b 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -7,18 +7,18 @@ COPY --chmod=755 ${TARGETPLATFORM}/rqbit /bin/rqbit WORKDIR /home/rqbit -ENV XDG_DATA_HOME=/home/rqbit/config +ENV XDG_DATA_HOME=/home/rqbit/db ENV XDG_CACHE_HOME=/home/rqbit/cache -ENV RQBIT_HTTP_API_LISTEN_ADDR=0.0.0.0:3000 +ENV RQBIT_HTTP_API_LISTEN_ADDR=0.0.0.0:3030 ENV RQBIT_TCP_LISTEN_MIN_PORT=4240 -ENV RQBIT_TCP_LISTEN_MAX_PORT=4241 +ENV RQBIT_TCP_LISTEN_MAX_PORT=4260 -VOLUME /home/rqbit/config +VOLUME /home/rqbit/db VOLUME /home/rqbit/cache -VOLUME /home/rqbit/output +VOLUME /home/rqbit/downloads -EXPOSE 3000 +EXPOSE 3030 EXPOSE 4240 -CMD ["server", "start", "/home/rqbit/output"] +CMD ["server", "start", "/home/rqbit/downloads"] ENTRYPOINT ["/bin/rqbit"] diff --git a/docker/compose-examples/server.yaml b/docker/compose-examples/server.yaml new file mode 100644 index 0000000..3b27b2a --- /dev/null +++ b/docker/compose-examples/server.yaml @@ -0,0 +1,27 @@ +services: + rqbit: + image: ikatson/rqbit:v7.0.0-beta.3 + # Host network required for several things to work: + # - upnp discovery for port forwarding to your router + # - upnp UDP multicast announce MediaServer + # - upnp server UDP multicast + network_mode: host + ports: + - 3030:3030 # HTTP API port + - 4240:4240 # TCP BitTorrent port + environment: + # Replace this with your LAN hostname or IP, resolvable from other devices in your LAN + RQBIT_UPNP_SERVER_HOSTNAME: 192.168.0.112 + RQBIT_UPNP_SERVER_FRIENDLY_NAME: rqbit-docker + + # Replace this if you want to change the HTTP/Web UI port + # RQBIT_HTTP_API_LISTEN_ADDR: 0.0.0.0:3030 + volumes: + - db:/home/rqbit/db + - cache:/home/rqbit/cache + # Replace /tmp/scratch with your downloads folder + - /tmp/scratch:/home/rqbit/downloads + +volumes: + db: {} + cache: {}