2017-03 / 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
ローカルに nginx や mysql が起動していたり、gem install のためだけ
に cmake や icu4c を brew install するのは嫌になったので、三連休で
出来るだけ Dockerize しました。仕事の素振りも兼ねています。
このブログの記事を書く時のプレビューや、雑多な html ファイルの表示
に使っています。
今まで $ brew install nginx して、nginx.conf も別途管理していまし
たが、以下のような雑な docker-compose.yml で、雑にマウントするだけ
で良くなりました。
version: '3'
services:
nginx:
image: nginx:alpine
ports:
- 8080:80
volumes:
- /Users/masutaka/Sites:/usr/share/nginx/html
restart: on-failure:10
- Snow Leopard からの流れで、雑多な html は ~/Sites に置いています。
- $ docker-compose up -d しておけば、macOS を再起動しても nginx が
起動してくれます。
- ほかにグローバルに必要な service が増えたら追加していきます。
MySQL を使う Rails アプリケーションがあったので、とりあえず
Dockerize しました。
version: '3'
services:
mysql:
image: mysql:5.7
ports:
- 13306:3306
environment:
MYSQL_ALLOW_EMPTY_PASSWORD: 'yes'
config/database.yml に書く development.url は
mysql2://root:@127.0.0.1:13306/development とすれば接続できます。
mysql2://root:@localhost:13306/development だと Rails は TCP では
なく UNIX Socket で接続しようとし、失敗してしまいます。
あと、Rails も同時に Dockerize しないと、mysql2 gem のインストール
で libmysql.*.dylib を要求され、brew install mysql することになる
ので注意。今回は Rails アプリの Dockerize は着手できませんでした。
brew の mysql は削除したので、クライアントは MySQL Workbench を使
うことにしました。brew cask install mysqlworkbench でインストール
出来ます。
PostgreSQL を使う Rails アプリケーションもあったので移行しました。
MySQL とさほど違いはありません。
version: '3'
services:
postgresql:
image: postgres:9.5-alpine
ports:
- 15432:5432
クライアントは PSequel を使うことにしました。brew cask install
psequel でインストール出来ます。
あれ、https://www.psequel.com/ は SSL 証明書が不正だ...。*.herokuapp.com の
証明書を参照している。
masutaka/docker-octodown
[WIP] Dockerized octodown
masutaka/docker-qiita-markdown-cli
Dockerized qiita-markdown-cli
2017-03 / 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
最終更新時間: 2017-03-21 09:29