こんにちは!R&Dセンターの長尾です。
私の所属しているチームでは、社内のAsustor NAS上でWebサーバーを動かしています。
Webサーバーといっても自社開発のてんかく忍者のことなのですが、これをNAS上で動作させて社内からアクセスし、検証したりしています。
思えば最初は「NASでWebサーバー動くっけ?」と手探りで進めていた時期がありました。(遠い目)
ということで今回は、どんな感じでNAS上でWebサーバーを動かしているのかについて軽く共有します。
当チームが採っている方法ではないのですが、まずは王道であり簡単な方法をご紹介しておきます。
AsustorのNASには、標準でWeb CenterというWebサーバー用アプリがインストールされています。
![]() |
これを活用して次の設定をすると一瞬でNASをWebサーバー化できます。
これらの設定をした後に http://NASのIP:20080 にアクセスすると次のようなページが表示され、Webサーバーとして稼働していることがわかります。
![]() |
ちなみにこのページは /volume1/Web/index.php ファイルが使用されています。 (volume1はシステムボリューム名)
index.phpの内容を変更したり index.html に置き換えたりすることで自分のコンテンツに書き換えることができます。
Web Centerのドキュメントで細かい情報を確認できます。
Web Centerを使うと一瞬でWebサーバーを立てることができますが、実は当チームではWeb Centerは使わずDockerを使ってWebサーバーを立てています。
Dockerは標準では使えないのですが、Asustor NASのパッケージ管理アプリApp CentralからDocker-ceというパッケージをインストールすると使用可能になります。
App CentralでDocker-ceアプリが有効になっている様子:
![]() |
Portainer CEというアプリをインストールするとNASの管理画面からDockerコンテナの管理をすることが出来るようになります。
これもApp Centralからインストール可能です。
とはいえdockerのCUIを使えばどの環境でも同じコマンドを流用できるので、当チームではPortainer CEは使っていません。
CUIからコマンドを発行するにはSSHで接続してターミナル画面を開く必要があります。
SSHサービスの設定も
サービス > 端末
で用意されているGUIを操作して直感的にできます。
![]() |
SSHサービスの設定ができたら次のようにログインして
ssh ユーザー名@NASのIPアドレス
Webサーバー用のディレクトリを作り、そこにマウントする形で ubuntu/apache2 コンテナを立ち上げます。
# カレントディレクトリをSSHログインユーザーのホームディレクトリに cd ~ # wwwディレクトリを作成 mkdir www # wwwの中に入る cd www # Dockerコンテナを作成 sudo docker run --name my-server -dp 8888:80 -e TZ=JST \
-v .:/var/www/html ubuntu/apache2 # 動作検証用にindex.htmlを作成 echo "Hello Asustor NAS Web Server!" > index.html
この手順の後で http://NASのIP:8888/index.html にブラウザからアクセスすれば表示を確認できます。
![]() |
Webサーバーが用済みになったら
sudo docker rm -f my-server
とてコンテナを削除します。
余談ですが、dockerコマンドを使うたびに sudo コマンドを使っているのを見て気になった方、Linux管理者としてよい感性だと思います。
dockerの仕様として、dockerコマンドを使うユーザーがLinuxシステムのdockerグループに属していれば sudo を省略することができるようになります。
この辺りの設定方法については Linux post-installation steps for Docker Engine にドキュメントがありますが、Asustor NASの場合は少し事情が異なり、NASの管理画面からdockerグループを作成し、そこにdockerコマンドを扱うユーザーを所属させる方法が適切のようです。
![]() |
てんかく忍者はdocker composeを活用して3つのDockerコンテナを連携起動させているのですがdocker技術の延長線上であり、NASとdockerを組み合わせれば色々と活用の幅が広がると思います。
NAS上に立てたWebサーバーはルーターにポートフォワーディング設定をするとインターネットからアクセスできるようになります。
ただし破滅的なまでにセキュリティリスクが高まるためインターネット公開はNGです。
ローカルネットワークからの使用にとどめておきましょう。
もちろん当社もNASはローカルネットワーク内での活用にとどめていて、インターネットへ公開しているものはクラウドサービスを活用するようにしています。
今回はAsustorのNASをWebサーバーとして使う方法について情報共有してみました。
もし当社の取り組みに興味をお持ちでしたらお気軽にお問い合わせ下さい。
今後も面白そうなテーマを見つけては情報共有していきます。
▼この記事を書いたひと
R&Dセンター 長尾 賢志
Pythonでデータ解析・可視化、SwiftUIで簡単なiOSアプリ作成、Dockerでハードに依存しない環境を構築、AWSでコスト最適化のトライ、などをしています。保有資格:ソフトウェア開発技術者
●富士見事務所 TEL : 052-228-8744(交通部営業課) FAX : 052-323-3337(交通部共通)
〒460-0014 愛知県名古屋市中区富士見町13−22 ファミール富士見711 地図
PoCのお問い合わせ:交通部営業課
技術的なお問い合わせ:R&Dセンター