fb0b55d540
* ns-api: remove sqlite support ns-api: add env var to skip migrations for local dev ns-api: tidy up imports ns-api: fix deserialisation fo node descriptions update dockerfile update README fix up README and example env ns-api: bump major version to 4 ns-api: add more geoip data and new performance field in dvpn responses * ns-api: polyfill dVPN probe outcomes to make compatible with existing clients * Use explicit transaction for testrun status change (#6046) * Use explicit transaction for testrun status change * Improve run scripts * Skip locked rows * bump version 4.0.2 * Fix build.rs * Fix up .sqlx queries * Bump agent version and change dockerfile to run the agent in a loop * Make time between agents configurable by env var SLEEP_TIME * Update entrypoint.sh * Update Dockerfile with full path * Force bigint to avoid postgres numeric cast * Add override args to agent entry point, bump agent version and NS API version --------- Co-authored-by: Mark Sinclair <mmsinclair@users.noreply.github.com> Co-authored-by: dynco-nym <173912580+dynco-nym@users.noreply.github.com>
45 lines
1.6 KiB
Docker
45 lines
1.6 KiB
Docker
# this will only work with VPN, otherwise remove the harbor part
|
|
FROM harbor.nymte.ch/dockerhub/rust:latest AS builder
|
|
|
|
ARG GIT_REF=main
|
|
|
|
RUN apt update && apt install -yy libdbus-1-dev pkg-config libclang-dev
|
|
|
|
# Install go
|
|
RUN wget https://go.dev/dl/go1.22.5.linux-amd64.tar.gz -O go.tar.gz
|
|
RUN tar -xzvf go.tar.gz -C /usr/local
|
|
|
|
RUN git clone https://github.com/nymtech/nym-vpn-client /usr/src/nym-vpn-client
|
|
RUN cd /usr/src/nym-vpn-client && git checkout $GIT_REF
|
|
ENV PATH=/go/bin:/usr/local/go/bin:$PATH
|
|
WORKDIR /usr/src/nym-vpn-client/nym-vpn-core
|
|
RUN cargo build --release --package nym-gateway-probe
|
|
|
|
COPY ./ /usr/src/nym
|
|
WORKDIR /usr/src/nym/nym-node-status-api/nym-node-status-agent
|
|
RUN cargo build --release
|
|
|
|
#-------------------------------------------------------------------
|
|
# The following environment variables are required at runtime:
|
|
#
|
|
# NODE_STATUS_AGENT_SERVER_ADDRESS
|
|
# NODE_STATUS_AGENT_SERVER_PORT
|
|
#
|
|
# see https://github.com/nymtech/nym/blob/develop/nym-node-status-agent/src/cli.rs for details
|
|
#-------------------------------------------------------------------
|
|
|
|
FROM harbor.nymte.ch/dockerhub/ubuntu:24.04
|
|
|
|
RUN apt-get update && apt-get install -y ca-certificates
|
|
|
|
WORKDIR /nym
|
|
|
|
COPY --from=builder /usr/src/nym/target/release/nym-node-status-agent ./
|
|
COPY --from=builder /usr/src/nym-vpn-client/nym-vpn-core/target/release/nym-gateway-probe ./
|
|
COPY --from=builder /usr/src/nym/nym-node-status-api/nym-node-status-agent/entrypoint.sh ./
|
|
RUN chmod +x /nym/entrypoint.sh
|
|
|
|
ENV SLEEP_TIME=5
|
|
ENV NODE_STATUS_AGENT_PROBE_PATH=/nym/nym-gateway-probe
|
|
ENTRYPOINT [ "/nym/entrypoint.sh" ]
|