Dockerfile 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. # 使用Ubuntu 22.04作为基础镜像
  2. FROM ubuntu:22.04
  3. ENV STEAMCMD_DIR=/opt/steamcmd
  4. ENV STEAMCMD_URL=https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
  5. ENV DEBIAN_FRONTEND=noninteractive
  6. RUN apt-get update && apt-get install -y \
  7. wget \
  8. ca-certificates \
  9. lib32gcc-s1 \
  10. lib32stdc++6 \
  11. libc6-i386 \
  12. libcurl4 \
  13. libncurses5 \
  14. libsdl2-2.0-0 \
  15. libtinfo5 \
  16. libvorbisfile3 \
  17. lib32z1 \
  18. cron \
  19. && rm -rf /var/lib/apt/lists/*
  20. RUN mkdir -p ${STEAMCMD_DIR}
  21. COPY install_dayz.sh /opt/install_dayz.sh
  22. COPY start.sh /opt/start.sh
  23. COPY updatemod.sh /opt/updatemod.sh
  24. RUN chmod +x /opt/install_dayz.sh /opt/start.sh /opt/updatemod.sh
  25. RUN useradd -m -d /home/steam steam
  26. RUN mkdir -p /opt/games
  27. RUN chown -R steam:steam ${STEAMCMD_DIR} && \
  28. chown -R steam:steam /home/steam && \
  29. chown steam:steam /opt/install_dayz.sh && \
  30. chown steam:steam /opt/start.sh && \
  31. chown steam:steam /opt/updatemod.sh && \
  32. chown -R steam:steam /opt/games
  33. # 创建crontab配置文件
  34. RUN echo "*/15 * * * * /opt/updatemod.sh >> /var/log/updatemod.log 2>&1" > /etc/cron.d/updatemod
  35. WORKDIR ${STEAMCMD_DIR}
  36. CMD ["/opt/start.sh"]