去评论
dz插件网

分享个 Oracle arm 搭建 幻兽帕鲁 服务端 教程

饾暦饾枎饾枒饾枏饾枂饾枅饾枑
2024/01/25 12:52:28
参考:https://github.com/TeriyakiGod/steamcmd-docker-arm64
文末有 Dockerfile 内容,或参考: https://github.com/TeriyakiGod/steamcmd-docker-arm64/blob/main/Dockerfile

随意路径新建并进入目录steamcmd,此处为家目录:
mkdir ~/steamcmd
cd ~/steamcmd

创建 Dockerfile 并将后面的 Dockerfile 内容贴进去,保存:
vi Dockerfile

编译:
docker build -t steamcmd-arm64 .

编译好后创建容器,端口可自行修改,连入后会自动更新,更新完输入 quit 退出:
docker run  --name steamcmd -p 8211:8211/udp -p 27015:27015/udp -it steamcmd-arm64
quit

再次启动容器:
docker start steamcmd

进入容器:
docker exec -it steamcmd /bin/bash

容器内执行:
FEXBash ./steamcmd.sh

STEAM命令行下执行:
login anonymous
app_update 2394010 validate
app_update 1007
quit

容器内执行:
mkdir -pv /home/steam/.steam/sdk64
ln -sv /home/steam/Steam/steamapps/common/Steamworks\ SDK\ Redist/linux64/steamclient.so /home/steam/.steam/sdk64/steamclient.so

启动帕鲁服务端并送到后台执行:
setsid FEXBash ./steamapps/common/PalServer/PalServer.sh




Dockerfile 内容:
  1. # Use the official Ubuntu 22.04 as the base imageFROM ubuntu:22.04# Set environment variables to avoid interactive promptsENV DEBIAN_FRONTEND=noninteractive# Install necessary dependenciesRUN apt-get update && \    apt-get install -y \    git \    cmake \    ninja-build \    pkg-config \    ccache \    clang \    llvm \    lld \    binfmt-support \    libsdl2-dev \    libepoxy-dev \    libssl-dev \    python-setuptools \    g++-x86-64-linux-gnu \    nasm \    python3-clang \    libstdc++-10-dev-i386-cross \    libstdc++-10-dev-amd64-cross \    libstdc++-10-dev-arm64-cross \    squashfs-tools \    squashfuse \    libc-bin \    expect \    curl \    sudo \    fuse# Create a new user and set their home directoryRUN useradd -m -s /bin/bash fexRUN usermod -aG sudo fexRUN echo "fex ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers.d/fexUSER fexWORKDIR /home/fex# Clone the FEX repository and build itRUN git clone --recurse-submodules https://github.com/FEX-Emu/FEX.git && \    cd FEX && \    mkdir Build && \    cd Build && \    CC=clang CXX=clang++ cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DUSE_LINKER=lld -DENABLE_LTO=True -DBUILD_TESTS=False -DENABLE_ASSERTIONS=False -G Ninja .. && \    ninjaWORKDIR /home/fex/FEX/BuildRUN sudo ninja install && \    sudo ninja binfmt_misc_32 && \    sudo ninja binfmt_misc_64RUN sudo useradd -m -s /bin/bash steamRUN sudo apt install wgetUSER rootRUN echo 'root:steamcmd' | chpasswdUSER steamWORKDIR /home/steam/.fex-emu/RootFS/# Set up rootfsRUN wget -O Ubuntu_22_04.tar.gz https://www.dropbox.com/scl/fi/16mhn3jrwvzapdw50gt20/Ubuntu_22_04.tar.gz?rlkey=4m256iahwtcijkpzcv8abn7nfRUN tar xzf Ubuntu_22_04.tar.gzRUN rm ./Ubuntu_22_04.tar.gzWORKDIR /home/steam/.fex-emuRUN echo '{"Config":{"RootFS":"Ubuntu_22_04"}}' > ./Config.jsonWORKDIR /home/steam/Steam# Download and run SteamCMDRUN curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -ENTRYPOINT FEXBash ./steamcmd.sh