LoginSignup
14
13

More than 1 year has passed since last update.

Dockerを使って、すぐElixirが使えるように

Last updated at Posted at 2015-05-30

普段の仕事でIDCFクラウド使って、バーチャルマシン立ち上げて、Elixirをインストールすることがよくあるので、面倒になって、人の作ったimageを使って、すぐElixirが使えるようにしたいです。

dockerをインストールして、起動します。trenpixster/elixirをpullしてからアクセス

# yum install epel-release
# yum install docker
# systemctl start docker.service
# docker info # 生きてるかを確認
# docker pull trenpixster/elixir
# docker run trenpixster/elixir echo "hello world"
hello world
# docker run -i -t trenpixster/elixir /bin/bash
# iex

Dockerのインストール情報をチェック

$ docker info 
$ docker run --name my-redis -it ubuntu:latest bash
$ man docker-run

-i, --interactive=true|false
Keep STDIN open even if not attached. The default is false.
-t, --tty=true|false
Allocate a pseudo-TTY. The default is false.
When set to true Docker can allocate a pseudo-tty and attach to the standard input of any container. This can be used, for example, to run a throw‐
away interactive shell. The default is value is false.

普通ユーザー権限で操作

Centos中の普通ユーザーでもdockerを使えるようにする前にまずそのユーザーをdockerグループに追加する必要がある

# usermod -aG docker admin-user

Dockerfileをビルド

Dockerfileが存在しているディレクトリに下のコマンドを実行する。最後の点が忘れずに

sudo docker build -t="wang/super_nginx_image" .

Dockerfielの中身

FROM ubuntu:12.04
MAINTAINER "aaa" "abc@example"
RUN apt-get update
RUN apt-get install -y nginx
RUN echo 'Our first Docker image for Nginx' > /usr/share/nginx/www/index.html
EXPOSE 80

作ったimageを使ってみる

# docker images
# docker run -i -t wang/super_nginx_image /bin/bash
root@72951e4df540:/# service nginx start
Starting nginx: nginx.

docker psは、現在動いているコンテナの一覧を返します。

一括削除する

# docker rm `docker ps -a -q`

Dockerイメージを削除する

# docker rmi [イメージID]

DockerイメージをRename

$ docker rename old_name new_name

ubuntuコンテナー中のコマンドを実行

$ docker run ubuntu /bin/echo hello world
hello world

ubuntuコンテナーをdetached modeで動かす

$ docker run -d ubuntu
bf0d4abb80c99c51305eb5384443de43e5add695f208e429e3c26244b8789a1d

Apacheをubuntuコンテナーにインストール後、commitして、新しいコンテナーを作成

Terminal-1
apache2をインストール

$ docker run -t -i ubuntu
# apt-get update && apt-get install apache2

Terminal-2
Apache2がインストールされているコンテナーをcommitして、新しいapache-ubuntu

$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
c1e88c4df7e8        ubuntu              "/bin/bash"         2 minutes ago       Up 2 minutes                            naughty_curie

$ docker commit c1e88c4df7e8 apache-ubuntu

公式サイトでimageを探す

$ docker search elasticsearch

14
13
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
14
13