Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Als Basis für die Erstellung des Images benötigen Sie eine Linux Distribution sowie die aktuelle Version der ASP.NET Core 56.0 Laufzeitumgebung. Ein entsprechendes Image wird z. B. von Microsoft zur Verfügung gestellt, es kann jedoch auch entsprechende der eigenen Anforderungen selbst erstellt werden.

...

Code Block
FROM mcr.microsoft.com/dotnet/aspnet

LABEL Description="This image contains the Connect! Server." Vendor="Galileo Group AG" Version="2022.0.3.704"

RUN apt -y update
RUN apt -y upgrade
RUN apt -y install net-tools
RUN apt -y install iputils-ping
RUN apt -y install vim
RUN apt -y install procps

COPY . /connect/app

# >>> Use this to store persistent data on volume /connect/data
#     Things to do before starting the container:
#     - Create JSON file "appsettings" containing configuration settings (see user manual for further information)
VOLUME /connect/data
# <<<

# >>> Use this to store persistent data in container (for test purposes only!)
# RUN mkdir /connect/data
# RUN echo "{}" > /connect/data/appsettings.json
# <<<

# >>> Use this to add specific trusted root certificates
# COPY my_trusted_root_ca1.crt /usr/local/share/ca-certificates/
# COPY my_trusted_root_ca2.crt /usr/local/share/ca-certificates/
# COPY my_trusted_root_ca3.crt /usr/local/share/ca-certificates/
# RUN update-ca-certificates
# <<<

WORKDIR /connect/app
ENTRYPOINT ["dotnet", "GalileoGroup.Connect.Server.dll", "--settings=/connect/data/appsettings.json?"]

EXPOSE 80/tcp
EXPOSE 443/tcp

...

Code Block
docker build -t connect .

In diesem Beispiel verwendet der Webserver Innerhalb des Docker Images die Standardkonfiguration und ist per HTTP auf Port 80 zu erreichen. Bei Bedarf kann eine HTTPS-Konfiguration auf Port 443 ergänzt werden. Nach außen hin kann für den Container ein beliebiger Port verwendet werden.

Erstellen eines Docker Containers

...

Code Block
docker run -d -v c:\connect\data:/connect/data -p 8000:80 --dns 192.168.1.110 --name myconnect connect

In diesem Beispiel verwendet der Webserver Innerhalb des Docker Images die Standardkonfiguration und ist per HTTP auf Port 80 zu erreichen. Bei Bedarf kann eine HTTPS-Konfiguration auf Port 443 ergänzt werden. Nach außen hin kann für den Container ein beliebiger Port verwendet werden.

Damit die persistenten Daten nicht innerhalb des Containers gehalten werden, wird in diesem Beispiel ein externes Verzeichnis mit dem Namen „c:\connect\data“ angelegt. In diesem Verzeichnis kann eine JSON-Datei mit dem Namen “appsettings.json” erstellt werden, welche die Umgebungsspezifischen Konfigurationseinstellungen enthält.

...