PostScript 2020/6: la prise en charge de .NetCore3.1 / PostgreSQL a été annoncée. Annonce officielle: la version compatible PostgreSQL a été publiée.
Cliquez ici pour la procédure d'installation de la version compatible .Net Core 3.1 Essayez d'installer Pleasanter avec PostgreSQL sur CentOS7 \ -Qiita Essayez d'installer Pleasanter With PostgreSQL sur CentOS8. \ -Qiita
Je souhaite exécuter Plesanter dans le plus récent environnement possible. alors, ** Depuis le 5 janvier 2020, Pleasanter ne prend pas en charge .NetCore 3.1 ** Acceptez .NetCore2.2 **. NetCore3.1 / SQL Server 2019 ne prend pas en charge CentOS8 ** Mettre en place avec CentOS7 ** SQL Server 2019 semble fonctionner avec CentOS7 **
Il s'agit de la procédure d'installation utilisant la version .Net Core distribuée par le Pleasanter officiel. (Ne construisez pas) La procédure d'installation officielle de Pleasanter est un peu organisée pour Linux et installée + C'est un journal de travail avec la procédure suivante ajoutée.
Forfaits requis | Environnement d'exploitation | Date de fin du support étendu |
---|---|---|
.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+ |
Hors support le 23 décembre 2019 |
SQL Server 2019 | RHEL7.3,7.4,7.5,7.6 SUSELinuxEnterpriseServerv12SP2,SP3,SP4 Ubuntu16.04 Docker |
6 à 10 ans après la libération devrait s'appliquer 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 |
inconnue |
Pleasanter | - |
Lors de l'utilisation d'Ubuntu, il semble préférable de sélectionner Ubuntu 16.04 pour remplir toutes les conditions. (Si vous le concevez 18.04 semble également fonctionner) RedHat Enterprise Linux (RHEL) semble être en mesure de choisir différentes versions raisonnables, mais RHEL 8 n'est pas encore pris en charge. De plus, bien que CentOS ne soit pas inclus dans l'environnement d'exploitation de SQL Server, [FAQ](https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-faq?view=sql-server -Il fonctionnera avec linux-ver15). C'est commenté. Et cela fonctionne réellement. J'ai décidé d'utiliser CentOS7 en raison d'une version raisonnable du système d'exploitation et de faibles obstacles à l'installation.
$ 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
Présentation de 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
Configuration initiale MS SQL
$ sudo /opt/mssql/bin/mssql-conf setup
usermod:Il n'y a pas de changement
Sélectionnez l'édition de SQL Server:
1) Evaluation (Gratuit, pas de droits sur les produits, délai de 180 jours)
2) Developer (Gratuit, aucun droit d'utilisation du produit)
3) Express (gratuit)
4) Web (Payé)
5) Standard (Payé)
6) Enterprise (Payé) - CPU Core utilization restricted to 20 physical/40 hyperthreaded
7) Enterprise Core (Payé) - CPU Core utilization up to Operating System Maximum
8)J'ai une clé de produit à acheter et je saisis une licence via un canal de vente au détail.
Pour plus d'informations sur les éditions, voir
https://go.microsoft.com/fwlink/?LinkId=852748&clcid=0x411
Pour utiliser l'édition payante de ce logiciel, vous devez obtenir une licence distincte auprès de:
Programme de licences en volume Microsoft.
Choisir une édition payante c'est
Vous vous êtes assuré que vous disposiez du nombre correct de licences pour installer et exécuter ce logiciel.
Veuillez saisir l'édition(1-8): 3
Les conditions de licence de ce produit
/usr/share/doc/mssql-Vous pouvez le parcourir sur le serveur ou le télécharger à partir de l'emplacement suivant::
https://go.microsoft.com/fwlink/?LinkId=855862&clcid=0x411
Une déclaration de confidentialité est disponible sur::
https://go.microsoft.com/fwlink/?LinkId=853010&clcid=0x411
Sélection de la langue SQL Server:
(1) English
(2) Deutsch
(3) Espanol
(4) Francais
(5) Italiano
(6)Japonais
(7) ???
(8) Portugues
(9) Русский
(10)chinois? ?corps
(11)Chinois (Traditionnel)
Option 1-Entrez 11: 6
Entrez votre mot de passe d'administrateur système SQL Server: <Définir le mot de passe administrateur>
Confirmez et entrez le mot de passe de l'administrateur système SQL Server:
Configurer SQL Server...
ForceFlush is enabled for this instance.
ForceFlush feature is enabled for log durability.
L'installation s'est terminée avec succès. Démarrage de SQL Server.
$
$ systemctl status mssql-server
Spécifiez une chaîne de caractères forts pour le mot de passe de l'administrateur système (mot de passe SA).
Mise à jour d'UnixODBC et introduction de mssql-tools Prend en charge SQL Server 2019 depuis 17.3. Faites attention à la version installée.
$ 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
Il n'y a peut-être pas de cible de suppression. Veuillez passer au suivant sans vous en soucier.
$ sudo yum install -y mssql-tools unixODBC-devel
J'ai la question suivante deux fois"YES"Répond s'il te plait
Do you accept the license terms? (Enter YES or NO)
YES
Comme msodbcsql a déjà été installé en même temps que les outils de ligne de commande MS SQL Server, il est omis.
Installez l'API compatible GDI +
$ sudo yum install -y epel-release
$ sudo yum install -y libgdiplus
Obtenez-le sur le Site de téléchargement officiel. Il existe un questionnaire simple, alors remplissons-le. Après avoir extrait le fichier obtenu vers un emplacement approprié, remplacez SetSaPWD dans la ligne SaConnectionString de Rds.json par le mot de passe administrateur SQL Server.
$ 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
}
$
$ cd /Pleasanter/Pleasanter.NetCore/Implem.CodeDefiner/
$ dotnet Implem.CodeDefiner.NetCore.dll _rds
Si vous pouvez confirmer le démarrage, appuyez sur Ctrl + C pour quitter.
$ 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.
Créez un script de service pour démarrer automatiquement Pleasanter au démarrage du système d'exploitation.
$ 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
Configurez le proxy inverse de sorte qu'un serveur Web normal soit accessible avec le même Port80. Je ne le présenterai pas ici, mais je pense qu'il est facile d'utiliser un proxy inverse lors de la conversion en https.
$ 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
Ajoutez un paramètre d'autorisation à 80 / tcp (http) pour permettre au client d'accéder au service Web.
Vérifier la zone valide
$ sudo firewall-cmd --get-active-zone
public
interfaces: enp1s0
Vérifier les règles du pare-feu
$ sudo firewall-cmd --list-all
Port 80/Déprotéger le TCP
$ sudo firewall-cmd --permanent --zone=public --add-port=80/tcp
success
$ sudo firewall-cmd --reload
$ sudo firewall-cmd --list-all
[Paramètres liés à Pleasanter Mail](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"
}
$ 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
Remplacez la partie localhost par un nom d'hôte accessible par le client
urllib.request.Request("http://localhost/pleasanter/reminderschedules/remind?NoLog=1")
paramètres cron
$ sudo crontab -e
@reboot python3 /opt/pleasanter-tools/Reminder.py
$ python3 /opt/pleasanter-tools/Reminder.py
Quand je l'exécute sur python3, je me fâche quand je n'ai pas pyodbc. Quand je l'ai exécuté avec python, cela fonctionnait bien si pyodbc introduit à partir d'epel pouvait être utilisé.
$ sudo yum -y install pyodbc
$ sudo vi /Pleasanter/Implem.Pleasanter.NetCore/Tools/DbBackup.py
Définissez le mot de passe sa sur la ligne suivante
pwd = "SetSaPWD"
$ python /Pleasanter/Implem.Pleasanter.NetCore/Tools/DbBackup.py
Backedup: /var/opt/mssql/data/backup/Implem.Pleasanter/20190815_121020.bak
Shrinked: Implem.Pleasanter
$
Éléments de réglage | valeur initiale | Remarques |
---|---|---|
Compte de gestion | administrator | |
Mot de passe initial | pleasanter | Il vous sera demandé de changer lors de votre première connexion |
J'avais des problèmes pendant le travail, alors prenez note
$ sudo systemctl stop mssql-server
$ sudo /opt/mssql/bin/mssql-conf set-sa-password
Entrez votre mot de passe d'administrateur système SQL Server: <Nouveau mot de passe administrateur>
Confirmez et entrez le mot de passe de l'administrateur système SQL Server:
Configurer SQL Server...
ForceFlush is enabled for this instance.
ForceFlush feature is enabled for log durability.
Le mot de passe de l'administrateur système a changé.
'sudo systemctl start mssql-server'Pour démarrer SQL Server.
$
Recommended Posts