[LINUX] Installation der Pleasanter .NetCore-Version (CentOS7 .NetCore2.2 SQL Server 2019)

Was steht in diesem Artikel geschrieben

Postscript 2020/6: Unterstützung für .NetCore3.1 / PostgreSQL wurde angekündigt. Offizielle Ankündigung: PostgreSQL-kompatible Version wurde veröffentlicht.

Klicken Sie hier, um das Installationsverfahren für die .Net Core 3.1-kompatible Version anzuzeigen Versuchen Sie, Pleasanter mit PostgreSQL unter CentOS7 \ -Qiita zu installieren Versuchen Sie, Pleasanter With PostgreSQL unter CentOS8 zu installieren. \ -Qiita


Ich möchte Plesanter in der neuesten Umgebung ausführen. damit, ** Ab dem 5. Januar 2020 unterstützt Pleasanter .NetCore 3.1 nicht mehr. ** Mit .NetCore2.2 einverstanden ** NetCore3.1 / SQL Server 2019 unterstützt CentOS8 nicht ** Mit CentOS7 umgehen ** SQL Server 2019 scheint mit CentOS7 zu funktionieren **

Dies ist der Installationsvorgang unter Verwendung der .Net Core-Version, die vom offiziellen Pleasanter vertrieben wird. (Nicht bauen) Die offizielle Installationsprozedur von Pleasanter ist für Linux ein wenig organisiert und installiert. + Es handelt sich um ein Arbeitsprotokoll mit der folgenden Prozedur.

Betriebsumgebung

Erforderliche Pakete Betriebsumgebung Erweitertes Support-Enddatum
.NetCORE 2.2 RHEL 6 x64
RHEL/CentOS/Oracle 7 x64
Fedora28,29
Debian9
Ubuntu 16.04,18.04,18.10
Linux Mint 17,18
OpenSUSE 15+
SLES 12 SP2+
Alpine Linux 3.7+
MacOS 10.12+
Aus der Unterstützung am 23. Dezember 2019
SQL Server 2019 RHEL7.3,7.4,7.5,7.6
SUSELinuxEnterpriseServerv12SP2,SP3,SP4
Ubuntu16.04
Docker
6-10 Jahre nach der Veröffentlichung sollte gelten
2025-2029
Microsoft ODBC Driver 17 for SQL Server Debian 8,9,10
RHEL 6,7,8
SUSE Linux Enterprise Server 11 SP4,12,15
Ubuntu 14.04,16.04,18,04,18,10,19.04
MacOS
Unbekannt
Pleasanter

Bei Verwendung von Ubuntu ist es anscheinend besser, Ubuntu 16.04 auszuwählen, um alle Bedingungen zu erfüllen. (Wenn Sie es sich ausgedacht haben 18.04 scheint ebenfalls zu funktionieren) RedHat Enterprise Linux (RHEL) scheint in der Lage zu sein, verschiedene vernünftige Versionen auszuwählen, aber RHEL 8 wird noch nicht unterstützt. Auch wenn CentOS nicht in der Betriebsumgebung von SQL Server enthalten ist, FAQ -Es wird mit Linux-Ver15 funktionieren). Es ist kommentiert. Und es funktioniert tatsächlich. Ich habe mich wegen einer vernünftigen Version des Betriebssystems und geringer Installationshürden für CentOS7 entschieden.

Einführungsablauf

Einführung in .NetCORE 2.2

$ sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm
$ sudo yum -y update
$ sudo yum -y install dotnet-sdk-2.2

Einführung in SQL Server 2019

Einführung in MS SQL Server

$ sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2019.repo
$ sudo yum -y install mssql-server

MS SQL-Ersteinrichtung

$ sudo /opt/mssql/bin/mssql-conf setup
usermod:Es gibt keinen Wechsel
Wählen Sie die Edition von SQL Server aus:
  1) Evaluation (Kostenlos, keine Produktrechte, 180 Tage Frist)
  2) Developer (Kostenlos, keine Produktnutzungsrechte)
  3) Express (frei)
  4) Web (Bezahlt)
  5) Standard (Bezahlt)
  6) Enterprise (Bezahlt) - CPU Core utilization restricted to 20 physical/40 hyperthreaded
  7) Enterprise Core (Bezahlt) - CPU Core utilization up to Operating System Maximum
  8)Ich habe einen Produktschlüssel zum Kauf und zur Eingabe einer Lizenz über einen Einzelhandelskanal.

Weitere Informationen zu Editionen finden Sie unter
https://go.microsoft.com/fwlink/?LinkId=852748&clcid=0x411

Um die kostenpflichtige Edition dieser Software nutzen zu können, benötigen Sie eine separate Lizenz von:
Microsoft-Volumenlizenzprogramm.
Die Wahl einer kostenpflichtigen Edition ist
Sie haben sichergestellt, dass Sie über die richtige Anzahl von Lizenzen verfügen, um diese Software zu installieren und auszuführen.

Bitte geben Sie die Ausgabe ein(1-8): 3
Die Lizenzbedingungen für dieses Produkt
/usr/share/doc/mssql-Sie können es auf dem Server durchsuchen oder von folgendem Speicherort herunterladen::
https://go.microsoft.com/fwlink/?LinkId=855862&clcid=0x411

Eine Datenschutzerklärung finden Sie unter::
https://go.microsoft.com/fwlink/?LinkId=853010&clcid=0x411


Auswahl der SQL Server-Sprache:
(1) English
(2) Deutsch
(3) Espanol
(4) Francais
(5) Italiano
(6)japanisch
(7) ???
(8) Portugues
(9) Русский
(10)Chinesisch? ?Körper
(11)Chinesische Tradition)
Option 1-Geben Sie 11 ein: 6
Geben Sie Ihr SQL Server-Systemadministratorkennwort ein: <Legen Sie das Administratorkennwort fest>
Bestätigen Sie das SQL Server-Systemadministratorkennwort und geben Sie es ein:
SQL Server konfigurieren...

ForceFlush is enabled for this instance.
ForceFlush feature is enabled for log durability.
Setup erfolgreich abgeschlossen. Starten von SQL Server.
$
$ systemctl status mssql-server

Geben Sie eine starke Zeichenfolge für das Systemadministratorkennwort (SA-Kennwort) an.

Einführung in die MS SQL Server-Befehlszeilentools

Update von unixODBC und Einführung von mssql-tools Unterstützt SQL Server 2019 seit 17.3. Achten Sie auf die installierte Version.

$ sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/7/prod.repo
$ sudo yum remove unixODBC-utf16 unixODBC-utf16-devel
Möglicherweise gibt es kein Löschziel. Bitte fahren Sie mit dem nächsten fort, ohne sich darüber Gedanken zu machen.
$ sudo yum install -y mssql-tools unixODBC-devel

Ich habe die folgende Frage zweimal"YES"Bitte antworten
Do you accept the license terms? (Enter YES or NO)
YES

Einführung des Microsoft ODBC-Treibers 17 für SQL Server

Da msodbcsql bereits gleichzeitig mit den MS SQL Server-Befehlszeilentools installiert wurde, wird es weggelassen.

GDI-Installation

Installieren Sie die GDI + -kompatible API

$ sudo yum install -y epel-release
$ sudo yum install -y libgdiplus

Pleasanter eingeführt

Platzierung von Ausführungsdateien

Beziehen Sie es von der offiziellen Download-Site. Es gibt einen einfachen Fragebogen, also füllen wir ihn aus. Ersetzen Sie nach dem Extrahieren der erhaltenen Datei an einen geeigneten Speicherort SetSaPWD in der SaConnectionString-Zeile von Rds.json durch das SQL Server-Administratorkennwort.

$ sudo mkdir /Pleasanter
$ unzip -q Pleasanter.NetCore.1.0.0.0.zip
$ sudo mv Pleasanter/* /Pleasanter/
$ sudo vi /Pleasanter/Pleasanter.NetCore/Implem.Pleasanter/App_Data/Parameters/Rds.json
{
    "Provider": "Local",
    "TimeZoneInfo": "Tokyo Standard Time",
    "SaConnectionString": "Server=(local);Database=master;UID=sa;PWD=SetSaPWD;Connection Timeout=30;",
    "OwnerConnectionString": "Server=(local);Database=#ServiceName#;UID=#ServiceName#_Owner;PWD=SetAdminsPWD;Connection Timeout=30;",
    "UserConnectionString": "Server=(local);Database=#ServiceName#;UID=#ServiceName#_User;PWD=SetUsersPWD;Connection Timeout=30;",
    "SqlCommandTimeOut": 600,
    "MinimumTime": 3,
    "DeadlockRetryCount": 4,
    "DeadlockRetryInterval": 1000
}
$

DB-Konfiguration für Pleasanter

$ cd /Pleasanter/Pleasanter.NetCore/Implem.CodeDefiner/
$ dotnet Implem.CodeDefiner.NetCore.dll _rds

Pleasanter Startbestätigung

Wenn Sie den Start bestätigen können, drücken Sie zum Beenden Strg + C.

$ cd ../Implem.Pleasanter/
$ dotnet Implem.Pleasanter.NetCore.dll
warn: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[35]
      No XML encryptor configured. Key {a11dba1c-f2da-4782-ae6d-ace09095eeac} may be persisted to storage in unencrypted form.
Hosting environment: Production
Content root path: /Pleasanter/Pleasanter.NetCore/Implem.Pleasanter
Now listening on: http://localhost:5000
Now listening on: https://localhost:5001
Application started. Press Ctrl+C to shut down.

Erstellen Sie ein Service-Skript für Pleasanter

Erstellen Sie ein Service-Skript, um Pleasanter beim Start des Betriebssystems automatisch zu starten.

$ sudo vi /etc/systemd/system/pleasanter.service
[Unit]
Description = Pleasanter
Documentation =

Wants=network.target
After=network.target

[Service]
ExecStart = /usr/bin/dotnet Implem.Pleasanter.NetCore.dll --urls=http://localhost:5000
WorkingDirectory = /Pleasanter/Pleasanter.NetCore/Implem.Pleasanter
Restart = always
RestartSec = 10
User = root
Group = root
Environment=ASPNETCORE_ENVIRONMENT=Production

[Install]
WantedBy = multi-user.target

$ sudo systemctl daemon-reload
$ sudo systemctl start pleasanter
$ sudo systemctl enable pleasanter

NginX-Einstellungen (Reverse Proxy)

Stellen Sie den Reverse-Proxy so ein, dass auf einen normalen Webserver mit demselben Port80 zugegriffen werden kann. Ich werde es hier nicht vorstellen, aber ich denke, es ist einfach, bei der Konvertierung in https einen Reverse-Proxy zu verwenden.

$ sudo vi /etc/nginx/conf.d/pleasanter.conf

server {
        listen  80;
    server_name   pleasanter.example.com;
    location / {
        proxy_pass         http://localhost:5000;
        proxy_http_version 1.1;
        proxy_set_header   Upgrade $http_upgrade;
        proxy_set_header   Connection keep-alive;
        proxy_set_header   Host $host;
        proxy_cache_bypass $http_upgrade;
        proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header   X-Forwarded-Proto $scheme;
    }
}

$ sudo sysetmctl restart nginx

Firewalld-Einstellungen

Fügen Sie 80 / tcp (http) eine Berechtigungseinstellung hinzu, damit der Client auf den Webdienst zugreifen kann.

Überprüfen Sie die gültige Zone
$ sudo firewall-cmd --get-active-zone
public
  interfaces: enp1s0

Überprüfen Sie die Regeln der Firewall
$ sudo firewall-cmd --list-all

Port 80/TCP aufheben
$ sudo firewall-cmd --permanent --zone=public --add-port=80/tcp
success
$ sudo firewall-cmd --reload
$ sudo firewall-cmd --list-all

Einstellungen für den Postausgangsserver

[Pleasanter Mail-bezogene Einstellungen](https://github.com/Implem/Implem.Pleasanter/wiki/%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3% 82% BF% E8% A8% AD% E5% AE% 9A% EF% BC% 9A Mail.json)

$ sudo vi /Pleasanter/publish/Implem.Pleasanter/App_Data/Parameters/Mail.json
{
    "SmtpHost": "localhost",
    "SmtpPort": 25,
    "SmtpUserName": null,
    "SmtpPassword": null,
    "SmtpEnableSsl": false,
    "FixedFrom": null,
    "AllowedFrom": null,
    "SupportFrom": "\"Pleasanter.org\" <[email protected]>",
    "InternalDomains": "",
    "AddressValidation": "\\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]+\\b"
}

Erinnerungseinstellungen

Einführung der Einstellungen für Python36, pyodbc / Reminder

$ sudo yum -y install python36
$ sudo mkdir /Pleasanter/tools
$ sudo cp -P /Pleasanter/Implem.Pleasanter.NetCore/Tools/Reminder.py /Pleasanter/tools/
$ sudo vi /Pleasanter/tools/Reminder.py

Ändern Sie den localhost-Teil in einen Hostnamen, auf den der Client zugreifen kann
urllib.request.Request("http://localhost/pleasanter/reminderschedules/remind?NoLog=1")

Cron-Einstellungen
$ sudo crontab -e
@reboot python3 /opt/pleasanter-tools/Reminder.py

$ python3 /opt/pleasanter-tools/Reminder.py

Installation des MS SQL-Sicherungsskripts

Wenn ich es auf Python3 starte, werde ich wütend, wenn ich kein Pyodbc habe. Als ich es mit Python ausführte, funktionierte es einwandfrei, ob Pyodbc aus Epel verwendet werden konnte.

$ sudo yum -y install pyodbc
$ sudo vi /Pleasanter/Implem.Pleasanter.NetCore/Tools/DbBackup.py

Stellen Sie das sa-Passwort in der folgenden Zeile ein
pwd = "SetSaPWD"

$ python /Pleasanter/Implem.Pleasanter.NetCore/Tools/DbBackup.py
Backedup: /var/opt/mssql/data/backup/Implem.Pleasanter/20190815_121020.bak
Shrinked: Implem.Pleasanter
$

Erste Kontoinformationen

Elemente einstellen Ursprünglicher Wert Bemerkungen
Verwaltungskonto administrator
Erstes Passwort pleasanter Sie werden aufgefordert, Änderungen vorzunehmen, wenn Sie sich zum ersten Mal anmelden

Memo

So setzen Sie ein Passwort zurück

Ich war während der Arbeit in Schwierigkeiten, machen Sie sich also eine Notiz

$ sudo systemctl stop mssql-server
$ sudo /opt/mssql/bin/mssql-conf set-sa-password
Geben Sie Ihr SQL Server-Systemadministratorkennwort ein: <Neues Administratorkennwort>
Bestätigen Sie das SQL Server-Systemadministratorkennwort und geben Sie es ein:
SQL Server konfigurieren...

ForceFlush is enabled for this instance.
ForceFlush feature is enabled for log durability.
Das Systemadministratorkennwort wurde geändert.
'sudo systemctl start mssql-server'So starten Sie SQL Server
$

Recommended Posts

Installation der Pleasanter .NetCore-Version (CentOS7 .NetCore2.2 SQL Server 2019)
Installationsverfahren für CentOS 8 (neueste Version)
Installationsfehler von centOS 7
Installation von CentOS 8
PHP-Installation (CentOS 8)
Installation von CentOS 7 + ffmpeg
Installation von OpenMDAO (Version 1.7.1)
Befehl zur Bestätigung der CentOS-Version
Installation auf der CentOS8 Virtual Box
Python 3.5-Installation (yum) (CentOS 6.8)