DRYな備忘録

Don't Repeat Yourself.

Linuxサーバ上でdocker-composeを使う

ゴール

TL;DR

  1. Linuxサーバ上でdockerをインストールする
  2. Linuxサーバでdocker-composeをインストールする
  3. docker-compose.ymlを含むプロジェクトをcloneしてくる
  4. docker-compose upする

dockerをインストールする

記録あった。サンキュー俺

otiai10.hatenablog.com

docker-composeをインストールする

docs.docker.com

$ pip install docker-compose

まじ。pipで入るの。

% pip install docker-compose
# 略
error: could not create '/usr/local/lib/python2.7/dist-packages/compose': Permission denied

oh...

% pyenv versions
* system (set by /home/oppai/.pyenv/version)
  2.6.6
  3.4.1

あーそりゃあかんわ

% pyenv global 3.4.1
% pyenv rehash
% pyenv versions
  system
  2.6.6
* 3.4.1 (set by /home/oppai/.pyenv/version)

気を取り直して

% pip install docker-compose
# 略
Successfully installed docker-compose docopt PyYAML requests texttable websocket-client docker-py dockerpty six jsonschema
Cleaning up...
% which docker-compose
docker-compose not found
% pyenv rehash
% which docker-compose
/home/oppai/.pyenv/shims/docker-compose

やったぜ

docker-compose.ymlを含むプロジェクトをclone

今回はこれをcloneしてくる

github.com

docker-compose up

ビビってまずはbuildする

% cd hisyotan
% docker-compose build
mongodb uses an image, skipping
Building hisyotan
Step 1 : FROM ruby:2.2.3
2.2.3: Pulling from library/ruby
9ee13ca3b908: Pull complete
23cb15b0fcec: Pull complete
# 以下色々...
# buildできたっぽい

upする

% docker-compose up
mongodb  | MongoDB起動したよ的なログ
hisyotan | hisyotan起動したよ的なログ

うごいた

雑感

  • わりと簡単だった

DRYな備忘録