4
7

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 5 years have passed since last update.

puma-devでlocalhostでの開発を楽にする

Last updated at Posted at 2018-02-15

開発時にlocalhostの管理は煩雑になる問題

railsの開発時や、最近ではReactJsでの開発時などでも開発用サーバーを立ち上げて開発することが多くなりました。そのたびにlocalhost:8080や、localhost:4200、localhost:3000...もうどれがどれだかわかりません!

そんな悩みを解決するのが、puma-dev です。

Puma-dev

ざっくりとしたイメージとしては、***.devといったURLを作成し、httpまたはhttpsにて任意のホストへプロキシしてくれるようなものです。よくIoT開発で使われるbeebottengrokとは違い外部へpublishするものではありません。

インストール

macであればbrewでかんたんにインストールできます

brew install puma/puma/puma-dev

puma-devの実行

puma-dev -install

これだけです。これによって、ポート80と443が開きます。もちろん、すでに80や443が開いている場合は止めておいてください。

puma-devの停止

puma-dev -stop

止めたくなったら -stop をつけて停止させます。

証明書のインストール

SSLでの接続を行う場合は、証明書をインストールする必要があります。

Macの場合
open /Users/<UserName>/Library/Application\ Support/io.puma.dev/cert.pem

証明書をインストールしようとすると確認画面が表示されるので、必ず ログインではなくシステム(重要) にインストールしてください。その後、再起動させます。

***.dev を作る

IPが異なる場合

echo 192.168.1.2:8080 > ~/.puma-dev/hoge

--> http://hoge.devhttps://hoge.dev に即時アクセスできる

IPがlocalhostの場合

echo 127.0.0.1:8080 > ~/.puma-dev/hoge

--> http://hoge.devhttps://hoge.dev に即時アクセスできる

トラブルシュート

  • SSL証明書エラーがでる
    • 再起動していない
    • 証明書がシステムにインストールされていない
    • 証明書が「常に信頼」になっていない
  • ブラウザを再起動させたのに表示されない
    • マシン本体を再起動していない
  • puma-devがインストールできない
    • 他のプロセスで80や443が使われている(sudo lsof -i:80, sudo lsof -i:443 で確認)
  • brewがないと言われる

参考

4
7
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
4
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?