YYPHP#47「Macを新しく買ったらこれだけはいれとけリスト、LaravelとかEloquentを使っているOSS、fatal errorを例外としてキャッチ、チームでの開発どうやる?、構成力・設計力を高めるには、Linux基礎知識を素早く学ぶ、PHPは廃れる?発展していく?、YYPHP1年を振り返って、社内情報共有どうしてる?」PHPMacLinuxLaravelYYPHP これは2018年08月03日に開催したPHPerイベントYYPHP#47のイベントレポートです。 YYPHPは一言で「PHPerの部室」です。PHPについて、雑に、ゆるく、ワイワイ話し合う集いです。毎回お題を決めずに雑談を出発点にいろいろなことを突発的にやります。集まった人でコードリーディングをすることもあれば、一緒に開発ツールを触ってみたり、フレームワークについての情報交換をすることもあります。開催はほぼ毎週、
前提 WebサービスではDBサーバーは踏み台サーバーを経由しないと接続できないようにしていることが多いかと思いますが、 例えばローカル環境で開発環境のDBにあるデータで動作確認をしたい際に、 いちいちターミナルでSSHコマンドを打つのは面倒なので、そんなときにCoccinellidaを使ってポートフォワーディングすると便利です。 手順 Coccinellidaのインストール こちらよりインストール Coccinellidaの起動 アプリケーションフォルダもしくはDockにCoccinellidaをセットしている場合はDockから起動 -> 上部メニューバーにてんとう虫のアイコンが現れ、これがインターフェイスとなる。 Coccinellidaの設定 上部メニューバーのてんとう虫をクリックし、「Preferences」を選択 Preferencesの設定画面が開いたら、上部てんとう虫マークの「
こんにちは、Railsエンジニア見習い補佐のナカハシです。 新しくRailsアプリ開発環境を立ち上げるに辺り、Ruby層まで含めたDocker化をしてみたときのあれこれを残しておきます。 今回の構成 新しく作るRailsアプリは、他のUUUMのRailsアプリのよくある構成と同様、Rails + MySQL + Redis(主にセッション用)の構成にしました。 こういった複数のミドルウェアと組み合わせた動作環境を作る場合、それぞれのDockerコンテナをいい感じに動かすためにDocker Composeを使います。公式ページに Quickstart: Compose and Rails というサンプルがあるので、これを元に設定ファイルを書きました。( rails new までの手順もここの通りに実施していますので、主な手順もこちらを参照して下さい) MySQLコンテナとの接続 (ほとんどコ
PostgreSQLとMySQL、使うならどっち? データベース専門家が8つの視点で徹底比較! オープンソースのデータベースとしてよく比較されるPostgreSQLとMySQL。どんな長所・短所があるのでしょう? それぞれの専門家による対談で明らかにします。 エンジニアとして働いていると必ず直面する悩み。それは、「どのリレーショナル・データベース(以下、RDB)を選ぶのが最善なのか?」です。 RDBごとに長所と短所は異なっています。そのため自社サービスにマッチしないRDBを選んでしまうと、それがボトルネックとなり開発・運用にトラブルが生じるケースは少なくありません。 なかでもよく比較検討されるのが、PostgreSQLとMySQL。ともにオープンソースRDBのデファクトスタンダードであり、高い性能と数多くの機能を持っています。 では、両者は具体的にどのような長所・短所があるのでしょうか。そ
I am a huge fan of databases. I even wanted to make my own DBMS when I was in university. Now I work both with RDBMS and NoSQL solutions, and I am very enthusiastic with that. You know, there’s no Golden Hammer, each problem has own solution. Alternatively, a subset of solutions. In the series of blog posts The SQL I Love <3 I walk you thru some problems solved with SQL which I found particularly
What’s the best lossless image format? Comparing PNG, WebP, AVIF, and JPEG XL Is WebP really better than JPEG? DigitalOcean App Platform: it’s a promising service with a one really big problem Never MISS the cache with Nginx microcaching This blog post is over 6 years old and might be out of date. I can’t guarantee that the code works in the latest version of PHP and the libraries mentioned. Larav
mysql を含むものをテストする際に例えば go だと、lestrrat/go-test-mysqld とかを使います。 perl には Test::Docker::MySQL っていうのがあって、面白いなと思ったので、(雰囲気 go-test-mysqld インターフェースで)go で書いてみました。 github.com go で mysql の立ち上げを docker に寄せると、go-sql-driver/mysql が pure go なので簡単にバージョンの固定が出来て良いです。 最近は、開発にも docker を使っているので、アプリケーションのコードも docker な事が多いです。そうなると、docker run ... go test となるので、そのコンテナの中から mysql コンテナをさらに立ち上げる必要があります。 とりあえずって事で コンテナに docker
CentOS 7 には、初期状態で Python 2.7 がインストールされていますが、プロジェクトではもっと新しい Python 3 が必要になる場合があります。 そのような場合に、CentOS 7 に Python 3.x を yum でインストールする手順について解説します。 IUS Community Project の yum リポジトリを利用しよう Python 3.x は CentOS 7 の標準 yum リポジトリでは提供されていませんので、別の yum リポジトリから取得する必要があります。 そこで利用したいのが IUS Community Project の yum リポジトリです。 IUS Community Project は、Red Hat Enterprise Linux (RHEL) や CentOS 向けに、できる限り最新のソフトウェアの RPM を提供する
Ansibleのroleを実際に使ってみてわかったことを共有します。さらに便利に活用するtips等ありましたら、ぜひコメントをお願いします。 Ansibleのroleは単にインクルードの単位 最初roleという名前を聞いたときは、webserverとかdbserverといった役割を設定するのだろうと予想しました。が、Rolesのドキュメントを読んで、playbookの一部をインクルードして再利用するための仕組みだということがわかりました。つまり、playbookを分割・構成するコンポーネントという意味合いです。 もともとroleはなくてincludeの仕組みだけありましたが、より便利にするためにroleという仕組みが追加されたという経緯のようです。 例えばnginx, mysqlといった単位でroleを定義するのが良いです。さらにmysql/clientのように階層的なrole名を用いるこ
最近,環境ごとのデータベーススキーマの差分をチェックする機会があった.プロダクション環境とステージング環境ならまだしも,開発環境だと検証のために追加したインデックスがそのままになっていたり,開発が途中で止まってしまって日の目を見ることがなかったテーブルが残っていたり,そういうことって比較的あるのではないかなと思う.特に今の環境だと,マイグレーションの仕組みが整っていないという課題もあり,より一層,データベーススキーマに差分が出やすくなってしまっている. 今回は MySQL から公式に提供されている mysqldiff というツールを使ってデータベーススキーマの差分をチェックした. mysqldiff をインストールする mysqldiff は MySQL Utilities という MySQL の管理ツールパッケージの中に同梱されている.現在だと v1.6 が最新になっている. MySQL
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く