LoginSignup
12
17

More than 3 years have passed since last update.

Docker で CLI for Microsoft 365 を使用しアプリカタログサイトを作成する

Last updated at Posted at 2020-08-31

はじめに

この記事は、CLI for Microsoft 365 を Docker コンテナー上で使用し、SharePoint Online (SPO) のアプリカタログサイトを作成します。

環境

  • OS: macOS Catalina バージョン 10.15.6
  • Docker Desktop: 2.3.0.4

スクリーンショット 2020-08-31 0.08.13.png

スクリーンショット 2020-08-31 0.09.34.png

環境構築

任意のディレクトリに移動し、Dockerfile を作成します。

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 を作成します。

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
timeZone一覧
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
12
17
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
17