Dynamics 365 Business Central Docker環境構築

Dynamics 365 Business Central

前のブログでDynamics 365 Business Central On-Premises環境とSaaS環境について紹介しましたが、構築可能なBusiness Central環境の最後として、開発者向けのDocker環境について今回解説しようと思います。 このブログはDockerの解説ではないので、申し訳ございませんがDockerについて簡単に説明いたします。 Docker はアプリケーションをすばやく構築、テスト、デプロイできるソフトウェアプラットフォームです。いわゆるコンテナ型の仮想アプリケーション実行環境です。 Dockerは他の仮想化ソフトウェアとの違いは下記にご参照ください。

それでは、なぜBusiness Centralの開発でDocker環境を使用する必要があるのでしょうか。 下記のBusiness Central のリポジトリについての説明をご覧ください。 パートナーに対してNext Minor VersionとNext Major Versionは極めて重要です。(パートナー認証有) ビルドバージョン番号一旦無視して、例えば今リリースされたバージョンは16.3です。それに対してNext Minor Versionは16.4で、Next Major Versionは17.0です。この二つのバージョン随時更新されています。(ほぼ毎日)

リポジトリの説明は下記にご参照ください。
https://hub.docker.com/_/microsoft-businesscentral-sandbox
ここでMicrosoftのAppSourceについて追記しておきたいと思います。 https://appsource.microsoft.com/ja-jp/

AppSourceはMicrosoftの商業マーケットプレースの一つで、MicrosoftのApp Storeとしてご理解していただければ良いでしょう。 このストアではDynamics 365 Business Centralのアプリもたくさん公開されています。 公開元はMicrosoftとグローバル中のパートナーです。 公開中のアプリに対して、現在リリース済みのバージョンだけではなく、次リリースのバージョンでも問題なくインストールできることを保証しなければなりません。Microsoftもパートナーにそう要求しています。その結果、DockerのNext Minor VersionとNext Major VersionはAppSource担当しているパートナーには必須となります。

それではお待たせしました。DockerのBusiness Central環境を構築しましょう。

Dockerのインストール

まずDockerをダウンロードします。 下記のページを開いて、「Get Docker Desktop for windows(stable)」をクリックします。 ダウンロード終わるまでは、しばらくお待ちください。 https://hub.docker.com/editions/community/docker-ce-desktop-windows

「Docker Desktop Installer.exe」を実行します。

「Enable Hyper-V Windows Features」は必須なので、チェックしてください。 次は「Ok」をクリックします。

インストール中….

インストール完了。 PCの再起動することをお勧めします。

Dockerを起動します。

右下のアイコンをクリックすると、ステータスを確認することができます。

起動した後で「Switch to Windows containers…」をクリックします。ディフォルトはLinux向け。

「Switch」をクリックします。

スウィッチ中….

完了

「Windows PowerShell ISE」を管理者として実行します。

検証するためにコマンド「Docker Info」を実行してみます。 インフォメーションが表示されましたら、Dockerのインストールは完了しました。

Business Central Docker版の構築

まずWindows PowerShell ISEでBcContainerHelperをインストールします。すでに旧バージョンのBcContainerHelperがインストールされた場合、コマンドの最後に「-Force」を追加する必要があります。
例:Install-Module BcContainerHelper -Force

「はい」をクリックします。

実行中….

実行中….

終了。

インストール完了の検証 下記のコマンドを実行します。
Write-BCContainerHelperWelcomeText

正常に実行できればBcContainerHelperが問題なくインストールできました。

※注意:
場合によって、PCのセキュリティー設定の問題でExecutionPolicyを更新する必要があります。 https://docs.microsoft.com/ja-jp/powershell/module/microsoft.powershell.security/set-executionpolicy?view=powershell-6
CurrentUserのスコープをByPassに設定したら、実行できるはずです。
・Get-ExecutionPolicy -List

・Set-ExecutionPolicy -ExecutionPolicy ByPass -Scope CurrentUser

・「すべて続行」

・終了

Business Centralのイメージダウンロード及びコンテンツ作成: 例として現在Region JPでリリースされている17.1バージョンを構築してみます。
構築コマンド: 2020/12/04 更新

Remove-NavContainer test
Measure-Command {
    $artifactUrl = Get-BCArtifactUrl -version 17.1 -select Latest -country jp
    if ($credential -eq $null -or $credential -eq [System.Management.Automation.PSCredential]::Empty) {     
  $credential = get-credential -UserName $env:USERNAME `
                           -Message "Please enter your Windows credentials." 
  } 
    New-NavContainer `
        -accept_eula `
        -containerName test`
        -artifactUrl $artifactUrl `
        -Credential $credential `
        -auth UserPassword `
        -updateHosts `
        -imagename myown
}

containerName と imagenameが修正可能です。

artifactUrlについては:下記のブログをご参考になれば幸いです。

Dynamics 365 Business Centralの標準機能のソースコードをダウンロードする方法 (Get to the source code of the default apps by Business Central Artifacts)

「-auth」はUserPasswordに設定されているから、BCログインのユーザー名とパスワードを入力します。

構築開始

すごく時間かかりますので、しばらくお待ちください。

コンテナの作成が成功しました。

デスクトップでアイコンを確認できます。(ライセンスやバージョンなどによってアイコンの数が違います。)

Web Clientを実行します。

Sign In

ログイン成功。ここまではDynamics 365 Business Central Docker環境の構築が終わりました。

Windows PowerShell ISEを戻して、docker psを実行すると、現在起動中のコンテナを一覧表示できます。

コンテナを利用しない時に必ずdocker stop + Container ID(最初の数文字だけ指定することができる)を実行してください。
docker stop b0c956

追記:
最初からDockerとBcContainerHelperを整えることができれば、次の3つのステップを覚えておけば大丈夫です。
1.スクリプト実行
2.コンテナ作成
3.デスクトップショートカット作成

Dockerの基本コマンド

以上

コメント

Copied title and URL