0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Mac版 Flyでデプロイ(まとめ)

Last updated at Posted at 2022-12-14

色々知見が溜まってきたので、改めてMacでのデプロイ方法をまとめる。

手順

今回は以下の流れで進める。

1. gemfile, database.yml の編集
2. node のバージョン変更
3. Fly の準備
4. ビルドとデプロイ

gemfileとdatabase.ymlの編集

Flyの準備の前にこちらを行う。

1. gemfile の編集

gemfileを以下のように書き換える。

Gemfile
- gem 'sqlite3' ~> 1.4
+ #gem 'sqlite3' ~> 1.4

# 割愛

group :development, :test do
  gem 'sqlite3' #追記
  #  割愛
end

#一番下にまるごと追記
group :production do
  gem 'pg'
end

書き換えて保存したら、ターミナルで以下を実行。

ターミナル
$ bundle install --without production

2. database.yml の編集

次に config/datebase.yml の一番下を以下のように書き換える。

datebase.yml
#変更前
 production:
  <<: *default
  database: db/test.sqlite3

#変更後
production:
  <<: *default
  adapter: postgresql
  encoding: unicode
  pool: 5

#インデントは必ず半角スペース2つ

ここからはnodeをいじる。

nodeのバージョン変更

まず node -v を実行。バージョンが18以上でなければこの章は飛ばして構わない。

nodebrewでnodeをインストールするための下準備

homebrewで管理されていたnodeを抜く。
nodeが存在しないなどとエラーが出る場合はそのまま進む。

ターミナル
$ brew uninstall --force node

homebrew で nodebrew をインストール。

ターミナル
$ brew install nodebrew

node のバージョンを切り替える前に以下3つの入力で、 path を通していく

ターミナル
$ mkdir -p ~/.nodebrew/src

$ export PATH=$HOME/.nodebrew/current/bin:$PATH

$ source ~/.bash_profile または ~/.zshrc

nodebrew でダウングレード

次に、node を実際にインストールし、バージョンを切り替える。
切り替える先は18. 未満ならおそらく平気。 まずはインストール。

ターミナル
$ nodebrew install-binary v16.13.1

M1 Macだと15.以下がインストールできないらしいので、16.がいいだろう。
次にバージョンを切り替える。

ターミナル
$ nodebrew use v16.13.1

長かった準備も終わり、ようやく fly の作業に取り掛かる。

Flyの準備

まずFlyのCLIをインストールする。

ターミナル
$ brew install flyctl

次にアカウントを作成する。

ターミナル
$ flyctl auth signup

以降ログインをしたい場合は、

ターミナル
$ flyctl auth login

サインアップできたらクレカの情報を入力する。(現状登録しないとデプロイできない)
また認証メールが来ているはずなので、そちらもやっておこう。

fly launch に行く前に念のため Docker ファイルを確認しよう。

Dockerfile
ARG NODE_VERSION=16.13.1
ARG YARN_VERSION=1.22.18

ここが指定したものになっていればOK

ビルドとデプロイ

ここからターミナルの操作はアプリの階層に移動しておこなうこと。まずはビルド。

ビルド

ターミナル
fly launch

このあと色々聞かれるが、アプリの名前以外はそのまま Enter か y 押して Enter で。

非常に省いたので詳しくは参考記事で。

デプロイ

ターミナル
fly deploy

後は祈る。次のがでればOK

Monitoring Deployment

1 desired, 1 placed, 1 healthy, 0 unhealthy [health checks: 1 total, 1 passing]
--> v0 deployed successfully
ターミナル
fly open

でデプロイしたアプリを開ける。
再デプロイの時にはfly deploy だけでOK。

参考記事

色々な記事を参考にした。先人達に誠感謝である。

deploy手順

node関係

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?