2021-02-01から1ヶ月間の記事一覧

binding.pry使い方

知らなかったこと: 処理を止めたコントローラーで、コンソールから変数を入力すると、定義されていれば値が帰ってくる。定義されていなければ、nilが帰ってくる。 viewでも実行できる <%= @book.title %> <% binding.pry %> これで、@book.title内に本当に正…

ゲストユーザーを編集させない

はじめに 編集ボタンを隠すやり方もあるが、"編集画面を作っている"と、ポートフォリオを見る人へ伝えたかったので、編集ボタンを表示させて、それを押したら→リダイレクト→「ゲストユーザーは編集できません」のメッセージを表示。というやり方で実装しまし…

ec2でポートを開放しNginxを通信可能にする(FireWallの設定)

その前に、、 ポートの開放80のHTTPとHTTPSの違いが気になった HTTPS 443 HTTP 80 (Nginx) 第2回 HTTPSの詳細:超入門HTTPS(1/2 ページ) - @IT 本題 ファイアウォールで80番ポートがブロックされているから、ポートの開放(80)をして、Nginxを表示するよう…

Nginxのコードをなんとなく理解する

Nginxの特徴→リバースプロシキ: webサーバーの分身になって、処理をこなう。処理が大きくなってきたら、新たな身代わりサーバを作成して、負荷を分散してくれる。 理解するコードはこれ。(深くは追わない) user nginx; worker_processes auto; error_log /va…

docker pull nginxしたものを編集し、自分のDockerHubにpushしたログ

imageは設計書。containerがそれを元に生成される。 $ docker pull nginx コンテナ内に入る $ docker run -it -p 8080:80 nginx bin/bash viが使えるように # apt update && apt install -y vim psコマンドが使えるように # apt update && apt install -y pr…

web, AP, DBサーバの全体像をつかむ

結論から言うと現代のWebアプリケーションのほとんどは、Webサーバ・データベースサーバ・アプリケーションサーバの三層構成になっています。 https://qiita.com/tamago3keran/items/f470593926458b7ef52a#webアプリケーション構成の歴史 なぜこの3つになっ…

環境変数とは

OS

OSに格納されている変数 変数を削除、変更することが可能。2つの方法 →・コンピュータの設定を変える(全てに影響が出る) →・プログラム内から変える(そのプログラム内だけが変わる) このコマンドで一覧をみることができる % set 参考: https://wa3.i-3-i.inf…

本番環境では、なぜrails sではなくNginx,Puma?

rack(rails s)はあくまで、アプリケーションサーバー。なので、webサーバが持っているような負荷を分散させるための機能などがなく、実運用していく上で、大勢の人がサイトを見たときなどにとても重くなってしまう。 nginx: たくさんの人から、同時アクセス…

Nginx, Puma(Unicorn), Racksとは?

Puma(Unicorn) : アプリケーションサーバー Nginx :Webサーバー Racks: RailsとUnicornの通訳 Rails5以降は、Pumaがよく使われている。 https://qiita.com/naoki_mochizuki/items/5a1757d222806cbe0cd1 ・クライアントからの簡単な命令だと、webサーバが処理…

dockerでaddress already in use系のエラーまとめた

ec2で、compose upしたら、docker userland proxy: listen tcp 0.0.0.0:3306: bind: address already in use 以前mysqlを、startしてのままだったから、 sudo service mysqld stop した。再度ビルド。→いけた。 エラーログ Successfully built 3d6d830af6eb …

authorized_keys とは?

ssh

今理解していること →pubの内容を保存しておく場所 ~/.ssh/authorized_keys: Holds a list of authorized public keys for servers. When the client connects to a server, the server authenticates the client by checking its signed public key stored …

ssh known_hostsとは

ssh

まとめるとknown_hostsとは「公開鍵認証のSSHでログインしたサーバのホスト鍵を記録し,次回からのホスト認証で利用されるファイル」である. https://a-mochan.hatenablog.com/entry/2019/12/20/141036#:~:text=まとめるとknown_hostsとは,されるファイル」…

ec2内にgit cloneしようとしたら、Cloning into 'myapp'... Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.

[kazumawada@ip-10-0-0-197 rails]$ git clone git@github.com:kazumawada/myapp.git Cloning into 'myapp'... Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and th…

Circle CI(CI/CD )とは

できること mainにマージされたら自動でサーバーへSSHしてコードをデプロイ Sass型のCI/CDサービス。 sass: software as a service( Notin, Netflix, Spotify etc。インターネットでアクセスできるサービスのこと) CI/CD ・CI(継続的インテグレーション)とは…

proxyとは

・セキュリティ ・アプリケーションゲートウェイ ・LANの中と外の間に位置して、外部とのやりとりを代行して行う機能 外部との通信をするときに、proxyサーバーを間に立たせることで、不正アクセスを防ぐ役割を持つ。

TCP/IP, ポート, HTTPをまとめた。

ポートとは, TCP/IPとは ・tcp/ip方式で通信します。 ・ip(internet protcol)はアドレス。とりあえずlanを使って送りつける。(tcpに安全面は任せる) ・tcpは、ネットワーク上で「正しくデータが送られたことを保証する仕組み」を定めたもの。ipに、情報をく…

「AWS EC2を使ってRailsアプリをデプロイ」のログ02 gitと連携~master.keyの取得まで

gitとの連携 アプリをgitからクローンし、EC2インスタンス内に配置していきます。 gitのclone これでできた git cloneする時permission deniedが出る場合、レポジトリがGithubにある場合は、~/.ssh/configのHostの部分をHost github→Host github.comに変更す…

「AWS EC2を使ってRailsアプリをデプロイ」のログ01

はじめに *個人情報っぽいものはhogeで隠している。 作成したインスタンスにパブリックDNSが表示されない場合、ここを参考 AWSでPublic DNS(パブリックDNS)が割り当てられない時の解決法 - Qiita パブリックDNS: ipアドレスとドメインの仲介役 EC2インスタン…