LoginSignup
5
6

More than 5 years have passed since last update.

Dockerイメージとコンテナ作成 (Dockerfile編)

Last updated at Posted at 2018-01-22

Dockerfile 作成

# http://www.atmarkit.co.jp/ait/articles/1407/08/news031.html
# https://qiita.com/soushiy/items/0945bcbc7ecce4822985

FROM centos:7.4.1708
MAINTAINER tomy103 <hoge@hogehoge.jp>

# install os package
RUN yum -y install gcc bzip2 make \
        && yum -y install openssl-devel readline-devel zlib-devel \
        && yum -y install libpcap-devel \
        && yum -y install which \
        && yum -y install git

# install rbenv / ruby
ENV PATH /root/.rbenv/bin:/root/.rbenv/shims:$PATH
RUN git clone git://github.com/sstephenson/rbenv.git ~/.rbenv \
        && git clone git://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build \
        && echo 'export PATH="/root/.rbenv/bin:/root/.rbenv/shims:$PATH"' >> /etc/profile.d/rbenv.sh \
        && echo 'eval "$(rbenv init -)"' >> /etc/profile.d/rbenv.sh \
        && rbenv install 2.4.2 \
        && rbenv global 2.4.2 \
        && rbenv rehash

# install roadworker
RUN gem install rails -v 5.1.4

※RUNコマンドの数が多いとイメージのサイズが大きくなってしまう(らしい)ので極力 && でまとめてみた。

Dockerイメージをビルド

# docker build -t tomy103-ruby-on-rails-tutorial:latest ./

※docker build [ -t {イメージ名} [ :{タグ名} ] ] {Dockerfileのあるディレクトリ}

# docker images
REPOSITORY                                               TAG                 IMAGE ID            CREATED             SIZE
tomy103-ruby-on-rails-tutorial                           latest              a759c6635ae9        18 minutes ago      618MB

作成したDockerイメージからコンテナ作成/起動

# docker run -d -it --hostname tomy103-ruby-on-rails-tutorial --name tomy103-ruby-on-rails-tutorial tomy103-ruby-on-rails-tutorial:latest /bin/bash --login

※docker run [オプション] [--name {コンテナー名}] {イメージ名}[:{タグ名}] [コンテナーで実行するコマンド] [引数]

コンテナの状態確認

# docker ps -a
CONTAINER ID        IMAGE                                   COMMAND               CREATED             STATUS              PORTS               NAMES
f475564e760a        tomy103-ruby-on-rails-tutorial:latest   "/bin/bash --login"   53 seconds ago      Up 51 seconds                           tomy103-ruby-on-rails-tutorial

コンテナ停止/起動

# docker stop tomy103-ruby-on-rails-tutorial
# docker start tomy103-ruby-on-rails-tutorial

コンテナにログイン

# docker attach tomy103-ruby-on-rails-tutorial
5
6
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
5
6