A very generic Necesse dedicated server, which updates itself on startup with or without Mods in Docker.
Dockerfile
######## Auto Updating Necesse Server ######## FROM openjdk:latest ENV USER necesse ENV HOME /home/necesse WORKDIR $HOME COPY --from=steamcmd/steamcmd:latest /usr/lib/games/steam /usr/lib/games/steam COPY --from=steamcmd/steamcmd:latest /usr/bin/steamcmd /usr/bin/steamcmd COPY --from=steamcmd/steamcmd:latest /etc/ssl/certs /etc/ssl/certs COPY --from=steamcmd/steamcmd:latest /lib /lib RUN mkdir necesse RUN printf '#!/bin/bash \n\ steamcmd +login anonymous +force_install_dir ${집}/necesse +app_update 1169370 validate +quit \n\ i=1 \n\ variable="MOD_$i" \n\ value=${!variable} \n\ if test ! -지 "$값"; then \n\ mkdir -p .config/Necesse/mods \n\ rm .config/Necesse/mods/* \n\ fi \n\ while test ! -지 "$값"; do \n\ steamcmd +login "$STEAM_USER" "$STEAM_PASSWORD" +force_install_dir $HOME +workshop_download_item 1169040 $value +quit \n\ i=$((i+1)) \n\ variable="MOD_$i" \n\ value=${!variable} \n\ mv steamapps/workshop/content/**/**/*.jar .config/Necesse/mods \n\ done \n\ java -jar ${집}/necesse/Server.jar -nogui $@ \n\ ' >> entrypoint RUN chmod +x entrypoint # If you wish a cold start container, comment the next Line in RUN steamcmd +login anonymous +force_install_dir ${집}/necesse +app_update 1169370 validate +quit ENTRYPOINT ["./entrypoint"] EXPOSE 14159
건물
docker build . -t necesse-server
테스트
Just test it with interactive mode:
docker run -it necesse-server
But it makes more sense to run it as demon, you also can use all the default start parameters:
docker run -d necesse-server -world mynewworld
Run a Server with No/Self Managed Mods
docker run -d --mount type=bind,source=</a/directory/on/your/harddrive>,target=/home/necesse/.config/Necesse/ -p 14159:14159 necesse-server -world <worldname>
in a docker-compose.yml it would look something like this:
버전: '3.7' services: necesse-server: 다시 시작하다: unless-stopped build: . ports: - "14159:14159" volumes: - 유형: bind source: /srv/docker/necesse-config/ target: /home/necesse/.config/Necesse/ command: ["-세계", "myworldname"]
Run a Server with Mods
You can only download Mods from the Steam workshop if you own the Game, so you need to provide steam credentials for an account that owns the game and is not steam guard protected for running an automated Necesse server with mods.
You should provide the password with a docker secret, but for this example, it’s plaintext
docker run -d --env STEAM_USER=<ASteamAccountWhichOwnsNecesse> --env STEAM_PASSWORD=<SteamPassword> --env MOD_1=<modId> --env MOD_2=<modId> --mount type=bind,source=</a/directory/on/your/harddrive>,target=/home/necesse/.config/Necesse/ necesse-server -world <worldname>
in a docker-compose.yml:
버전: '3.7' services: necesse-server: 다시 시작하다: unless-stopped build: . ports: - "14159:14159" volumes: - 유형: bind source: /srv/docker/necesse-config/ target: /home/necesse/.config/Necesse/ command: ["-세계", "myworldname"] environment: STEAM_USER: ASteamAccountWhichOwnsNecesse STEAM_PASSWORD: SteamPassword MOD_1: 2833909781 # Better Enchantment Mod
이것이 오늘 우리가 공유하는 모든 것입니다. 반드시 가이드. 이 가이드는 원래 작성자가 작성하고 작성했습니다. Mike Rohsoft. 이 가이드를 업데이트하지 못한 경우, 다음을 수행하여 최신 업데이트를 찾을 수 있습니다. 링크.