バーチャルオフィス構築してみました

2023.02.24

ITソリューション事業部 第1開発部、エンジニアの佐々木です。

社内でバーチャルオフィスを利用した事がありました。
なんとなくオープンソースであるのでは?と探したところ。。。

ありました。
https://github.com/kevinshen56714/SkyOffice

SkyOfficeというものです。

早速Dockerで構築しました。
nodeで作られている様です。
nodeの知識・・・というかViteの知識が足りずハマりどころがありました。
ハマりどころについては後ほど。。。

で、できました。

ホワイトボードの共有もできるようです。

その他、画面共有などもできるようです。
ミニゲームの実装などサービスとして提供しているものほどリッチではありませんが
バーチャルオフィスと言えるような機能は一通りあると思います。

docker-composeのソースは以下の通りです。
[ソースコード]

  1. version: "3.7"
  2. services:
  3.   server:
  4.     image: node:18
  5.     container_name: skyoffice-server
  6.     hostname: web-server
  7.     working_dir: /usr/src/app/SkyOffice
  8.     tty: true
  9.     ports:
  10.       - "127.0.0.1:2567:2567"
  11.     volumes:
  12.       - ./SkyOffice:/usr/src/app/SkyOffice
  13.     command:
  14.       bash -c "yarn && yarn start"
  15.   client:
  16.     image: node:18
  17.     container_name: skyoffice-client
  18.     hostname: client-server
  19.     working_dir: /usr/src/app/SkyOffice/client
  20.     tty: true
  21.     ports:
  22.       - "127.0.0.1:80:5173"
  23.     volumes:
  24.       - ./SkyOffice:/usr/src/app/SkyOffice
  25.     command:
  26.       bash -c "yarn && yarn dev --host"

ハマりどころ
公式のGetting Started通りにコマンド部分を実装したのですが
PCのブラウザからhttpアクセスで応答がありませんでした。
コンテナの中に入ってcurlでアクセスしたところ応答はありました。
さらにdocker-compose upにてコンソールを確認したところ何やらこんな文字が。。。
skyoffice-client | VITE v3.0.9 ready in 5353 ms
skyoffice-client |
skyoffice-client | ? Local: http://localhost:5173/
skyoffice-client | ? Network: use –host to expose

取り敢えず「VITE」で検索しようとするとサジェストで「VITE docker」との文字が。
すると yarn dev だとdocker環境の場合はアクセスできないとのこと。
そのため yarn dev –host が必要との事。
そう、書いてあったんですよわざわざコンソールに。。。

参考
https://qiita.com/Sicut_study/items/77cfb1f7df7e75d2d20a
https://qiita.com/ginger-yell/items/602091d7010f77fbb47a

ではでは、
最後まで読んでいただきありがとうございました!

ダイヤモンドファンタジーでは
一緒に働いて頂けるメンバーを
募集しています。

ENTRY