いわりょのBlog

IT関連で学んだことを書いていきます。

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

既存のRailsアプリのローカル開発環境をDockerの仮想環境に切り替える

最近までRailsのアプリの開発はローカル環境で行っていました。Dockerを学び初めて使ってみたいなと思ったので、開発環境をDockerとdocker-composeで作ってみることにしました。 開発環境の完成図 前提 ディレクトリ構成 Railsアプリコンテナの設定 Dockerfi…

dockerコマンドオプションの「-it」を理解する

dockerを学び始めてオプションのところでつまづきました。dockerのrunコマンドを打つときに、よく「-it」オプションを入力しているのをよく見かけるので今回はこの意味を理解して行こうと思います。 オプションを分割して理解する 「 -i」とは iは「interact…

本番環境でのrails db:migrate:reset

ローカルでDBをリセットするとき $ rails db:migrate:reset $ rails db:seedなどの手順を行ってきた。しかしAWSでデプロイするなどしたときに、本番環境ではやり方が違うらしいです。今回はそれを調べて試していきます。参考にさせていただいた記事↓qiita.co…

自作railsアプリをデプロイする 番外編 サイトをHTTPS化して通信を暗号化する

ryo10leo.hatenablog.com上の記事を通して、以下のようなインフラを作成しました。↓ EC2の中身はこんな感じです。↓今回はRailsアプリケーションをHTTPSで通信ができるようにして、セキュリティ面を向上させていきたいと思います。 HTTPS通信を軽く理解する …

自作railsアプリをデプロイする 番外編 Cloud Frontを使って画像を高速配信する

ryo10leo.hatenablog.com ryo10leo.hatenablog.com上の記事を通して、以下のようなインフラを作成しました。↓ EC2の中身はこんな感じです。↓Railsアプリケーションから投稿した画像を「S3」のバケットに保存することができました。今回は「Cloud Front」を使…

自作railsアプリをデプロイする 番外編 Route 53でドメインを設定する

ryo10leo.hatenablog.com上の記事を通して、以下のようなインフラを作成しました。↓ EC2の中身はこんな感じです。↓ここまでの設定ですと、IPアドレスを入力することでしかアプリを表示することができません。なので今回は「Route53」を使って、独自のドメイ…

自作railsアプリをデプロイする 番外編 本番環境の画像投稿 S3を作成する

ryo10leo.hatenablog.com上の記事を通して、以下のようなインフラを作成しました。↓ EC2の中身はこんな感じです。↓今回はRailsアプリケーションから画像を投稿するためのストレージをAWSの「S3」に設定していきます。 S3を軽く理解する S3とは「Simple Stora…

自作railsアプリをデプロイする Part10 EC2インスタンス環境構築編

前回やったところから残りの設定を終わらせていきたいと思います。前回は大まかに、インスタンスに諸々の設定をしたあとアプリのクローンを作成したところまでいきました。今回はWebサーバーやアプリケーションサーバー、SQLなどの設定をやっていきます。正…

設定したはずの環境変数がログアウトしたら消える時の対処

サーバー構築を勉強している際に、環境変数の設定方法を学んだので、以下のように設定していました。↓ export HOGE="hogehoge"諸々の作業を終えた後にログアウトして、しばらくしてから再びログインして環境変数を確認。↓ export -p 「あれ…?全部消えてる……

パスワード変更後にGit Pushできなくなった時の対処

Git

問題の発端 GitHubで「パスワードを変えやがれー」と言われました。 問題 仕方なくパスワードを変えた後に、ローカルの作業で「Git Push」したときにこんなエラーが、、、↓ $ git push remote: Invalid username or password. fatal: Authentication failed …

PostgreSQLをEC2に導入する

SQL

AWSのEC2サーバー内でWeb3層構成を構築している際、データベース層には「PostgreSQL」を導入することにした。導入するのに苦労したので、導入やユーザー、データベース作成の過程を書いていきたい。 PostgreSQLのダウンロードリスト 以下をインストールしま…

自作railsアプリをデプロイする Part9 EC2インスタンス環境構築編

前回したこと↓自分のec2インスタンスにログインするユーザーを作成して、無事インスタンスにログインすることができました。ryo10leo.hatenablog.com 今回は、実際にインスタンスの環境構築を行っていこうと思います。 環境構築とは何をするのか 今回行う環…

自作railsアプリをデプロイする Part8 EC2インスタンスログイン編

前回までに作成したインフラ環境は以下の通りです。↓Elastic IPアドレスを作成して一つのパブリックIPアドレスを専有し、無事EC2インスタンスと通信できるようになりました。今回は、実際にEC2インスタンスにSSH通信でログインしてみます。 SSH通信を理解す…

自作railsアプリをデプロイする Part7 Elastic IPアドレス作成編

前回作成したインフラ環境は以下のようになります。↓サブネットの中にEC2インスタンスを設置しました。 これでサーバーを設置したということになります。 今回は、この作成したEC2インスタンスに、Elastic IPアドレスを作成して紐付ける作業を行っていきます…

自作railsアプリをデプロイする Part6 EC2インスタンス作成編

前回までに作成したインフラ環境はこちら↓セキュリティグループが無事作成しましたので、今回は実際に作成したサブネットの中にEC2インスタンスを設置していきたいと思います。 EC2インスタンスを理解する 軽くサーバーを理解する 作成するものを図で理解す…

rails ファビコンの設定

簡単な実装ですが、ホームページやiOSのアイコンをrailsで設定したのでメモ。 実現するもの Chromeのアイコンとか↓スマホのアイコンとかです。↓画像が用意できたらすぐに実装できます。 ブラウザのアイコン application.html.erbに以下の1行を追加するだけ…

自作railsアプリをデプロイする Part5 VPCセキュリティグループ作成編

前回作成できたインフラ環境は以下のようになります。↓ ルートテーブル作成して、インターネットゲートウェイへのルーティングが行えるようになりました。 ryo10leo.hatenablog.com今回はインバウンドな通信(自身のネットワークに送られる通信)に対してファ…

自作railsアプリをデプロイする Part4 VPCルートテーブル作成編

前回作成した環境は以下の通りです。↓インターネットゲートウェイを作成したことによって、VPCがインターネットへ通信ができるようになりました!と言いたいところですが、このままではまだインターネットなどの外部に通信を行うことができません。 あくまで…

自作railsアプリをデプロイする Part3 VPCインターネットゲートウェイ作成編

前回はサブネットを作成し、以下のような図の状態を作成しました。 前回の記事↓ ryo10leo.hatenablog.com今回はインターネットゲートウェイを作成していきます。 インターネットゲートウェイとは ここまでの作業ではAWSからVPCを確保しています。しかしこれ…

自作railsアプリをデプロイする Part2 VPCサブネット編

前回は、AWSでインフラ構築のためのVPCを作成しました。ryo10leo.hatenablog.com今回は、その手に入れた領域(VPC)の中で、サブネットを作成していきます。 サブネットとは? VPCの中でIPアドレスを切り分けて、いくつかのネットワークに分割できます。 分割…

自作railsアプリをデプロイする Part1 VPC作成編

美容室HP&記事、画像投稿の個人サービスアプリを作成したので公開用にAWSを使ってデプロイしていきます。 VPCを作成するとは VPCとは、Virtual Private Cloudといい。ユーザー専用のプライベートなクラウド環境を提供するAWSのサービスです。デプロイするた…

rails 基本的なログインシステム Part4 永続的なログインシステム 後編

すること ユーザーの永続的ログインシステムの続き 管理人をユーザーモデルで作成 ログインのcontroller作成やルーティング設定 ログインのビュー作成 ログイン機能作成 ちょっと発展機能を加える ログイン機能を実装したことによって利用できること 5のログ…

rails 基本的なログインシステム Part3 永続的なログイン機能 前編

すること ユーザーのログインシステムの続き 管理人をユーザーモデルで作成 ログインのcontroller作成やルーティング設定 ログインのビュー作成 ログイン機能作成 ちょっと発展機能を加える ログイン機能を実装したことによって利用できること 4まできたので…

rails link_toメソッドの使い方をまとめる 応用あり

link_toメソッドは、HTMLのaタグにです。 いろんな使い方を見てきたのでメモ。 指定したリンクへ移動するための、テキストを表示させる 第一引数は表示させるテキスト、第二引数はリンクを書きます。 <%= link_to “詳細をみる”, “http://www.example.co.jp/p…

HPで使える ページ最上部に移動するボタンを作成する。

こんなのです。 方法 ご自身でお好みのアイコンを使いましょう。 fontawesome.com <p id="pageTop"><a href="#"><i class="fa fa-chevron-up"></i></a></p> htmlはこんな感じ /* PAGE_TOP_BTN */ #pageTop { position: fixed; bottom: 20px; right: 20px; z-index: 999; } #pageTop i { padding-top: 7px; } #pageTop a { display:…

CarrierWaveの画像投稿テストがやっとできた fixture作成とアップロードテスト

長い間避けてたCarrierWave画像投稿のテストをついにやってみる。ドキュメントが英語だったので逃げてました笑 条件 rails 5.1.7 carrierwave 1.2.2 CarrierWaveを設定する config/initializers/carrierwave.rb CarrierWave.configure do |config| ・ ・ con…

Will_Pagenateで記事の表示件数を設定する。

実現するのもの 記事のテストページです。 動画のように、2件ごとに記事を表示させています。 記事の投稿機能が実装できていればこちらの導入はめちゃくちゃ簡単にできます。 必要なgemのインストール 今回はwill_pagenateというgemを使います。表示件数の制…

TOPページでArticleモデルから更新順3件の記事を表示。

実現するもの HPのトップページで最新記事3件がよくあります。 Articleモデルから3件の記事を更新順に抽出して表示していきます。 使っているArticleモデルはこんな感じ。 content、記事の内容についてはHTML文を保存しています。 home.html.erb <% if @top…

お店の営業カレンダー&予約状況を表示するFullCalendar導入 Googleカレンダー同期編

実現するもの HPによくある定休日が色付けされていたり、予約時間が書かれているカレンダーです。 Googleカレンダーと連携しているので、Google側で予定が追加されたり、削除されたりするとHPのカレンダーもすぐにその情報が反映されます。どのように反映さ…

rails 基本的なログインシステム part2

すること ユーザーのログインシステムの続き 管理人をユーザーモデルで作成 ログインのcontroller作成やルーティング設定 ログインのビュー作成 ログイン機能作成 ちょっと発展機能を加える ログイン機能を実装したことによって利用できること 前編で3まで…