mirror of
https://github.com/tgstation/tgstation-server.git
synced 2026-08-31 00:50:45 +01:00
Merge pull request #631 from Cyberboss/FixDockerBuild
Add gcc-multilib to docker image and installation instructions
This commit is contained in:
@@ -6,3 +6,4 @@
|
||||
packages
|
||||
*/bin
|
||||
*/obj
|
||||
tests
|
||||
|
||||
@@ -25,9 +25,17 @@ Generally, updates force a live tracking of the configured git repo, resetting l
|
||||
3. Extract the .zip file to where you want the server to run from. Note the account running the server must have write access to the `lib` subdirectory.
|
||||
4. If using the ServerService package, run `Tgstation.Server.Host.Service.exe`. It should prompt you to install the service. Click `Yes` and accept a potential UAC elevation prompt. You should now be able to control the service using the Windows service control commandlet.
|
||||
|
||||
#### Linux
|
||||
|
||||
The following dependencies are required to run tgstation-server on Linux alongside the .NET Core runtime
|
||||
|
||||
- gcc-multilib (on 64-bit systems for running BYOND)
|
||||
|
||||
Note that tgstation-server has only ever been tested on Linux via it's [docker environment](https://github.com/tgstation/tgstation-server/blob/master/build/Dockerfile#L22). If you are having trouble with something, or figure out a required workaround, please contact project maintainers so this documentation may be better updated.
|
||||
|
||||
#### Docker
|
||||
|
||||
tgstation-server supports running in a docker container on linux systems and is the preferred deployment method to avoid [native dependency hell with libgit2](https://github.com/libgit2/libgit2sharp/issues/1533). The official image repository is located at https://hub.docker.com/r/tgstation/server it can be built locally, however, by running `docker build . -f build/Dockerfile` in the repository root.
|
||||
tgstation-server supports running in a docker container on Linux systems. The official image repository is located at https://hub.docker.com/r/tgstation/server. It can also be built locally by running `docker build . -f build/Dockerfile` in the repository root.
|
||||
|
||||
To create a container run `docker create --restart=always -p <public port>:80 -v /path/to/your/appsettings.Production.json:/config_data -v path/to/your/log/folder:/tgs_logs tgstation/server` with any additional options you desire (i.e. You'll have to expose more ports in order to actually host servers, add a volume to create instances on, and create a volume for the SQLite database if that is what you're using).
|
||||
|
||||
|
||||
+7
-5
@@ -1,4 +1,5 @@
|
||||
FROM microsoft/dotnet:2.1-sdk AS build
|
||||
|
||||
WORKDIR /src
|
||||
|
||||
COPY tgstation-server.sln ./
|
||||
@@ -8,11 +9,6 @@ COPY src/Tgstation.Server.Host.Watchdog/Tgstation.Server.Host.Watchdog.csproj sr
|
||||
COPY src/Tgstation.Server.Host/Tgstation.Server.Host.csproj src/Tgstation.Server.Host/
|
||||
COPY src/Tgstation.Server.Api/Tgstation.Server.Api.csproj src/Tgstation.Server.Api/
|
||||
|
||||
COPY tests/Tgstation.Server.Api.Tests/Tgstation.Server.Api.Tests.csproj tests/Tgstation.Server.Api.Tests/
|
||||
COPY tests/Tgstation.Server.Host.Tests/Tgstation.Server.Host.Tests.csproj tests/Tgstation.Server.Host.Tests/
|
||||
COPY tests/Tgstation.Server.Host.Watchdog.Tests/Tgstation.Server.Host.Watchdog.Tests.csproj tests/Tgstation.Server.Host.Watchdog.Tests/
|
||||
COPY tests/Tgstation.Server.Host.Console.Tests/Tgstation.Server.Host.Console.Tests.csproj tests/Tgstation.Server.Host.Console.Tests/
|
||||
|
||||
RUN dotnet restore -nowarn:MSB3202,nu1503 -p:RestoreUseSkipNonexistentTargets=false
|
||||
|
||||
COPY . .
|
||||
@@ -26,6 +22,12 @@ RUN dotnet publish -c Release -o /app/lib/Default && mv /app/lib/Default/appsett
|
||||
FROM microsoft/dotnet:2.1-aspnetcore-runtime
|
||||
EXPOSE 5000
|
||||
|
||||
#needed for byond
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y \
|
||||
gcc-multilib \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY --from=build /app .
|
||||
|
||||
Reference in New Issue
Block a user