4c7b023 |
Jakob Wakeling |
2023-12-17 20:00:10 |
0
|
FROM golang:alpine as build |
4c7b023 |
Jakob Wakeling |
2023-12-17 20:00:10 |
1
|
RUN apk update |
4c7b023 |
Jakob Wakeling |
2023-12-17 20:00:10 |
2
|
RUN apk upgrade |
4c7b023 |
Jakob Wakeling |
2023-12-17 20:00:10 |
3
|
RUN apk add --no-cache build-base |
4c7b023 |
Jakob Wakeling |
2023-12-17 20:00:10 |
4
|
COPY . /app |
4c7b023 |
Jakob Wakeling |
2023-12-17 20:00:10 |
5
|
WORKDIR /app |
4c7b023 |
Jakob Wakeling |
2023-12-17 20:00:10 |
6
|
ARG version |
4c7b023 |
Jakob Wakeling |
2023-12-17 20:00:10 |
7
|
RUN VERSION=$version make build |
4c7b023 |
Jakob Wakeling |
2023-12-17 20:00:10 |
8
|
|
4c7b023 |
Jakob Wakeling |
2023-12-17 20:00:10 |
9
|
FROM alpine:latest |
4c7b023 |
Jakob Wakeling |
2023-12-17 20:00:10 |
10
|
RUN apk update |
4c7b023 |
Jakob Wakeling |
2023-12-17 20:00:10 |
11
|
RUN apk upgrade |
de239c0 |
Jakob Wakeling |
2025-01-04 17:24:50 |
12
|
RUN apk add --no-cache git openssh |
4c7b023 |
Jakob Wakeling |
2023-12-17 20:00:10 |
13
|
COPY --from=build /app/bin /app/bin |
de239c0 |
Jakob Wakeling |
2025-01-04 17:24:50 |
14
|
RUN ln -s /app/bin/goit-shell /usr/local/bin/goit-shell |
dad559f |
Jakob Wakeling |
2025-02-09 13:49:12 |
15
|
|
de239c0 |
Jakob Wakeling |
2025-01-04 17:24:50 |
16
|
RUN addgroup -g 973 -S git |
de239c0 |
Jakob Wakeling |
2025-01-04 17:24:50 |
17
|
RUN adduser -g git -s /bin/sh -G git -S -u 973 git |
de239c0 |
Jakob Wakeling |
2025-01-04 17:24:50 |
18
|
RUN sed -i 's/^git:!:/git:*:/' /etc/shadow |
de239c0 |
Jakob Wakeling |
2025-01-04 17:24:50 |
19
|
RUN mkdir -p /home/git/.config /home/git/.local/share /home/git/.local/state |
de239c0 |
Jakob Wakeling |
2025-01-04 17:24:50 |
20
|
RUN chown -R git:git /home/git/.config /home/git/.local |
dad559f |
Jakob Wakeling |
2025-02-09 13:49:12 |
21
|
|
dad559f |
Jakob Wakeling |
2025-02-09 13:49:12 |
22
|
RUN sed -i 's/^#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config |
dad559f |
Jakob Wakeling |
2025-02-09 13:49:12 |
23
|
RUN echo 'HostKey /etc/ssh/host_keys/etc/ssh/ssh_host_rsa_key' >> /etc/ssh/sshd_config.d/00_host_keys.conf |
dad559f |
Jakob Wakeling |
2025-02-09 13:49:12 |
24
|
RUN echo 'HostKey /etc/ssh/host_keys/etc/ssh/ssh_host_ecdsa_key' >> /etc/ssh/sshd_config.d/00_host_keys.conf |
dad559f |
Jakob Wakeling |
2025-02-09 13:49:12 |
25
|
RUN echo 'HostKey /etc/ssh/host_keys/etc/ssh/ssh_host_ed25519_key' >> /etc/ssh/sshd_config.d/00_host_keys.conf |
dad559f |
Jakob Wakeling |
2025-02-09 13:49:12 |
26
|
|
4c7b023 |
Jakob Wakeling |
2023-12-17 20:00:10 |
27
|
WORKDIR /app |
dad559f |
Jakob Wakeling |
2025-02-09 13:49:12 |
28
|
EXPOSE 8080/tcp |
dad559f |
Jakob Wakeling |
2025-02-09 13:49:12 |
29
|
EXPOSE 22/tcp |
dad559f |
Jakob Wakeling |
2025-02-09 13:49:12 |
30
|
# VOLUME /home/git/.config/goit /home/git/.local/share/goit /home/git/.local/state/goit |
dad559f |
Jakob Wakeling |
2025-02-09 13:49:12 |
31
|
VOLUME /etc/ssh/host_keys |
de239c0 |
Jakob Wakeling |
2025-01-04 17:24:50 |
32
|
|
de239c0 |
Jakob Wakeling |
2025-01-04 17:24:50 |
33
|
RUN cat <<EOF > /app/bin/launch.sh |
b6b062e |
Jakob Wakeling |
2025-01-11 18:23:53 |
34
|
#!/bin/sh -e |
dad559f |
Jakob Wakeling |
2025-02-09 13:49:12 |
35
|
mkdir -p /etc/ssh/host_keys/etc/ssh |
dad559f |
Jakob Wakeling |
2025-02-09 13:49:12 |
36
|
ssh-keygen -A -f /etc/ssh/host_keys |
de239c0 |
Jakob Wakeling |
2025-01-04 17:24:50 |
37
|
/usr/sbin/sshd -D & |
b6b062e |
Jakob Wakeling |
2025-01-11 18:23:53 |
38
|
su git -c "/app/bin/goit \$@" |
de239c0 |
Jakob Wakeling |
2025-01-04 17:24:50 |
39
|
EOF |
de239c0 |
Jakob Wakeling |
2025-01-04 17:24:50 |
40
|
|
de239c0 |
Jakob Wakeling |
2025-01-04 17:24:50 |
41
|
ENTRYPOINT ["sh", "/app/bin/launch.sh"] |
|
|
|
42
|
|