🚀
Ansible win_nssmモジュールでWindowsサービス登録
概要
win_serviceモジュールでサービス登録を行えないアプリを
win_nssmモジュールを利用してサービス登録を行う。
要件
ドキュメントに、win_nssm
を利用するにはwin_chocolatey
でnssm
をインストールする必要があると書いてあるので、インストールを行う。
nssm のインストール
- name: Install nssm
win_chocolatey:
name: nssm
state: present
ignore_errors: yes
- name: reboot_server
ansible.windows.win_reboot:
対象PCの.NET Framework バージョンによっては、chocolateyに必要な.NET Frameworkのインストールが行われ再起動が必要とメッセージが表示されるのでignore_errors: yes
でエラーになっても再起動を行うようにしている。
.NET Frameworkをインストールするタスクを作っておいた方が良いのかも。
win_nssmを利用したサービス登録
- name: Service registration.
community.windows.win_nssm:
name : "{{ service.name }}"
application: "{{ service.path }}"
arguments:
- -config.file={{ service.yml }}
display_name: "{{ service.display_name }}"
description: "{{ service.description }}"
start_mode: auto
state: started
パラメータ
パラメータ | 説明 |
---|---|
name | 登録するサービス名 |
application | 登録するアプリのパス |
arguments | 起動時にアプリに渡す起動引数 |
display_name | サービス表示名 |
description | サービスの説明 |
start_mode | 起動モード |
state | サービスの状態 |
Discussion