SlideShare a Scribd company logo
Dockerイメージを作る 
とみたまさひろ 
NSEG#54 
2014/08/31 
Dockerイメージを作るPowered by Rabbit 2.1.3
自己紹介 
とみた まさひろ 
プログラマー (Ruby & C) 
http://tmtms.hatenablog.com 
http://twitter.com/tmtms 
https://github.com/tmtm 
Dockerイメージを作るPowered by Rabbit 2.1.3
自分用のまとめみたいな感じで目 
新しい話はありません 
Dockerイメージを作るPowered by Rabbit 2.1.3
イメージ 
Dockerイメージを作るPowered by Rabbit 2.1.3
コンテナの元になるもの 
Dockerイメージを作るPowered by Rabbit 2.1.3
一覧を見る 
# docker images 
Dockerイメージを作るPowered by Rabbit 2.1.3
公式レジストリから持ってくる 
# docker pull ubuntu 
Dockerイメージを作るPowered by Rabbit 2.1.3
コンテナから作る 
# docker run ubuntu ... 
...コンテナ内のファイルを変更... 
# docker ps -a 
CONTAINER ID IMAGE COMMAND ... 
17012e82eff3 ubuntu:14.04 /bin/bash ... 
# docker commit 17012e82eff3 hoge 
Dockerイメージを作るPowered by Rabbit 2.1.3
イメージから作る 
# ls 
Dockerfile 
# cat Dockerfile 
FROM ubuntu 
RUN apt-get update 
RUN apt-get install ruby 
# docker build -t hoge . 
Dockerイメージを作るPowered by Rabbit 2.1.3
ベースイメージを作る 
tar を元に作る 
# cat /tmp/hoge.tar | docker import - hoge 
Dockerイメージを作るPowered by Rabbit 2.1.3
Ubuntuのベースイメージ 
# debootstrap trusty ./hoge 
http://ftp.riken.go.jp/Linux/ubuntu/ 
# cd hoge 
# tar -c . | docker import - hoge 
Dockerイメージを作るPowered by Rabbit 2.1.3
作ったイメージを管理 
Dockerイメージを作るPowered by Rabbit 2.1.3
公開する 
Docker Hub Registry 
https://registry.hub.docker.com/ 
Dockerイメージを作るPowered by Rabbit 2.1.3
諸事情によりプライベートで管理 
Dockerイメージを作るPowered by Rabbit 2.1.3
レジストリサーバを立てる 
https://github.com/docker/docker-registry 
# docker pull registry:latest 
# docker run -d -e STORAGE_PATH=/registry 
-v /dokka:/registry -p 5000:5000 registry 
Dockerイメージを作るPowered by Rabbit 2.1.3
プライベートレジストリに登録 
# docker tag hoge 192.168.1.1:5000/hoge:1.0 
# docker push 192.168.1.1:5000/hoge:1.0 
Dockerイメージを作るPowered by Rabbit 2.1.3
プライベートレジストリから取出 
# docker pull 192.168.1.1:5000/hoge 
Dockerイメージを作るPowered by Rabbit 2.1.3
レジストリ内のイメージ一覧 
Dockerイメージを作るPowered by Rabbit 2.1.3
準備 
レジストリサーバー起動時に SEARCH_BACKEND 
を指定 
# docker run -d -e STORAGE_PATH=/registry 
-e SEARCH_BACKEND=sqlalchemy 
-v /dokka:/registry -p 5000:5000 registry 
Dockerイメージを作るPowered by Rabbit 2.1.3
取り出し 
結果はJSON 
% GET http://192.168.1.1:5000/v1/search 
{"num_results": 1, "query": "", "results": 
[{"description": null, "name": "library/hoge"}]} 
Dockerイメージを作るPowered by Rabbit 2.1.3
おまけ 
Dockerイメージを作るPowered by Rabbit 2.1.3
コンテナ環境に入るには? 
Dockerイメージを作るPowered by Rabbit 2.1.3
ssh は sshd が動いてないといけな 
いしカーネル同じなのに無駄っぽい 
Dockerイメージを作るPowered by Rabbit 2.1.3
nsinit が便利 
Dockerイメージを作るPowered by Rabbit 2.1.3
nsinit 
Ubuntu の場合 
# go get github.com/docker/libcontainer/nsinit 
# cd /var/lib/docker/execdriver/native/コンテナID 
# nsinit exec bash 
Dockerイメージを作るPowered by Rabbit 2.1.3
おわり 
Dockerイメージを作るPowered by Rabbit 2.1.3

More Related Content

PDF
Dockerの導入
PDF
Docker Machineを始めるには?
PDF
Docker Swarm入門
PPTX
Alpine linuxを触ってみよう
PPTX
Appsody でnodejsのアプリを立ち上げよう!
PPTX
Dockerのキホンその2 Docker Compose Swarm Machine 利用編
PDF
Docker超入門
PDF
Dockerと継続的インテグレーション
Dockerの導入
Docker Machineを始めるには?
Docker Swarm入門
Alpine linuxを触ってみよう
Appsody でnodejsのアプリを立ち上げよう!
Dockerのキホンその2 Docker Compose Swarm Machine 利用編
Docker超入門
Dockerと継続的インテグレーション

What's hot (20)

PDF
コマンドラインツールとしてのDocker
PDF
GitLab + Dokku で作る CI/CD 環境
PDF
Docker lifecycle event hooks
PPTX
Ansibleを使ってdockerコンテナをプロビジョニングする
PDF
DockerでGUIアプリケーションを動かす
PDF
Docker入門
PDF
割と新し目の Open shift origin で作る自宅 paas 作成記
PPTX
Dockerを使ってみよう
PDF
Walter ファミリーの紹介 at Shibuya.go#1
PDF
JAWS-UG コンテナ支部 Docker入門 10分ハンズオン
PDF
Dockerさわってみた
PDF
Docker入門
PDF
Drone.io のご紹介
PDF
あの日実行したコンテナの名前を僕達はまだ知らない。
PDF
Sinatra and heroku for mac
PDF
Niigata.pm #1
PDF
清貧Docker ~個人がDockerを使う理由~
PDF
はてなにおける継続的デプロイメントの現状と Docker の導入
PDF
WSL2+docker+JupyterとVS Codeリモート環境の構築
コマンドラインツールとしてのDocker
GitLab + Dokku で作る CI/CD 環境
Docker lifecycle event hooks
Ansibleを使ってdockerコンテナをプロビジョニングする
DockerでGUIアプリケーションを動かす
Docker入門
割と新し目の Open shift origin で作る自宅 paas 作成記
Dockerを使ってみよう
Walter ファミリーの紹介 at Shibuya.go#1
JAWS-UG コンテナ支部 Docker入門 10分ハンズオン
Dockerさわってみた
Docker入門
Drone.io のご紹介
あの日実行したコンテナの名前を僕達はまだ知らない。
Sinatra and heroku for mac
Niigata.pm #1
清貧Docker ~個人がDockerを使う理由~
はてなにおける継続的デプロイメントの現状と Docker の導入
WSL2+docker+JupyterとVS Codeリモート環境の構築
Ad

Similar to Dockerイメージを作る (20)

PDF
Docker実践入門
PPTX
Docker Tokyo
PDF
Docker/Aarukas入門ハンズオン資料~第1回さくらとコンテナの夕べ #さくらの夕べ 番外編
PDF
Docker入門: コンテナ型仮想化技術の仕組みと使い方
PDF
Dockerハンズオン
PDF
DockerとDocker Hubの操作と概念
PDF
ゆるふわなDockerの使い方
PDF
Docker社内勉強会
PPTX
Dockerでlamp環境を作って見る
PDF
Docker講習会資料
PDF
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
PDF
Webアプリケーション開発者のためのDockerハンズオン
PPTX
Dockerハンズオン
PPTX
ラズパイ2で動く Docker PaaS
PDF
Webアプリケーション開発者のためのDockerハンズオン20210519
PPTX
Docker & Kubernetes基礎
PDF
Dockerハンズオン
PDF
JAWS-UG コンテナ支部 Docker入門 ハンズオン
PDF
OpenStackをさらに”使う”技術 - OpenStack&Docker活用テクニック
PPTX
Docker超入門
Docker実践入門
Docker Tokyo
Docker/Aarukas入門ハンズオン資料~第1回さくらとコンテナの夕べ #さくらの夕べ 番外編
Docker入門: コンテナ型仮想化技術の仕組みと使い方
Dockerハンズオン
DockerとDocker Hubの操作と概念
ゆるふわなDockerの使い方
Docker社内勉強会
Dockerでlamp環境を作って見る
Docker講習会資料
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Webアプリケーション開発者のためのDockerハンズオン
Dockerハンズオン
ラズパイ2で動く Docker PaaS
Webアプリケーション開発者のためのDockerハンズオン20210519
Docker & Kubernetes基礎
Dockerハンズオン
JAWS-UG コンテナ支部 Docker入門 ハンズオン
OpenStackをさらに”使う”技術 - OpenStack&Docker活用テクニック
Docker超入門
Ad

More from Masahiro Tomita (20)

PDF
お前の罪を数えろ
PDF
Ruby 2.5
PDF
本当はこわいMySQLプロトコル
PDF
ネットワークこわい
PDF
MySQLの文字コード事情 2017春版
PDF
MySQLの文字コード事情 2017版
PDF
PDF
MySQLの文字コード事情
PDF
進捗と品質
PDF
MySQLを拡張する
PDF
「理論から学ぶデータベース実践入門」読書会スペシャル
PDF
MyNAができるまで
PDF
文字化け
PDF
PDF
メールの暗号化
PDF
文字化け
PDF
進捗と品質
PDF
アジャイルジャパン長野サテライト
PDF
🍣=🍺
お前の罪を数えろ
Ruby 2.5
本当はこわいMySQLプロトコル
ネットワークこわい
MySQLの文字コード事情 2017春版
MySQLの文字コード事情 2017版
MySQLの文字コード事情
進捗と品質
MySQLを拡張する
「理論から学ぶデータベース実践入門」読書会スペシャル
MyNAができるまで
文字化け
メールの暗号化
文字化け
進捗と品質
アジャイルジャパン長野サテライト
🍣=🍺

Dockerイメージを作る