开发者社区> 舒琪> 正文

Centos7 docker安装实例

简介: 安装docker,常用命令
+关注继续查看

安装docker

yum install docker
  • 1
  • 1

配置国内镜像源(提速)

国内加速源: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
  • 1
  • 1

下载docker镜像

  • 搜索镜像
docker search centos
  • 1
  • 1
[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           
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 下载镜像
docker pull centos:6 #下载centos6
  • 1
  • 1
  • 查看镜像
docker images  #查看镜像
  • 1
  • 1

启动容器

  • 创建容器实例
[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 /]# 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

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 镜像名称

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27

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
  • 1
  • 2
  • 1
  • 2

更改存储目录

#复制docker存储目录
rsync -aXS /var/lib/docker/. /home/docker

#更改 docker 存储文件目录
ln -s  /home/docker  /var/lib/docker
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

设置存储大小

# 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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

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

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 重启网卡
service network restart
  • 1
  • 1

设置启动参数

# centos 在/etc/sysconfig/docker
# 其他操作系统请前往下面的网址
# https://docs.docker.com/installation/#installation
vi /etc/sysconfig/docker #在OPTIONS='--selinux-enabled'这行中修改为OPTIONS='--selinux-enabled -b=br0'即让docker服务启动时使用br0网卡进行桥接
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4

安装pipework

git clone https://github.com/jpetazzo/pipework
cp ~/pipework/pipework /usr/local/bin/
  • 1
  • 2
  • 1
  • 2

启动手动设置网络的容器

docker run -itd --net=none --name=centos06 --cpuset-cpus="0-3"  -m 1024M --memory-reservation 1024M ssh-centos6 /bin/bash
  • 1
  • 1

使用pipework设置IP

pipework br0 centos06 132.97.8.6/24@132.97.8.1
  • 1
  • 1

进去docker查看IP

docker attach centos06
ifconfig
service sshd restart #重启ssh
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

docker开机启动脚本

vi docker_start.sh
  • 1
  • 1
#! /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
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

其他资料

# 5分钟弄懂Docker!
http://www.csdn.net/article/2014-07-02/2820497-what%27s-docker

# docker操作实例,图文教程
http://blog.csdn.net/wuzhilon88/article/details/41621285/

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Docker学习(二):CentOS7上安装Docker
Docker学习(二):CentOS7上安装Docker
93 0
CentOS7 安装Docker,并设置Docker国内镜像源解决Docker访问速度慢的问题
CentOS7 安装Docker,并设置Docker国内镜像源解决Docker访问速度慢的问题
311 0
CentOS7系统安装最新版本docker实战
CentOS7系统安装最新版本docker实战
25 0
完成docker安装centos7操作系统实战
完成docker安装centos7操作系统实战
34 0
成功解决centos7安装docker时 报缺 少container-selinux和fuse-overlayfs包
成功解决centos7安装docker时 报缺 少container-selinux和fuse-overlayfs包
50 0
Centos7 安装Docker,常用命令,设置国内阿里云镜像,并且在docker中安装MySQL、Redis
Centos7 安装Docker,常用命令,设置国内阿里云镜像,并且在docker中安装MySQL、Redis
108 0
Docker:第五章:基于centos7的docker安装配置部署教程以及基于docker Tomcat镜像使用的项目部署教程
Docker:第五章:基于centos7的docker安装配置部署教程以及基于docker Tomcat镜像使用的项目部署教程
70 0
​CentOS7一键脚本安装docker并创建ES集群(docker版本)
​CentOS7一键脚本安装docker并创建ES集群(docker版本)
125 0
CentOS7下部署Docker私有仓库Harbor
CentOS7下部署Docker私有仓库Harbor
112 0
CentOS7 安装 Docker | 学习笔记
快速学习 CentOS7 安装 Docker
124 0
+关注
舒琪
云存储和大数据存储专家
文章
问答
文章排行榜
最热
最新
相关电子书
更多
5日docker训练营(四).ppt
立即下载
5日docker训练营(三).ppt
立即下载
4天实战 轻松玩转docker
立即下载