Docker环境部署、Docker镜像及基本命令

两台虚拟机,用第一天使用的模板.运行内存6G,磁盘20G 分别安装docker 并装好yum

上午

[root@room9pc01 ~]# mkdir /var/ftp/public

[root@room9pc01 public]# ls

docker-engine-1.12.1-1.el7.centos.x86_64.rpm          docker_images.zip

docker-engine-selinux-1.12.1-1.el7.centos.noarch.rpm 

 

[root@room9pc01 public]# createrepo .  #真机操作完毕

 

虚拟机docker1 docker2 都做如下操作 以docker1为例

[root@docker1 yum.repos.d]# vim docker.repo

[docker]

name=CentOS-Docker

baseurl="ftp://192.168.1.254/public"

enabled=1

gpgcheck=0

 

[root@docker1 yum.repos.d]# ls   

docker.repo  local.repo 

  #注意保持local.repo 和 doker.repo 中的网关相同192.168.1.254 不然报错

 

[root@docker1 ~]# yum repolist

已加载插件:fastestmirror

Loading mirror speeds from cached hostfile

源标识                              源名称                                 状态

docker                         CentOS-Docker                              2

local_repo                      CentOS-Base                            9,591

repolist: 9,593

 

安装docker软件包

[root@docker1 ~]# yum -y install docker-engine

启动服务

[root@docker1 ~]# systemctl start docker

[root@docker1 ~]# systemctl enable docker

 

查看网卡

[root@docker1 ~]# ifconfig | head  -3

docker0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500

        inet 172.17.0.1  netmask 255.255.0.0  broadcast 0.0.0.0

 

[root@docker1 ~]# docker search busybox  #搜索docker列表

[root@docker1 ~]# docker pull busybox    #下载busybox

[root@docker1 ~]# docker images    #查看

 

 

 

下午

[root@docker1 ~]# docker save busybox:latest > busybox.tar  #导出

[root@docker1 ~]# scp busybox.tar 192.168.1.138:/root

 

[root@docker2 ~]# docker load < busybox.tar   #导入

[root@docker2 ~]# docker images 

 

[root@docker1 ~]# unzip docker_images.zip  #解包,导入镜像

[root@docker1 ~]# cd docker_images/

[root@docker1 docker_images]# ls

centos.tar  nginx.tar  redis.tar  registry.tar  ubuntu.tar

 

[root@docker1 docker_images]# docker load <centos.tar

[root@docker1 docker_images]# docker load <nginx.tar

[root@docker1 docker_images]# docker load <redis.tar

[root@docker1 docker_images]# docker load <registry.tar

[root@docker1 docker_images]# docker load <ubuntu.tar

[root@docker1 ~]# docker images    #查看

 

创建启动容器的命令

#docker run -it 镜像的名称:镜像的标签 『启动命令』

表示交互的     表示终端  -d 后台进程

查看容器的详细信息

#docker inspect 镜像的名称:镜像的标签

 

拓展:

1、容器退出以后,我怎么能在进入原来的容器

 容器在退出后就关闭了,如果想要进入原来的容器需要重新启动那个容器

2、为什么有的容器不加启动命令就起不来

  因为启动容器的默认命令是非交互式命令

3、启动参数 -it 是干什么的

   I 表示交互的     表示终端

4、Redis 系统为什么是空的

 

 不是空的,因为你不熟悉

[root@docker1 ~]# docker run -it redis  /bin/bash

root@224e24f505e2:/data# ls /

 

 Debian  包管理方式dpkg   安装命令apt-get    

 Redhat  包管理方式rpm    安装命令yum

 

5、怎么查看系统中有几个容器

   在另一个终端查看

#docker ps    另一个终端打开

 

6  怎么管理这些容器

    用 docker 相关命令

docker  run  -it  镜像名:标签   命令   (交互)

docker  run  -d  镜像名:标签    (非交互)

docker  run  -itd   镜像名:标签   命令   (交互式后台进程)

Docker run -d -p 

docker   ps   显示运行的容器  -a  显示所有容器   -q  只显示容器 id

 

docker   start|stop|restart    容器id   

 

docker   attach   容器id     进入容器 console 终端

docker   exec  -it   容器id   命令(/bin/bash

 

docker   inspect  容器id   显示容器详细信息

 

docker   top  容器id   显示容器进程

 

docker   rm   容器id   删除容器

 

 

[root@docker1 ~]# docker inspect centos   #查看镜像底层信息

[root@docker1 ~]# docker tag busybox:latest  aaa:v1  #修改镜像名:标签名

[root@docker1 ~]# docker rmi aaa:v1    #删除指定镜像

Untagged: aaa:v1

 

容器相关命令

[root@docker1 ~]# docker ps -aq  #查看所有容器的ip

[root@docker1 ~]# docker ps -q     #查看正在运行容器的ip

[root@docker1 ~]# docker rm -q     #删除正在运行的容器 或者指定它的名称

 [root@docker1 ~]# docker rm $(docker ps -aq)  #删除所有容器进程

[root@docker1 ~]# docker run -itd  进程名      #是和交互和非交互进程

[root@docker1 ~]# docker top 容器id    #在不进入容器查看容器进程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值