何もしていないけど、急に502のエラー画面が出現してlogを漁ってみたところ
(13: Permission denied)
が表示されました、。。。
どうやら自分の場合はunicornのsocketにうまく接続できていないみたいで、プロセスをkillして
sudo chmod 777 /var/www
からの再デプロイ、で解決できました!
何もしていないけど、急に502のエラー画面が出現してlogを漁ってみたところ
(13: Permission denied)
が表示されました、。。。
どうやら自分の場合はunicornのsocketにうまく接続できていないみたいで、プロセスをkillして
sudo chmod 777 /var/www
からの再デプロイ、で解決できました!
普段Neovimで開発しており、最低限のvim操作を行うために導入しました
まずはyumで関連のライブラリとかをinstall
sudo yum groups install -y Development\ tools
sudo yum install -y cmake
sudo yum install -y python34-{devel,pip}
sudo pip-3.4 install neovim --upgrade
(
cd "$(mktemp -d)"
git clone https://github.com/neovim/neovim.git
cd neovim
make CMAKE_BUILD_TYPE=Release
sudo make install
)
上記完了したら、ターミナルでこちらを打ち込んでください
/usr/local/bin/nvim
nvimをinstallしただけでは、毎回上記のようにpath指定しないと起動しないので
エイリアスを下記のように追加しておきます
vim .bash_profile
alias vi='/bin/nvim'
alias vim='/bin/nvim'
これでvimコマンドでneovimが発火するようになりました!
タイトルの通りで、
で自動デプロイを実現し、Elastic IPで固定したIPにアクセスしているにもかかわらず、全く何も表示されない
という謎現象が発生しました。。。。
で、リンクを確認してcurlしようとしたら、リンクが!!!!
curl -IXGET https://xx.xxx.xxx.xx/
httpではなくhttpsになってました!!!!!
どうやらenvironment系のところで
# condig/environments/production.rb
config.force_ssl = true
SSL強制化されてるみたいで、URLをコピるとなぜかhttpsにリダイレクトされてました
なので、上記をfalseに変更し、デプロイしてみました
こちらが、SSL強制化されてた時のcurl
$ (x86_64)curl -IXGET http://xx.xxx.xxx.xx/
HTTP/1.1 301 Moved Permanently
Server: nginx/1.20.0
Date: Thu, 13 Jan 2022 16:19:41 GMT
Content-Type: text/html
Content-Length: 0
Connection: keep-alive
Location: https://xx.xxx.xxx.xx/
こちらがSSL強制化せずにhttp許容した時のcurl
status 200で帰ってきています!!!
$ (x86_64)curl -IXGET http://xx.xxx.xxx.xx/
HTTP/1.1 200 OK
Server: nginx/1.20.0
Date: Thu, 13 Jan 2022 16:35:23 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 44617
Connection: keep-alive
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
X-Download-Options: noopen
X-Permitted-Cross-Domain-Policies: none
Referrer-Policy: strict-origin-when-cross-origin
Link: </packs/css/application-b171b713.css>; rel=preload; as=style; nopush,</packs/js/application-7afb58b9a494bcaea598.js>; rel=preload; as=script; nopush
Vary: Accept
ETag: W/"6fa88ded29571f01eeb7abda0a4163d6"
Cache-Control: max-age=0, private, must-revalidate
Set-Cookie: _driver_app_session=TveHf8x1%2BTOIoa99u9JSKQwfW0t%2FcMGAXfoiQnVSnvSc5hYdsazCzMpGAP35yNq7TetZsRYS8JJ24WiLzQ1tCzmcSC5fldSHA%2BqA8Upp1o%2FaOO51WmU9rcwBV3lKhdzIHM%2Fxq0aYYGX8Jk9QlZ1Sc3TGcYyHwCLrPG5nzmk0aXM5d785RHnLW9nh8W9MI2NXbrkDl1%2FIOkjU3jUTlidW6mEs3ngEN10cd6majXuzIackgOXcJ4BimYy7PkSAtWsmr%2FRu1hqSahpS%2BOtD6K72sRgyouyD3YhqewYc--RUwMmoZJgeSmRZ8b--6ijMtvVGaI8HGUBqLZPoTw%3D%3D; path=/; HttpOnly; SameSite=Lax
X-Request-Id: 8939aab1-4a98-4060-8669-053a804fca84
X-Runtime: 0.261474
200で返ってきたことを確認したら、ブラウザで
http://xx.xxx.xxx.xx/
にアクセスするとRailsアプリが表示されています!!!!!!!
httpsではなく、httpなのでここは必ず確認したください!!!!
もしうまく動かなければ、unicornのプロセスを削除した上で再度デプロイなどしてみると動くこともあるかもです!!!!!
Capistranoでデプロイできているようですが、サーバー起動せずlog見たらタイトルのエラー出てました
調べてみるとどうやら、Gemfileの参照がうまくいっていないようなので、下記の設定を追加することで参照先を固定して問題を解決しました!
# config/unicorn.rb
before_exec do |server|
ENV['BUNDLE_GEMFILE'] = @app_path + "/current/Gemfile"
end
AWSのEC2でver 14のnode入れているはずなのに、6系が毎度installされる問題が発生しました
下記の通り実行することで解消できました!
sudo yum remove -y nodesource-release* nodejs
yum clean all
sudo rm -rf /var/cache/yum/*
sudo rm /etc/yum.repos.d/nodesource-el.repo
curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -
sudo yum install -y nodejs
AWSのEC2でMySQLを構築しようとしたところ、タイトルのエラーが発生しました
どうやら、
こちらのコマンドに変更して実行したところ、問題なくinstallできました🙌
sudo yum -y install mariadb-server mariadb-devel mariadb
sudo service mariadb start
sudo service mariadb status
# ここから先は起動方法と初期password生成方法
sudo systemctl start mariadb
sudo systemctl status mariadb
sudo /usr/bin/mysql_secure_installation
mysql -u root -p
railsでmysqlを動かしていたところ、タイトルのエラーが発生
下記の記事を参考に直せました🙏
注意点:
権限を回避してアクセス
という箇所ありますが、command + tで新しターミナルウインドウ開く、というのが重要っぽいので、気をつけてください!
MySQLインストール後、アクセス拒否 (Access denied for user ‘root’@’localhost’)
cypressを起動しようとしたところタイトルのエラーが発生しました
No version of Cypress is installed in: /Users/masahirookubo/Library/Caches/Cypress/8.7.0/Cypress.app
Please reinstall Cypress by running: cypress install
----------
Cypress executable not found at: /Users/masahirookubo/Library/Caches/Cypress/8.7.0/Cypress.app/Contents/MacOS/Cypress
----------
Platform: darwin (20.6.0)
Cypress Version: 8.7.0
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
yarnでcypressを強制installすることで対応しました🙌
yarn run cypress install --force
RailsにReact + TypeScript入れたタイトルのエラー発生
こちらで治りました🙏
{
"compilerOptions": {
"declaration": false,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"lib": ["es6", "dom"],
"module": "es6",
"moduleResolution": "node",
"sourceMap": true,
"target": "es5",
"jsx": "react",
"allowSyntheticDefaultImports": true, // 追加
"esModuleInterop": true // 追加
},
"exclude": [
"**/*.spec.ts",
"node_modules",
"vendor",
"public"
],
"compileOnSave": false,
}
TypeScriptでTS1192: Module '"./node_modules/@types/react/index"' has no default export.
というエラーが出る
pytestに関する個人的メモです🙏
一つのテストで複数の値を検証することができる
参考記事: pytestのparametrizeの使い方とその有用性について
テスト実行時にデコレータで設定した関数が実行され、その返却値をテストで参照できる、というものです
参考記事: [Python] 初中級者のためのpytest入門
指定した関数(それ以外も行けるかも?未調査)に値をぶちこめる
こちらの画像が例
use caseなどに任意の値を入れてテストすることが可能なので、pytest.fixtureよりも個人的には大きな発見
参考記事: pytest ヘビー🐍ユーザーへの第一歩
clientのfixture設定していないのに何故か使えてしまう???という問題発生していて、
これはpytest-flaskのpip入れているから、らしいです
ちなみに、それ以外にも提供されているfixtureあるので参照してみてください
参考記事: https://pytest-flask.readthedocs.io/en/latest/features.html#fixtures