today 2019-03-11
access_time 1 min
htmlなど静的ファイルホスティング
最近、こんなクソゲーを作った。いつも単品のhtmlで開発する際に、index.htmlを開いていると、例えば特定のファイルをうまく読んでくれなかったり、パスが不正だったりと本番のDeployingと差分があり不都合になる場合があったりする。
Dockerは最強だった。nginxのイメージを持ってきて、ホストしたいディレクトリをusr/share/nginx/html
にマウントしてあげれば完了。
自分はdockerコマンド直打ちが嫌いなので、次のdocker-compose.ymlを示す。直接実行したい場合は適宜。
version: "3"
services:
nginx:
image: nginx:latest
ports:
- "<local server port>:80"
volumes:
- <mount directory>:/usr/share/nginx/html
例えば、カレントディレクトリのファイル一式をport:4444で公開したい場合は以下のようになる。
version: "3"
services:
nginx:
image: nginx:latest
ports:
- "4444:80"
volumes:
- ./:/usr/share/nginx/html
もしマウントするディレクトリに公開したくないファイルがある場合、.dockerignore
に記載するとマウントされません。
secret-file.json
dockerは最近欠かせないツールになった。