-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDockerfile
More file actions
35 lines (23 loc) · 920 Bytes
/
Dockerfile
File metadata and controls
35 lines (23 loc) · 920 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# Este Dockerfile utiliza uma construção multi-stage para criar uma imagem de contêiner
# otimizada para uma aplicação C++ de análise de frequência de palavras.
FROM docker.io/gcc:12-bookworm AS builder
# ### Estágio 1: `builder`
#
# Este estágio é responsável por compilar o código-fonte da aplicação.
WORKDIR /Dictionary
COPY makefile .
COPY src/ ./src/
COPY include/ ./include/
RUN make MODE=release
FROM docker.io/debian:bookworm-slim AS runner
# ### Estágio 2: Imagem Final
#
# Este estágio cria a imagem de produção, que é leve e contém apenas o necessário para executar a aplicação.
WORKDIR /app
COPY --from=builder ./Dictionary/build/bin/ ./build/bin/
COPY freq.sh .
COPY files ./files/
ENTRYPOINT [ "./freq.sh" ]
CMD [ "all", "domcasmurro.txt" ]
LABEL org.opencontainers.image.title="dictionary" \
org.opencontainers.image.version="1.0.0"