forked from spritsail/fivem
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile
52 lines (38 loc) · 1.53 KB
/
Dockerfile
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
ARG FIVEM_NUM=1141
ARG FIVEM_VER=1141-8cded82ebff9053946e778016cb496acd0e250b0
ARG DATA_VER=3c6a2b6859dadc8bb2497399306dc58fae8c74d7
FROM spritsail/alpine:3.9 as builder
ARG FIVEM_VER
ARG DATA_VER
WORKDIR /output
RUN wget -O- http://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/${FIVEM_VER}/fx.tar.xz \
| tar xJ --strip-components=1 \
--exclude alpine/dev --exclude alpine/proc \
--exclude alpine/run --exclude alpine/sys \
&& mkdir -p /output/opt/cfx-server-data \
&& wget -O- http://github.com/citizenfx/cfx-server-data/archive/${DATA_VER}.tar.gz \
| tar xz --strip-components=1 -C opt/cfx-server-data \
\
&& apk -p $PWD add tini
ADD server.cfg opt/cfx-server-data
ADD entrypoint usr/bin/entrypoint
RUN chmod +x /output/usr/bin/entrypoint
#================
FROM scratch
ARG FIVEM_VER
ARG FIVEM_NUM
ARG DATA_VER
LABEL maintainer="Spritsail <[email protected]>" \
org.label-schema.vendor="Spritsail" \
org.label-schema.name="FiveM" \
org.label-schema.url="https://fivem.net" \
org.label-schema.description="FiveM is a modification for Grand Theft Auto V enabling you to play multiplayer on customized dedicated servers." \
org.label-schema.version=${FIVEM_NUM} \
io.spritsail.version.fivem=${FIVEM_VER} \
io.spritsail.version.fivem_data=${DATA_VER}
COPY --from=builder /output/ /
WORKDIR /config
EXPOSE 30120
# Default to an empty CMD, so we can use it to add seperate args to the binary
CMD [""]
ENTRYPOINT ["/sbin/tini", "--", "/usr/bin/entrypoint"]