progateのrailsソースをダウンロードして
ローカル環境で動かすまで
特に会社で必要でというわけではなくて今の御時世で今までと同じ環境の知識だけだと心もとない!
しかし特に制作物のあても思いつかないのでprogateというものを知ってruby、ruby on railsをやってみた。
progateのネット評価的には超初心者向けとかこれだけではダメ的なことが書かれていることが多いですが作るあてもない人にはrailsは基本的な部分の成果物が見れるので個人的にはいいかなと思っています。
さてここからが表題の件です
progateの学習で止まってはいけないというのは同意見で、私もローカルのdocker環境にダウンロードしたソースコードで同じものをとりあえず動かしてみて今までの経験からのWEBアプリケーション知識をrailsに変えてカスタマイズを施していこうかと思います。
まずはprogateのrailsの最終コースを復讐するよりコードをダウンロードしローカルのプロジェクト配置先で解凍しておきます。
railsのコンテナとmysql5.7のコンテナの作成部分は省略します
基本的にcomposeで構築しましたがmysqlはコンテナ起動時のmysql起動とローカルストレージにmount、railsはローカルのプロジェクトソースにマウントしただけです※railsサーバのコンテナ起動時の起動コマンドを入れていましたがどうもコンテナを手動で止めずにPCを落としたときにpidファイルが残ってコンテナが起動しない事象があり今回はコンテナ起動時のrails serverは諦めました。。
# cp ダウンロードソースパス プロジェクト配置パス
# cd プロジェクトパス
# tar xvzf ダウンロードソース
Gemfile.lokを作成する
# cd プロジェクト直下パス
# touch Gemfile.lok
追加でインストールしておくもの(任意です)をGemfileに記述
# vim Gemfile
>> コメント→ gem 'sqlite3'
>> gem 'mysql2'
>> gem 'rename'
DBはmysqlを使うのとTweetAppというプロジェクト名を変更するのにrenameを使います。
インストール
# bundle install
いじいじしていきたいのでプロジェクト名を変更します 。(任意)
# rails g rename:app_to newName
cookieドメインが変更されなかったのでこちらは手動で
# vim config/initializers/session_store.rb
>> domain:こちらをご自分にあったものに
DBの設定をしていきます
mysqlコンテナにログインしてmysqlにログイン
プロジェクト用のデータベースとユーザーを作成していきます
mysql> CREATE DATABASE `project_db` /*!40100 DEFAULT CHARACTER SET utf8 */
mysql> CREATE USER 'pj_user'@'%' IDENTIFIED WITH mysql_native_password BY 'pj_user';
mysql> GRANT ALL ON `project_db`.* TO 'pj_user'@'%';
mysql> FLUSH PRIVILEGES;
次にrailsに今作成したユーザーとデータベースを設定します。
# vim config/database.yml
adapter: mysql2
encoding: utf8
database: project_db
pool: 5
username: pj_user
password: pj_user
socket: /tmp/mysql.sock
host 'mysql_container'
migrationファイルを適用して課題で作成していたテーブル構成を作成
# rake db:migrate
rails serverを起動します(諸事情で80番ポートですが任意で)
# rails s -p 80 -b '0.0.0.0'
これで
localhost:【dockerマッピングポート】
これで表示されました。
思い出しながら書きましたのでタイピングミスなどありまししたらごめんなさい。
さてちょっと思いついたサービスを作っていこうと思います!
コメント
コメントを投稿