Deployment: Difference between revisions

From Poetry MP Wiki
Jump to navigation Jump to search
Admin>Soulmate
m (ok)
Admin>Soulmate
mNo edit summary
Line 9: Line 9:
=== '''Prerequisites''' ===
=== '''Prerequisites''' ===


# [https://dotnet.microsoft.com/en-us/download/dotnet/6.0 ASP.NET Core Runtime Hosting Bundle]
# [https://dotnet.microsoft.com/en-us/download/dotnet/6.0 ASP.NET Core Runtime Hosting Bundle] for Windows IIS.
# A Website created with Application Pool of "No Managed Code".
# A Website created with Application Pool of "No Managed Code".


Line 21: Line 21:
'''Remarks:'''
'''Remarks:'''


It may be beneficial to set a IIS rewrite rule in Web.config to further enforce HTTPS.
It may be beneficial to set a IIS rewrite rule in Web.config to further enforce HTTPS, while this is optional, since the app itself along with ASP.NET Core Runtime Hosting Bundle is capable of redirecting HTTP calls to HTTPS.


== Desktop App (under construction) ==
'''Hints:'''
 
If you don't want to purchase a SSL certificate, you may use "[https://letsencrypt.org/ Let's Encrypt]".
 
== Desktop App ==
The releases for desktop app are basically the same as the ones for Web App, however, the release is hosted in a local Web server Kestrel included in ASP.NET Runtime.
The releases for desktop app are basically the same as the ones for Web App, however, the release is hosted in a local Web server Kestrel included in ASP.NET Runtime.



Revision as of 01:52, 11 October 2022

This page is for IT administers, Web masters and computer literates who have basic skills of deploying a Website. The files needed are available in the Download area.

During development, the frontend and the backend are often running on different hosts. Almost all features of the app could run well in such config, except the locally hosted pictures. The locally hosted pictures are using relative patch in img src, and such constraint is good for static readonly deployment.

The backend and the fontend should be hosted in the same host. And the DB engine is with Sqlite.

Deploy to IIS

Prerequisites

  1. ASP.NET Core Runtime Hosting Bundle for Windows IIS.
  2. A Website created with Application Pool of "No Managed Code".

Installation

  1. Either install the MSI file or extract the Zip file to the Website root folder.
  2. Alter bin/appsettings.json with `UseHttps: true` to enforce HTTPS.


Remarks:

It may be beneficial to set a IIS rewrite rule in Web.config to further enforce HTTPS, while this is optional, since the app itself along with ASP.NET Core Runtime Hosting Bundle is capable of redirecting HTTP calls to HTTPS.

Hints:

If you don't want to purchase a SSL certificate, you may use "Let's Encrypt".

Desktop App

The releases for desktop app are basically the same as the ones for Web App, however, the release is hosted in a local Web server Kestrel included in ASP.NET Runtime.

Windows

Prerequisites

  1. ASP.NET Core Runtime

Installation

  1. Either install the MSI file or extract the Zip file to a desired folder.
  2. In folder, double click”CreateShortcut.bat” which will create a shortcut on Windows desktop. This shortcut actually runs `StartPoetryApp.ps1` which will launch PoetryApp.exe and open the default Web browser browsing http://localhost:5300.

You can copy or move the shortcut to any launch area of Windows.

Hints:

In case you have other apps running at port 5300, you need to change the following settings:

  1. File `bin/appsettings.json`: Alter Kestrel/Endpoints/Http/Url to "http://localhost:PortNotInUse", for example, "http://localhost:5310"
  2. File `StartPoetryApp.ps1`: Alter respective URL of start-process.

MacOS

Prerequisites

  1. ASP.NET Core Runtime

Installation

  1. Extract the Zip file to a desired folder, for example, "/Users/YourUsername/Documents/PoetryApp"

Execution

Terminal
  1. Under "/Users/YourUsername/Documents/PoetryApp", execute "dotnet bin/PoetryApp.dll". And this will launch Kestrel Web server hosting http://localhost:5300
  2. Open browser Safari or Chrome, and go to http://localhost:5300

Hints:

You may want to create a shell script to execute PoetryApp.