# Use the official Rust image FROM rust:latest # Set the working directory WORKDIR /usr/src/caogo # Copy the Cargo.toml and Cargo.lock files COPY Cargo.toml Cargo.lock ./ # Copy the source code COPY src ./src # Build the server binary RUN cargo build --release --bin server # Build the client binary RUN cargo build --release --bin client # Create a script to run the binaries RUN echo '#!/bin/sh\n./target/release/server &' > /usr/src/caogo/run_server.sh RUN echo './target/release/client' > /usr/src/caogo/run_client.sh RUN chmod +x /usr/src/caogo/run_server.sh /usr/src/caogo/run_client.sh # Set the default command to run the server CMD ["./run_server.sh"]