はじめに
この記事は、CLI for Microsoft 365 を Docker コンテナー上で使用し、SharePoint Online (SPO) のアプリカタログサイトを作成します。
環境
- OS: macOS Catalina バージョン 10.15.6
- Docker Desktop: 2.3.0.4
環境構築
任意のディレクトリに移動し、Dockerfile を作成します。
FROM node:12.18.3
RUN npm i -g @pnp/cli-microsoft365
VOLUME /usr/src
WORKDIR /usr/src
CMD /bin/bash
docker-compose.yaml を作成します。
version: '3'
services:
app:
build: .
container_name: m365-cli
tty: true
volumes:
- ./src:/usr/src
working_dir: "/usr/src"
docker-compose up -d --build
でコンテナーを起動します。
docker-compose up -d --build
Docker コンテナーを起動したら、docker ps
でコンテナー ID を確認します。
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
db0427614c8f docker-m365cli_app "docker-entrypoint.s…" 22 seconds ago Up 21 seconds m365-cli
上記の例では、db0427614c8f
がコンテナー ID になるため、この ID を使用してコンテナーにログインします。
コンテナー ID は、自分のものに置き換えて実行してください。
docker exec -it db0427614c8f /bin/bash
コンテナーにログインしたら、CLI for Microsoft 365 を起動しましょう。
m365 login
To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code CMPFXKTBD to authenticate.
コマンドを実行すると、ログインページと認証コードの情報が表示されるので、指定 URL に遷移し、認証コードを送信の上、Microsoft 365 で SharePoint の管理権限があるアカウントでログインを行います。
ログインが完了したら、接続状況を確認しましょう。ログイン時に使用したアカウント情報が表示されれば OK です。
m365 status
connectedAs: <ログインに使用したアカウントのメールアドレス>
アプリカタログサイトの作成
以下のコマンドを実行し、テナントの SharePoint Online アプリカタログサイトを作成します。
m365 spo tenant appcatalog add --url <テナントのアプリカタログサイトとする URL> --owner <サインインに使用したメールアドレス> --timeZone 20 --wait
m365 spo tenant appcatalog add --help
で、コマンドのオプションを確認できます。ただし、timeZone
オプションについては、詳細の記載がありません。timeZone
オプションについては、PowerShell の PnP で以下のコマンドを実行した結果を参考にしてください。
Install-Module SharePointPnPPowerShellOnline
Get-PnPTimeZoneId
Id Description Identifier
-- ----------- ----------
0 None No:ne
2 GREENWICH MEAN TIME DUBLIN EDINBURGH LISBON LONDON UTC
3 BRUSSELS COPENHAGEN MADRID PARIS UTC+01:00
4 AMSTERDAM BERLIN BERN ROME STOCKHOLM VIENNA UTC+01:00
5 ATHENS BUCHAREST ISTANBUL UTC+02:00
6 BELGRADE BRATISLAVA BUDAPEST LJUBLJANA PRAGUE UTC+01:00
7 MINSK UTC+02:00
8 BRASILIA UTC-03:00
9 ATLANTIC TIME CANADA UTC-04:00
10 EASTERN TIME US AND CANADA UTC-05:00
11 CENTRAL TIME US AND CANADA UTC-06:00
12 MOUNTAIN TIME US AND CANADA UTC-07:00
13 PACIFIC TIME US AND CANADA UTC-08:00
14 ALASKA UTC-09:00
15 HAWAII UTC-10:00
16 MIDWAY ISLAND SAMOA UTC-11:00
17 AUKLAND WELLINGTON UTC+12:00
17 AUKLAND WELLINGTON UTC+12:00
18 BRISBANE UTC+10:00
19 ADELAIDE UTC+09:30
20 OSAKA SAPPORO TOKYO UTC+09:00
21 KUALA LUMPUR SINGAPORE UTC+08:00
22 BANGKOK HANOI JAKARTA UTC+07:00
23 CHENNAI KOLKATA MUMBAI NEW DELHI UTC+05:30
24 ABU DHABI MUSCAT UTC+04:00
25 TEHRAN UTC+03:30
26 BAGHDAD UTC+03:00
27 JERUSALEM UTC+02:00
28 NEWFOUNDLAND AND LABRADOR UTC-03:30
29 AZORES UTC-01:00
30 MID ATLANTIC UTC-02:00
31 MONROVIA UTC
32 CAYENNE UTC-03:00
33 GEORGETOWN LA PAZ SAN JUAN UTC-04:00
34 INDIANA EAST UTC-05:00
35 BOGOTA LIMA QUITO UTC-05:00
36 SASKATCHEWAN UTC-06:00
37 GUADALAJARA MEXICO CITY MONTERREY UTC-06:00
38 ARIZONA UTC-07:00
39 INTERNATIONAL DATE LINE WEST UTC-12:00
40 FIJI ISLANDS MARSHALL ISLANDS UTC+12:00
41 MADAGAN SOLOMON ISLANDS NEW CALENDONIA UTC+11:00
42 HOBART UTC+10:00
43 GUAM PORT MORESBY UTC+10:00
44 DARWIN UTC+09:30
45 BEIJING CHONGQING HONG KONG SAR URUMQI UTC+08:00
46 NOVOSIBIRSK UTC+06:00
47 TASHKENT UTC+05:00
48 KABUL UTC+04:30
49 CAIRO UTC+02:00
50 HARARE PRETORIA UTC+02:00
51 MOSCOW STPETERSBURG VOLGOGRAD UTC+03:00
53 CAPE VERDE ISLANDS UTC-01:00
54 BAKU UTC+04:00
55 CENTRAL AMERICA UTC-06:00
56 NAIROBI UTC+03:00
57 SARAJEVO SKOPJE WARSAW ZAGREB UTC+01:00
58 EKATERINBURG UTC+05:00
59 HELSINKI KYIV RIGA SOFIA TALLINN VILNIUS UTC+02:00
60 GREENLAND UTC-03:00
61 YANGON RANGOON UTC+06:30
62 KATHMANDU UTC+05:45
63 IRKUTSK UTC+08:00
64 KRASNOYARSK UTC+07:00
65 SANTIAGO UTC-04:00
66 SRI JAYAWARDENEPURA UTC+05:30
67 NUKU ALOFA UTC+13:00
68 VLADIVOSTOK UTC+10:00
69 WEST CENTRAL AFRICA UTC+01:00
70 YAKUTSK UTC+09:00
71 ASTANA DHAKA UTC+06:00
72 SEOUL UTC+09:00
73 PERTH UTC+08:00
74 KUWAIT RIYADH UTC+03:00
75 TAIPEI UTC+08:00
76 CANBERRA MELBOURNE SYDNEY UTC+10:00
77 CHIHUAHUA LA PAZ MAZATLAN UTC-07:00
78 TIJUANA BAJA CALFORNIA UTC-08:00
79 AMMAN UTC+02:00
80 BEIRUT UTC+02:00
81 MANAUS UTC-04:00
82 TBILISI UTC+04:00
83 WINDHOEK UTC+02:00
84 YEREVAN UTC+04:00
85 BUENOS AIRES UTC-03:00
86 CASABLANCA UTC
87 ISLAMABAD KARACHI UTC+05:00
88 CARACAS UTC-04:30
89 PORT LOUIS UTC+04:00
90 MONTEVIDEO UTC-03:00
91 ASUNCION UTC-04:00
92 PETROPAVLOVSK KACHATSKY UTC+12:00
93 COORDINATED UNIVERSAL TIME UTC
94 ULAANBAATAR UTC-08:00
作成が完了したら、以下のコマンドを実行して結果を確認しましょう。テナントのアプリカタログサイトの URL が表示されるので、実際にアクセスしを行い、作成されたことを確認しましょう。
m365 spo tenant appcatalogurl get