Centos 7 dockerのインストールと操作の例
Centos 7 dockerインストールの例
dockerのインストール
yum install docker
国内ミラーソースの設定(高速化)
国内加速源:https://www.daocloud.io/mirror.html#accelerator-doc
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://0fc8f023.m.daocloud.io
dockerミラーのダウンロード
docker search centos
[root@cloud CentOS-YUM]# docker search centos
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/centos The official build of CentOS. 2987 [OK]
docker.io docker.io/jdeathe/centos-ssh CentOS-6 6.8 x86_64 / CentOS-7 7.3.1611 x8... 55 [OK]
docker.io docker.io/nimmis/java-centos This is docker images of CentOS 7 with dif... 20 [OK]
docker.io docker.io/consol/centos-xfce-vnc Centos container with "headless" VNC sessi... 18 [OK]
docker.io docker.io/million12/centos-supervisor Base CentOS-7 with supervisord launcher, h... 12 [OK]
docker.io docker.io/torusware/speedus-centos Always updated official CentOS docker imag... 8
docker pull centos:6 # centos6
docker images #
スターティングコンテナ
[root@cloud ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ssh-centos6 latest 670e6db182f5 5 days ago 497.1 MB
docker.io/centos latest 67591570dd29 3 weeks ago 191.8 MB
docker.io/centos 6 8315978ceaaa 9 weeks ago 194.6 MB
[root@cloud ~]# docker run -i -t --name=centos10 ssh-centos6 /bin/bash # ssh-centos6 , centos10
[root@e308c0493046 /]#
dockerコマンド
#
docker ps
#
docker ps -a
#
Ctrl+D 【 】
# :
:Ctrl+P+Q
#
docker start ID
#
docker attach ID
#
docker start ID
# --
docker stop $(docker ps -q) & docker rm $(docker ps -aq)
# ,
docker commit ID
docker構成
コンテナリソースの制限
# CPU 0-3 4 , 1G ,--net=none ( pipework )
docker run -itd --net=none --name=centos07 --cpuset-cpus="0-3" -m 1024M --memory-reservation 1024M centos6-132.97.8.7-170106_2 /bin/bash
ストレージディレクトリの変更
# docker
rsync -aXS /var/lib/docker/. /home/docker
# docker
ln -s /home/docker /var/lib/docker
ストレージ・サイズの設定
# ubuntu /etc/default/docker
# centos /etc/sysconfig/docker-storage
cat /etc/sysconfig/docker-storage
DOCKER_STORAGE_OPTIONS="--storage-opt dm.loopdatasize=2000G --storage-opt dm.loopmetadatasize=10G --storage-opt dm.fs=ext4 --storage-opt dm.basesize=20G"
#dm.loopdatasize=2000G 2t, 100g
#dm.loopmetadatasize=10G Metadata 10g, 2g
#dm.fs=ext4 ext4
#dm.basesize=20G 20g, 10g
dockerブリッジモード
linuxブリッジネットワーク構成
[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# cp ifcfg-eth0 ifcfg-br0
[root@localhost network-scripts]# vi ifcfg-eth0
//
DEVICE=eth0
HWADDR=00:0C:29:06:A2:35
TYPE=Ethernet
UUID=34b706cc-aa46-4be3-91fc-d1f48c301f23
ONBOOT=yes
BRIDGE=br0
NM_CONTROLLED=yes
BOOTPROTO=static
[root@localhost network-scripts]# vi ifcfg-br0
//
DEVICE=br0
TYPE=Bridge
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.216.131
NETMASK=255.255.255.0
GATEWAY=192.168.216.2
DNS=8.8.8.8
service network restart
起動パラメータの設定
# centos /etc/sysconfig/docker
#
# https://docs.docker.com/installation/#installation
vi /etc/sysconfig/docker # OPTIONS='--selinux-enabled' OPTIONS='--selinux-enabled -b=br0' docker br0
pipeworkのインストール
git clone https://github.com/jpetazzo/pipework
cp ~/pipework/pipework /usr/local/bin/
手動でネットワークを設定するコンテナの起動
docker run -itd --net=none --name=centos06 --cpuset-cpus="0-3" -m 1024M --memory-reservation 1024M ssh-centos6 /bin/bash
pipeworkを使用してIPを設定する
pipework br0 centos06 132.97.8.6/24@132.97.8.1
入ってdocker IPを見ます
docker attach centos06
ifconfig
service sshd restart # ssh
docker起動スクリプト
vi docker_start.sh
#! /bin/bash
# chkconfig: 2345 10 90
# description: docker
service docker start
docker start centos06
docker start centos07
pipework br0 centos06 132.97.8.6/24@132.97.8.1
pipework br0 centos07 132.97.8.7/24@132.97.8.1
docker exec -i centos06 service sshd restart
docker exec -i centos07 service sshd restart
1、 /etc/rc.d/init.d
mv /home/xy/docker_start.sh /etc/rc.d/init.d
2、
chmod +x /etc/rc.d/init.d/docker_start.sh
3、
cd /etc/rc.d/init.d
chkconfig --add docker_start.sh
chkconfig docker_start.sh on
その他の資料
# 5 Docker!
http://www.csdn.net/article/2014-07-02/2820497-what%27s-docker
# docker ,
http://blog.csdn.net/wuzhilon88/article/details/41621285/