############# ## Runtime ## ############# FROM scratch # Set env that we're running in a container, so that the application can sleep for 250ms at start ENV OXKER_RUNTIME=container # Copy application binary from builder image COPY ./target/x86_64-unknown-linux-musl/release/oxker /app/ # Run the application # this is used in the application itself, to stop itself show when running from a docker container, so DO NOT EDIT ENTRYPOINT [ "/app/oxker"] # Dev build for testing # docker build -t oxker_dev -f containerised/Dockerfile_dev . && docker run --rm -it --volume /var/run/docker.sock:/var/run/docker.sock:ro oxker_dev # Dev build one liner, x86 host # docker image prune -a; cargo build --release --target x86_64-unknown-linux-musl && docker build -t oxker_dev -f containerised/Dockerfile_dev . && docker run --rm -it --volume /var/run/docker.sock:/var/run/docker.sock:ro oxker_dev ## One liner to build musl program, build docker image, then execute the image # cargo build --release --target x86_64-unknown-linux-musl && docker build -t oxker_dev -f containerised/Dockerfile . && docker run --rm -it --volume /var/run/docker.sock:/var/run/docker.sock:ro oxker_dev # Build production version # docker build --platform linux/arm/v6 --platform linux/arm64 --platform linux/amd64 -t oxker_dev -f containerised/Dockerfile . && docker run --rm -it --volume /var/run/docker.sock:/var/run/docker.sock:ro oxker_dev # Buildx command to build musl version for all three platforms, should probably be executed in create_release # docker buildx create --use # docker buildx build --platform linux/arm/v6,linux/arm64,linux/amd64 -t oxker_dev_all -o type=tar,dest=/tmp/oxker_dev_all.tar -f containerised/Dockerfile . # Build production version for x86 only, then run # docker build --platform linux/amd64 -t oxker_dev -f containerised/Dockerfile . && docker run --rm -it --volume /var/run/docker.sock:/var/run/docker.sock:ro oxker_dev # docker build --platform linux/arm/v6 -t oxker_dev -f containerised/Dockerfile . ### Build docker files and save to .tar file # docker build --platform linux/amd64 -t oxker_dev_amd64 -f containerised/Dockerfile .; docker save -o ./oxker_dev_amd64.tar oxker_dev_amd64 # docker load -i oxker_dev_amd64.tar # docker run --rm -it --volume /var/run/docker.sock:/var/run/docker.sock:ro oxker_dev_amd64 # docker build --platform linux/arm64 -t oxker_dev_arm64 -f containerised/Dockerfile .; docker save -o ./oxker_dev_arm64.tar oxker_dev_arm64 # docker load -i oxker_dev_arm64.tar # docker run --rm -it --volume /var/run/docker.sock:/var/run/docker.sock:ro oxker_dev oxker_dev_arm64 # docker build --platform linux/arm/v6 -t oxker_dev_armv6 -f containerised/Dockerfile .; docker save -o ./oxker_dev_armv6.tar oxker_dev_armv6 # docker load -i oxker_dev_armv6.tar # docker run --rm -it --volume /var/run/docker.sock:/var/run/docker.sock:ro oxker_dev_armv6