0
Help us understand the problem. What are the problem?

posted at

EC2+Mysql8.0+Railsまでの構築の流れ

概要

EC2にMysql,Ruby,nginxを構築しELB,RDSとの連携まで行い完成を目指す。

構築の際の環境

  • Mac (M1 MacbookAir)
  • OS : Amazon Linux2
  • rbenv ver : 1.2.0
  • Ruby ver : 3.1.2
  • rails ver :
  • mysql ver : 8.0.28

前提準備 (作成済みなもの)

  • VPC×1
  • Subnet(public×2 , private×2)
  • EC2×1
  • RDS×1
  • route table
  • internet Gateway
  • seculity group (EC2用)×1
  • seculity group (RDS用)×1
  • githubに新規リモートリポジトリ×1
  • EC2へのssh接続設定済み
  • GitHubのターミナルへのインストー設定済み

設定用ツールのインストール

Rails搭載JavaScriptのパッケージを管理するためのパッケージマネージャ

$ sudo yum -y update
$ sudo yum -y install git make gcc-c++ patch libyaml-devel libffi-devel libicu-devel zlib-devel readline-devel libxml2-devel libxslt-devel ImageMagick ImageMagick-devel openssl-devel libcurl libcurl-devel curl

node.jsをインストール

サーバーサイドで動くJavaScriptのパッケージ

$ sudo curl -sL https://rpm.nodesource.com/setup_10.x | sudo bash -
$ sudo yum -y install nodejs

Yarnをインストール

$ sudo wget https://dl.yarnpkg.com/rpm/yarn.repo -O /etc/yum.repos.d/yarn.repo
$ sudo yum -y install yarn

rbenvとruby-buildをインストール

# rbenvのインストール
$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv

# パスを通す(どのディレクトリからもアプリケーションを呼び出せる状態にする)
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile

# rbenvを呼び出すための記述
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile

# bash_profileの読み込み
$ source .bash_profile

# ruby-buildのインストール
$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

# rehashを行う
$ rbenv rehash

Rubyのインストール

Rubyのバージョンは自分の求める環境に合わせる.
rubyのインストールは時間がかかるが、エラーでは無いのでご安心を。

$ rbenv install -v 
$ rbenv global  2.6.5
$ rbenv rehash
$ ruby -v 

bundlerのインストール

$ gem install bundle
$ bundler -v

Railsのインストール ver:6.0.2.1

$ gem install rails -v 6.0.2.1

MySQL(Client)の準備

インストール済みのMariaDBを取り除く

まずはMariaDBの状況を確認

$ yum list installed | grep mariadb

# MariaDBの削除
$ sudo yum remove mariadb-libs

MySQLのインストール

$ sudo yum localinstall -y https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

Mysql8.0のリポジトリを有効化

# MySQL5.7のリポジトリの無効化
$ sudo yum-config-manager --disable mysql57-community

# MySQL8.0のリポジトリの有効化
$ sudo yum-config-manager --enable mysql80-community

mysql-community-clientをインストール

新しいGPGキーをインポートしてから、MySQLをインストールする.
MySQLのGPGキーの有効期限切れのため、MySQL8.0.28では新しいキーで署名される。

$ sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
$ sudo yum install -y mysql-community-client

# MySQLのバージョンの確認
$ mysql --version

参考にさせていただいた記事

Register as a new user and use Qiita more conveniently

  1. You can follow users and tags
  2. you can stock useful information
  3. You can make editorial suggestions for articles
What you can do with signing up
0
Help us understand the problem. What are the problem?