Git編 Untracked files
何気なく使用していたGitにて
細かく行うように心がける中で
ファイルによって
git commit -am
の際
Untracked files
のファイルがはじかれてしまう・・・
気になって調べたところ
【Git】「Untracked files: ...」の意味と元に戻す方法! | あきぞらてっく
新しく生成したファイルは明示的に指定しないと
いけないのか・・?
丁寧にaddしたらステージングにあがりました
やはり生成したファイルに関しては
add -Aで全てのファイルのようにステージングにあげる作業が必要
(もしくは明示的に指定)
デプロイ環境で画像表示ができないエラー
今回のエラーは、「新たに追加をした画像が表示できず追加ページがエラーとなる」
・・・です
追加を行ったページ以外は表示される状態。
試しに
sudo tail -f /var/log/nginx/error.log | grep “error”
nginxエラーログ出てこず
tail -f puma-error.log
pumaエラーログ出てこず
・・・確かにアプリケーション自体は開けているのでこの2つは動かせている状態なのかな。
ここでそもそもgit pullしているはずの画像を保持できているのか確認を行いました。
ls public/assets/
みにくい・・・
ls -la public/assets/ | grep .jpg
だいぶスッキリしました
「ls -l」コマンドの表示からファイルの属性を理解しよう:“応用力”をつけるためのLinux再入門(9)(1/4 ページ) - @IT
ls -l で属性を表示(更新日なども確認したかったので)
ls -aで全て指定
| grep .jpg でjpgファイルに絞りました
結果からいうと、保存されていませんでした
つまりコンパイルできていない・・
bundle exec rails assets:precompile RAILS_ENV=production
コンパイルするコマンドを打つと
エラーが表示され、つまり
このエラーを解決しないとダメそう。
<エラー文>
bootsnap-1.11.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:15:in `require': cannot load
・・・pfいじれるタイミングでbundler周り(バージョン?)
確認しようと思います
herokuって?
気になっていながらなんとなくにしてしまっていたので備忘録で残しておきます。
大枠で
『アプリケーション実行のための環境』は複数あり
SaaS、PaaS、IaaS、DaaS
などのサーバー
このうちherokuはPaaSであり
インフラとOS などのプラットフォームが整っている
(ちなみに現状自分が扱っているAWSも同じPaaS)
実行までにパソコンを用意したりセットアップをしたり…
とにかく色々準備が必要で大変なことを
まとめて解決してくれる。
AWSとの違いは
扱える言語の違い
価格
など。
AWSと同じ区分という事でなんとなくイメージしやすいです!
ちなみによくいうホスティングサービスとクラウドサービスについてもなんとなくでしたので
・ホスティングサービス=料金が固定
・クラウドサービス=柔軟に変更
サーバーもざっくり整理
・SaaS
『Googleドキュメント』
などが分かりやすい例
特徴
①インターネットがあればどこからでもアクセス可能
②複数人が編集や管理が可能
要は
必要なものを開発や管理不要で使用できる
ソフトウェア、提供形態
・IaaS
『AWSのEC2』
など
インフラをネットワーク経由で保有できる
CPU・メモリ・ストレージを利用
https://www.itmanage.co.jp/column/saas-paas-iaas/#anc002
SSH接続エラー
ほんの一時間前まで行えていたssh接続が突然繋がらなくなりました・・・
ssh -i ~/.ssh/practice-aws.pem ec2-user@****(Ip)
<実行結果>
ssh: connect to host *****(Ip) port 22: Connection timed out
(ssh: ホスト ec2-X-X-X-X.compute-1.amazonaws.com ポート 22 への接続: 接続がタイムアウトしました)
検索してみた結果、
公式にありました・・
EC2 インスタンスに SSH で接続しようとする時に発生する「接続が拒否されました」または「接続がタイムアウトしました」エラーを解決する
①ファイアーウォールを確認するべきとのこと
現在使用しているAWSにてセキュリティグループが仮想ファイアーウォールとしての機能となっている
正直セキュリティグループを変更しておらず
普段使わないカフェでEC2インスタンスへのアクセスなどを行っていたところ
繋がらなくなり、
様々な記事にあるように
sshのセキュリティグループをマイIPへ変更するも繋がらず・・
(どうやら繋がっているWiFi?に合わせてアドレス変更される・・?)
場所を変えてみても時間をおいてみても再起動など色々試すも繋がらず・・
AWS EC2 に SSH 接続できない・繋がらないときの確認項目 - サーバー構築と設定 ~初心者にも分かりやすく解説~
しまいには時間が経ったら接続できるようになっていたなどもあり・・
一日置いてみることに。
午前、やはり繋がらず。
途中こんな記事を見つけました。
ssh接続 port 22: Operation timed out なんでや! - icchy's diary
やっていなかったこととして
①以前使えていた状態のsshの設定確認(もしかしたら自動で何か変わってしまっていたのかも・・?)
②Wifiが安定していそうな場所・カフェで確認(EC2接続に利用していたことのある環境でトライ)
③編集後セキュリティグループ割り当ての手順(特に変更操作なくても過程をふむ)
これら全て行ったところなんとかつながることに成功いたしました!
ただし詳しい原因はわからず・・
また時間を見つけ再現してみたいと思います。
ある日の本番環境エラー
エラー文
「Your local changes to the following files would be overwritten by merge:
Gemfile.lock」
「Gemfile.lockがマージによって上書きされています」
⏩「マージする前に変更をコミットするか、隠してください」
https://qiita.com/15grmr/items/433ee3b47828aaad32a8
Gemfile.lockファイルは削除しても大丈夫・・・
ということで削除。
次に
メソッド周りで怒られた為修正。
(デプロイ前にRubocop周りで修正してました。
表記を変えたところエラーがでてしまい戻したところエラーは出ず。
奥深そうな為別で考えます)
次に
Could not find timeout-0.3.0 in any of the sources
Run `bundle install` to install missing gems.
gem周りで怒られました
デプロイ前にテストコード書こうかな?という事で
こちらのgemを追加しておりました
# gem 'net-smtp'
# gem "net-pop"
# gem "net-imap"
一旦これらもコメントアウトしました
さて、これらを行い再度rails sをおこなったところ
・・・やはりエラー(502)
502エラーは「サーバー側の問題」
sudo tail -f /var/log/nginx/error.log
こちら、nginxでのエラーログを見れるコマンドということで試したところ
2022/10/06 03:24:55 [error]
17647#17647: *11 connect() to unix:///home/ec2-user/style/tmp/sockets/puma.sock failed (111: Connection refused) while connecting to upstream,
client: 172.31.41.109, server: stylecms.net,
request: "GET / HTTP/1.1", upstream: "http://unix:///home/ec2-user/style/tmp/sockets/puma.sock:/", host: "172.31.0.19"
(111: Connection refused)
接続拒否・・・
sudo tail -f log/production.log
こちら本番環境のログをみれるコマンド
seedで作成したデータが作られている
ps aux | grep puma
ec2-user 17756 0.0 0.1 119424 988 pts/0 S+ 03:34 0:00 grep --color=auto puma
これはkillしないほうがいいのかな・・・
手詰まりました・・
別日。一旦整理してみることに。
まずは追加しようとしていた
# gem 'net-smtp'
# gem "net-pop"
# gem "net-imap"
まず追加を行った経緯として、
これらのGemは参考にしたデプロイ手順にGemfileへ追加するよう書いてありました
今回、再度見返した際に現在のGemfileと照らしあわせ、
「あれ,ないな・・いれとこ」
という感じで追加しておりました。
これらのGemがなんなのかは一度おき
どうやら必須ではない様子?
→というよりこれらを追加すると
Gemに対してのエラーが出てしまい、エラー文を検索したところ
「設定が二重になってしまっている」のような参考記事が手に入りました。
もしかしたら別の手順でこれらを終えているのかも・・
少なくとも確実にない状態でデプロイ作業ができていた為
消すことにしました。
そうなると、一旦現状のエラーとしては
nginx 502エラー。
Read more