Windows サーバーにインストール
次のファイルは、Windows サーバーに ONES をインストールするために使用されます。
前提条件
- Windows サーバーは、次のバージョンをサポートします。
- Windows Server 2022
- Windows Server 2019
- Windows Server 2016 (バージョン 1709 または 1803)
- 仮想マシン (Hyper-v や VMWare など) の場合、ハイパースレッディングをサポートし、ネストされた仮想化 を実行できる必要があります。
- 全文検索が有効になっているデータベース SQL Server 2016 以降
- SQLExpress は非運用用途にも使用できますが、SQLExpress には パフォーマンスの制限 があることに注意してください
- Docker のインストール ガイド
- 有効な SSL 証明書
セットアップ プログラム
- ONES サーバー イメージ
bookings-one.tar
をフォルダc:\bookings-one
に入れます
- 次のスクリプトを
c:\bookings-one\docker-compose.yml
に保存します
version: '3.1'
services:
bookings-one:
image: ones-software/bookings-one:latest
restart: always
volumes:
- /c/bookings-one:/etc/bookings-one
environment:
BackgroundJob__TimeZone: 'Asia/Hong_Kong'
File__BaseDirectory: '/etc/bookings-one/upload-files'
Logging__ErrorLog__FileLogDirectory: '/etc/bookings-one/error-logs/error-logs-{Date}.txt'
Logging__InfoLog__FileLogDirectory: '/etc/bookings-one/info-logs/info-logs-{Date}.txt'
Logging__DbLog__FileLogDirectory: '/etc/bookings-one/db-logs/db-logs-{Date}.txt'
WebPush__PrivateKey: WEB_PUSH_PRIVATE_KEY
WebPush__PublicKey: WEB_PUSH_PUBLIC_KEY
ConnectionStrings__MainDatabase: 'Server=DATABASE_SERVER_ADDRESS;Database=Bookings.ONE;User=DATABASE_USERNAME;Password=DATABASE_PASSWORD;'
ASPNETCORE_URLS: 'https://+;http://+'
ASPNETCORE_HTTPS_PORT: 443
ASPNETCORE_Kestrel__Certificates__Default__Password: CERTIFICATE_PASSWORD
ASPNETCORE_Kestrel__Certificates__Default__Path: '/etc/bookings-one/certificate/bookings-one.pfx'
ports:
- 443:443
.yml ファイルの間隔は非常に重要です。例と同じインデントを維持してください。
修改
docker-compose.yml
:- 將
DATABASE_SERVER_ADDRESS
,DATABASE_USERNAME
和DATABASE_PASSWORD
替換為您的數據庫連接字符串如果您的 SQLExpress 與 Docker 在同一台伺服器上運行,則必須啟用SQLExpress remote connect 遠程連接並且 DATABASE_SERVER_ADDRESS
使用host.docker.internal,1433
- 將
WEB_PUSH_PRIVATE_KEY
和WEB_PUSH_PUBLIC_KEY
替換為您的密鑰對。此密鑰為 VAPID 密鑰,您可以自己生成或使用某些在線密鑰生成器生成 - 將
CERTIFICATE_PASSWORD
替換為您的證書密碼
- 將
把證書文件放到
C:\bookings-one\certificate\
,證書名必須是bookings-one.pfx
打開 PowerShell,轉到
C:\bookings-one
運行命令
docker load --input ./bookings-one.tar
運行命令
docker-compose up -d
現在您可以通過
https://localhost
訪問 ONES 控制台docker-compose.yml
を変更します。DATABASE_SERVER_ADDRESS
、DATABASE_USERNAME
、およびDATABASE_PASSWORD
をデータベース接続文字列に置き換えますSQLExpress が Docker と同じサーバーで実行されている場合は、SQLExpress リモート接続 リモート接続と DATABASE_SERVER_ADDRESS
はhost.docker.internal,1433
を使用しますWEB_PUSH_PRIVATE_KEY
とWEB_PUSH_PUBLIC_KEY
をキー ペアに置き換えます。 このキーは VAPID キーです。自分で生成するか、オンライン キー ジェネレーター を使用できます。CERTIFICATE_PASSWORD
を証明書のパスワードに置き換えます
証明書ファイルを
C:\bookings-one\certificate\
に置きます。証明書名はbookings-one.pfx
にする必要があります。PowerShell を開き、
C:\bookings-one
に移動しますコマンド
docker load --input ./bookings-one.tar
を実行しますコマンド
docker-compose up -d
を実行しますこれで、
https://localhost
経由でONESコンソールにアクセスできます
参考までに docker-compose.yml
の例を示します。
version: '3.1'
services:
bookings-one:
image: ones-software/bookings-one:latest
restart: always
volumes:
- /c/bookings-one:/etc/bookings-one
environment:
BackgroundJob__TimeZone: 'Asia/Hong_Kong'
File__BaseDirectory: '/etc/bookings-one/upload-files'
Logging__ErrorLog__FileLogDirectory: '/etc/bookings-one/error-logs/error-logs-{Date}.txt'
Logging__InfoLog__FileLogDirectory: '/etc/bookings-one/info-logs/info-logs-{Date}.txt'
Logging__DbLog__FileLogDirectory: '/etc/bookings-one/db-logs/db-logs-{Date}.txt'
WebPush__PublicKey: 'BJszfqip7Ii_lKSXCd_ZZJXT5FeQwJCZx79mLpr3nY8_rvRzSBLuaTx5dOp4rQZtzI511UvoyRXIwPoZ4_PALFA'
WebPush__PrivateKey: 'C-RkwJZGooRiI0CGNwAmShlaSWsh4SRNkol-ni5LGAk'
ConnectionStrings__MainDatabase: 'Server=host.docker.internal,1433;Database=Bookings.ONE;User=sa;Password=P@$$w0rd'
ASPNETCORE_URLS: 'https://+;http://+'
ASPNETCORE_HTTPS_PORT: 443
ASPNETCORE_Kestrel__Certificates__Default__Password: Password1234
ASPNETCORE_Kestrel__Certificates__Default__Path: '/etc/bookings-one/certificate/bookings-one.pfx'
ports:
- 443:443
ONESサーバーを更新する
- 最新のONESサーバーイメージを
C:\bookings-one
にダウンロードします C:\bookings-one
で PowerShell を開きます- ONES を停止し、コマンド
docker-compose down
を実行します。 - 最新のONESサーバーイメージをロードするには、コマンド
docker load --input ./bookings-one.tar
を実行します - ONES を更新して起動し、コマンド
docker-compose up
を実行します。
C:\bookings-one
に配置する必要はありません。任意のドライブまたはフォルダーが機能します。別のフォルダーに移動する場合は、/c/bookings-one
を移動先フォルダーに置き換えます。 (例: /d/server/bookings-one)