diff --git a/.github/workflows/build-main.yml b/.github/workflows/build-main.yml index 06b2513..ec69648 100644 --- a/.github/workflows/build-main.yml +++ b/.github/workflows/build-main.yml @@ -54,6 +54,16 @@ jobs: file: Dockerfile platforms: linux/amd64,linux/arm64 sha1: a4bcd861626195af80cc1f962d3a2f4528859ad2 + - version: "0.9.3.0-noscreen" + tag: > + soupbowl/opensimulator:0.9.3-noscreen, + soupbowl/opensimulator:0.9.3.0-noscreen, + ghcr.io/soup-bowl/opensimulator-docker:0.9.3-noscreen, + ghcr.io/soup-bowl/opensimulator-docker:0.9.3.0-noscreen, + folder: build/latest + file: Dockerfile.noscreen + platforms: linux/amd64,linux/arm64 + sha1: a4bcd861626195af80cc1f962d3a2f4528859ad2 steps: - name: Checkout Codebase diff --git a/README.md b/README.md index ed27dc8..fcd260d 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,8 @@ This **unofficial** Docker configuration aims to assist in setting the server up - [`latest`, `0.9`, `0.9.3`, `0.9.3.0`](https://github.com/soup-bowl/opensimulator-docker/blob/main/build/latest/Dockerfile) +- [`0.9.3-noscreen`, `0.9.3.0-noscreen`](https://github.com/soup-bowl/opensimulator-docker/blob/main/build/latest/Dockerfile.noscreen) + - [`0.9.2`, `0.9.2.2`](https://github.com/soup-bowl/opensimulator-docker/blob/main/build/latest/Dockerfile.mono) - [`0.9.2.1`](https://github.com/soup-bowl/opensimulator-docker/blob/main/build/latest/Dockerfile.mono) @@ -127,6 +129,10 @@ The latest OpenSimulator image build using [official .NET 8 image](https://mcr.m If you pull from **0.9.2.2** or below, you will instead be using the [Mono Framework](https://hub.docker.com/_/mono/). +## `soupbowl/opensimulator:-noscreen` + +Starting from **0.9.3.0**, until [#9 is resolved](https://github.com/soup-bowl/opensimulator-docker/issues/9), there is a build of the Dotnet editions without screen. This is **temporary** and will be removed once a solution is found, so there is no latest tag to avoid dependency. All feedback on experience is welcome on issue #9. + ## `soupbowl/opensimulator:alpine-beta` A bleeding edge variant using **Alpine** as the build image. Progress can be tracked on the [#1 ticket](https://github.com/soup-bowl/opensimulator-docker/issues/1). diff --git a/build/latest/Dockerfile.noscreen b/build/latest/Dockerfile.noscreen new file mode 100644 index 0000000..1f8a6c9 --- /dev/null +++ b/build/latest/Dockerfile.noscreen @@ -0,0 +1,34 @@ +FROM mcr.microsoft.com/dotnet/runtime:8.0 + +LABEL org.opencontainers.image.title="OpenSimulator (unofficial)" +LABEL org.opencontainers.image.authors="code@soupbowl.io" +LABEL org.opencontainers.image.source="https://github.com/soup-bowl/opensimulator-docker" +LABEL org.opencontainers.image.licenses="MIT" + +ARG OPENSIM_VERSION=0.9.3.0 +ARG OPENSIM_SHA1="a4bcd861626195af80cc1f962d3a2f4528859ad2" + +RUN apt-get update \ + && apt-get install -y apt-utils curl libc6-dev libgdiplus libsqlite3-dev screen uuid-runtime \ + && apt-get clean + +RUN mkdir /opt/opensim-tmp \ + && curl -o /opt/opensim-tmp/opensim.tar.gz "http://opensimulator.org/dist/opensim-${OPENSIM_VERSION}.tar.gz" \ + && echo "${OPENSIM_SHA1} /opt/opensim-tmp/opensim.tar.gz" | sha1sum -c - \ + && tar xzf /opt/opensim-tmp/opensim.tar.gz -C /opt/opensim-tmp \ + && rm /opt/opensim-tmp/opensim*/bin/OpenSim.ini \ + && rm /opt/opensim-tmp/opensim*/bin/config-include/StandaloneCommon.ini \ + && rm /opt/opensim-tmp/opensim*/bin/config-include/storage/SQLiteStandalone.ini \ + && mkdir /opt/opensim \ + && mv /opt/opensim-tmp/opensim*/* /opt/opensim + +COPY defaults /opt/opensim/bin/defaults + +EXPOSE 9000 + +WORKDIR /opt/opensim/bin + +COPY docker-entrypoint.sh /usr/local/bin/ + +ENTRYPOINT ["docker-entrypoint.sh"] +CMD [ "dotnet", "OpenSim.dll" ]