Files
Linux_Docker_build_DayzServer/DockerFile/Dockerfile

47 lines
1.2 KiB
Docker

# 使用Ubuntu 22.04作为基础镜像
FROM ubuntu:22.04
ENV STEAMCMD_DIR=/opt/steamcmd
ENV STEAMCMD_URL=https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y \
wget \
ca-certificates \
lib32gcc-s1 \
lib32stdc++6 \
libc6-i386 \
libcurl4 \
libncurses5 \
libsdl2-2.0-0 \
libtinfo5 \
libvorbisfile3 \
lib32z1 \
cron \
&& rm -rf /var/lib/apt/lists/*
RUN mkdir -p ${STEAMCMD_DIR}
COPY install_dayz.sh /opt/install_dayz.sh
COPY start.sh /opt/start.sh
COPY updatemod.sh /opt/updatemod.sh
RUN chmod +x /opt/install_dayz.sh /opt/start.sh /opt/updatemod.sh
RUN useradd -m -d /home/steam steam
RUN mkdir -p /opt/games
RUN chown -R steam:steam ${STEAMCMD_DIR} && \
chown -R steam:steam /home/steam && \
chown steam:steam /opt/install_dayz.sh && \
chown steam:steam /opt/start.sh && \
chown steam:steam /opt/updatemod.sh && \
chown -R steam:steam /opt/games
# 创建crontab配置文件
RUN echo "*/15 * * * * /opt/updatemod.sh >> /var/log/updatemod.log 2>&1" > /etc/cron.d/updatemod
WORKDIR ${STEAMCMD_DIR}
CMD ["/opt/start.sh"]