Skip to content

Commit

Permalink
Improve dockerfile
Browse files Browse the repository at this point in the history
  • Loading branch information
tomasz-lisowski committed Jun 24, 2024
1 parent 4799875 commit 26fc532
Show file tree
Hide file tree
Showing 4 changed files with 27 additions and 10 deletions.
12 changes: 8 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
# Compiler output
# Compiler output.
build/
build-lib/

# Clangd config
# Clangd config.
compile_flags.txt

# swICC FS Disk
# swICC FS Disk.
*.swiccfs

# Logs
# Logs.
*.log

# Docker output.
docker/
docker.log
7 changes: 7 additions & 0 deletions docker.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/bin/bash
set -o nounset; # Abort on unbound variable.
set -o pipefail; # Don't hide errors within pipes.
set -o errexit; # Abort on non-zero exit status.

docker build --progress=plain . -t tomasz-lisowski/swsim:1.0.0 2>&1 | tee docker.log;
docker run -v ./docker:/opt/out --tty --interactive --rm tomasz-lisowski/swsim:1.0.0;
16 changes: 11 additions & 5 deletions dockerfile
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
# docker build --progress=plain . -t tomasz-lisowski/swsim:1.0.0 2>&1 | tee build.log;
# docker run -v ./build:/opt/swsim/build/host --tty --rm tomasz-lisowski/swsim:1.0.0;

FROM ubuntu:22.04 AS base

RUN set -eux; \
apt-get -qq update; \
apt-get -qq --yes dist-upgrade;


FROM base AS base__swicc
COPY . /opt/swsim
ENV DEP="cmake gcc gcc-multilib make"
Expand All @@ -17,6 +15,14 @@ RUN set -eux; \
make -j $(nproc) main-static test-static; \
apt-get -qq --yes purge ${DEP};


FROM base
COPY --from=base__swicc /opt/swsim/build /opt/swsim/build/local
ENTRYPOINT [ "/bin/bash", "-c", "(cp -r /opt/swsim/build/local/*.a /opt/swsim/build/host) && (cp -r /opt/swsim/build/local/*.elf /opt/swsim/build/host)" ]
COPY --from=base__swicc /opt/swsim/build /opt/swsim/build
COPY --from=base__swicc /opt/swsim/data /opt/swsim/data

RUN set -eux; \
rm -r /opt/swsim/build/swsim; \
rm -r /opt/swsim/build/swicc; \
rm -r /opt/swsim/build/test;

ENTRYPOINT [ "bash", "-c", "cp -r /opt/swsim/* /opt/out" ]
2 changes: 1 addition & 1 deletion lib/swicc
Submodule swicc updated 3 files
+7 −3 .gitignore
+7 −0 docker.sh
+11 −5 dockerfile

0 comments on commit 26fc532

Please sign in to comment.