##はじめに
DockerとCircleCIを用いた本番環境で、修正を加えてデプロイすると、CSSだけが反映されていないことに気づきました。
CSS全く機能していないのではなく、修正した箇所が反映されていないという事象です。
完全な解決ではないですが、とりあえず反映させることはできましたので残しておきます。
##解決策
まず疑ったのは、キャッシュが残っているのではないかと思いました。
スーパーリロードとシークレットウィンドウで本番環境を試しましたが、効果なし。
また、HTMLの変更点は反映されているため、コンパイルが怪しいと思いました。
(dockerとcircleciを導入する際にかなりてこずったところでもあったので、特に怪しいと感じました。)
取り急ぎ解決策としては
ターミナルからデプロイしているEC2へ行き、自分のアプリに移動して一度precompileしたものをを削除します。
$ docker-compose run web bundle exec rails assets:clobber RAILS_ENV=production
そしてprecompileをします。
$ docker-compose run web bundle exec rails assets:precompile RAILS_ENV=production
あとは下記のコマンドです。
実際はCircleCIに組み込んでいるので、gitにpushするだけで下記のものたちは自動で実行されていますが。
sudo git pull origin master
docker image prune -f
docker-compose down
docker-compose build
docker-compose up -d'
これで私の場合は解決しました。
原因としてはprecompileがうまくいっていないことだと思います。