Docker Container Linux Beschreibung: Installation in einem Docker container. Der Instanzname kann leider nicht geändert werden und heißt immer MSSQLSERVER. Der hintergrund ist für mehrere instanzen, mehere Docker conatiner zu fahren. Vorraussetzung: apt install docker-compose Installation Wir nutzen hier eine docker compose Datei. Hinweis: Möchte man vorher noch Daten migrieren, erst die Daten einfügen und dann den Container starten. Verzeichnisstruktur anlegen Dieses Verzeichnis representiert das /var/opt/mssql Verzeichnis im Container mkdir -p /root/mssql/data möchte man noch Daten migrieren , dann diese hier reinkopieren Nun noch die Berechtigung für den mssql benutzer setzten. Da es diesen auf dem Host natürlich nicht sondern nur im Container nutzen wir hier die ID chown -R 10001:10001 /root/mssql/data chmod -R 700 /root/mssql/data Docker Dateien anlegen Nun legen wir eine .env Datei im mssql Verzeichnis an, Das Kennwort darin wird ignoriert wenn schon vorher eine Datenbank reinkopiert wurde. nano /root/mmsql/.env Inhalt DATA_DIRECTORY=/root/mssql/data SA_PASSWORD=IhrStarkesKennwort nun die Docker compose Datei. nano /root/mssql/docker-compose.yml Inhalt version: '3.8' services: mssql-server: image: mcr.microsoft.com/mssql/server:2019-latest environment: ACCEPT_EULA: 'Y' SA_PASSWORD: ${SA_PASSWORD} MSSQL_PID: 'Express' volumes: - ${DATA_DIRECTORY}:/var/opt/mssql ports: - "1433:1433" restart: always Über das Image kann man die Version anpassen. Mit MSSQL_PID: wir die Editionsvariante angeben Express: MSSQL_PID='Express' . Diese Edition ist kostenlos und eignet sich für leichte, weniger anspruchsvolle Datenbankanwendungen. Sie hat Einschränkungen in Bezug auf die Datenbankgröße und die Ressourcennutzung. Developer: MSSQL_PID='Developer' . Diese Edition ist ebenfalls kostenlos und bietet alle Funktionen der Enterprise Edition, ist jedoch nur für Entwicklung und Testzwecke lizenziert, nicht für Produktionsumgebungen. Standard: MSSQL_PID='Standard' . Diese Edition ist für kleinere bis mittelgroße Unternehmen gedacht und bietet mehr Funktionen als die Express Edition, einschließlich Unterstützung für größere Datenbanken und mehrere Prozessoren. Enterprise: MSSQL_PID='Enterprise' . Dies ist die voll ausgestattete Edition, die für große Unternehmen und anspruchsvolle Datenbankanwendungen geeignet ist. Sie bietet die fortschrittlichsten Funktionen. Web: MSSQL_PID='Web' . Diese Edition ist speziell für Webhosting-Umgebungen konzipiert. Evaluation: MSSQL_PID='Evaluation' . Diese Edition ist eine Testversion, die alle Funktionen der Enterprise Edition bietet, aber nur für 180 Tage gültig ist. Container starten Nun ins mssql verzeichnis wechseln und den Container starten cd /root/mssql docker-compose up -d Auf den Datenbank-Server zugreifen In Anwendungen nur die IP Adresse angeben, den sa Benutzer und das Kennwort. In der Docker Variante wird dann instanzname MSSQLSERVER nicht nach außen getragen. Also der Standard IP\SQLINSTANZ entfällt Also nur noch IP.