php_modが非推奨になったのね

昔のバージョンのphp環境でphpバージョンを上げるという対応中。 apache + PHP8のインスタンスを構築してドキュメントルートまで到達を確認。 対応する人にドキュメントルートまで到達するからプロジェクトのファイルを置いてバージョンアップのエラーを確認してもらうため依頼しましたが HTTP 503 Service Unavailable のエラーが出ているとのこと。 HTMLファイルはアクセスできているからPHPの実行ができていないと思い調べると Apache HTTP サーバーで使用するために PHP に提供されている mod_php モジュールが非推奨になりました。 php-fpmをインストールして起動し、リクエストを流してphp-fmpでphpを実行するようにして解決。 しばらくPHPを触っていなかったのでモジュールが非推奨になったことに気づかずでした。

progateのrailsソースをダウンロードしてローカル環境で動かす

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マッピングポート】

これで表示されました。


思い出しながら書きましたのでタイピングミスなどありまししたらごめんなさい。
さてちょっと思いついたサービスを作っていこうと思います!

コメント

このブログの人気の投稿

nginxで画像が表示されない。。

AWSのS3バケットをマウントするs3fsでマウントが外れた件

CakePHP3でHTTPSにする