経緯
apacheサーバーで運用している開発案件に参画
apacheじゃ無いと、jqueryの読み込み順序がバグる。
.htaccessも使いたい。
でも、docker-composeとか毎回書くのだるい。
やりたいこと
apacheでコマンド1つで現在ディレクトリを配信するサーバーを構築したい。
解決策
serve
とコマンドを打つと、apacheのdockerコンテナが起動するようにfish functionを作った。
zshやbashでも同じように作れると思う。
tree
# ~/.config/fish/functions
.
├── serve
│ └── Dockerfile
└── serve.fish
~/.config/fish/functions/serve/Dockerfile
FROM php:7.0-apache
RUN a2enmod rewrite proxy proxy_http
~/.config/fish/functions/serve.fish
function serve
echo (dirname (status --current-filename))
docker run -it -p 8080:80 -v "$PWD":/var/www/html (docker build -q (dirname (status --current-filename))/serve)
end
appendix
今後
以下をやるかも
- argsでポート指定できるように
他の手段
serveコマンド(npmやyarnでインストール)
読み込み順序がバグる。.htaccessが使えない。などの理由から今回は正常に動作しなかった。
nginxコマンドを作る
本番環境で.htaccessを使ってるので、近い環境で試したかった。