diff --git a/backend.Dockerfile b/backend.Dockerfile new file mode 100644 index 0000000..134882d --- /dev/null +++ b/backend.Dockerfile @@ -0,0 +1,11 @@ +FROM rust + +WORKDIR /app + +COPY ./backend . + +RUN cargo build --release + +EXPOSE 8000 + +ENTRYPOINT [ "./target/release/telemetry" ] \ No newline at end of file diff --git a/backend/src/main.rs b/backend/src/main.rs index 2e1bdd7..3a31f3a 100644 --- a/backend/src/main.rs +++ b/backend/src/main.rs @@ -86,7 +86,9 @@ fn main() -> std::io::Result<()> { let aggregator = Aggregator::new().start(); let factory = LocatorFactory::new(); let locator = SyncArbiter::start(4, move || factory.create()); - + + let port = std::env::var("PORT").ok().and_then(|v| v.parse().ok()).unwrap_or(8000u16); + HttpServer::new(move || { App::new() .data(aggregator.clone()) @@ -98,7 +100,7 @@ fn main() -> std::io::Result<()> { .service(resource("/network_state/{chain}/{nid}").route(get().to_async(state_route))) .service(resource("/network_state/{chain}/{nid}/").route(get().to_async(state_route))) }) - .bind("0.0.0.0:8000")? + .bind(format!("0.0.0.0:{}", port))? .start(); sys.run() diff --git a/docker-compose.yml b/docker-compose.yml index 5a098c2..ed67275 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -3,9 +3,9 @@ version: "3" services: telemetry-frontend: build: - dockerfile: Dockerfile + dockerfile: frontend.Dockerfile context: ./ - # Copy in changes to the ui, so no need to rebulld the images. + # Copy in changes to the ui, so no need to rebuild the images. volumes: - /app/node_modules - ./packages:/app/packages @@ -14,12 +14,9 @@ services: - 3000:3000 telemetry-backend: build: - dockerfile: Dockerfile + dockerfile: backend.Dockerfile context: ./ - command: yarn start:backend environment: - - TELEMETRY_SERVER=1024 - - FEED_SERVER=8080 + - PORT=8000 ports: - - 8080:8080 - - 1024:1024 + - 8000:8000 diff --git a/Dockerfile b/frontend.Dockerfile similarity index 55% rename from Dockerfile rename to frontend.Dockerfile index b26e8b4..eeabc1d 100644 --- a/Dockerfile +++ b/frontend.Dockerfile @@ -5,13 +5,7 @@ WORKDIR /app RUN apk add --no-cache python make g++ COPY ./scripts ./scripts -COPY ./backend ./backend COPY ./packages ./packages COPY ./package.json ./yarn.lock ./tsconfig.json ./ RUN yarn - - -# Frontend is exposing 3000 -# Backend is exposing 8080 -# No need for expose, if using docker-compose & docker run -p 3000:3000