基本使用(docker一)

1.卸载旧版本

yum remove docker

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

2.更新环境

# gcc 环境
yum install -y gcc
yum install -y gcc-c++

# 配置镜像地址
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

更新软件索引包 yum makecache fast

# docker-ce 社区版本, docker-ee 企业版本
yum install docker-ce docker-ce-cli containerd.io
#启动
systemctl start docker

docker run hello-world

在这里插入图片描述在这里插入图片描述

在这里插入图片描述
docker就像手机里的应用商店

docker命令

学习方式:redis-tab 看到一切命令,docker --help就可以看到所有命令帮助!

基本命令

docker version查看docker版本
docker info查看docker详细信息
docker --help查看docker命令

镜像命令

docker images
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200605122450219.png

docker images -a列出本地所有的镜像
docker images -q只显示镜像ID

# docker search mysql
# 可以增加搜索条件
# 列出收藏不小于 5000 的镜像
# docker search mysql --filter=stars=5000

STARS:关注度
docker search -s 30 tomcat从Docker Hub上查找关注度大于30的tomcat镜像
docker pull tomcat从Docker Hub上下载tomcat镜像。等价于:docker pull tomcat:latest
docker commit -m "提交的描述信息" -a "作者" 容器ID 要创建的目标镜像名称:[标签名]提交容器使之成为一个新的镜像。
如:docker commit -m "新的tomcat" -a "lizq" f9e29e8455a5 mytomcat:1.2
docker rmi hello-world从Docker中删除hello-world镜像
docker rmi -f hello-world从Docker中强制删除hello-world镜像
docker rmi -f hello-world nginx从Docker中强制删除hello-world镜像和nginx镜像
docker rmi -f $(docker images -p)通过docker images -p查询到的镜像ID来删除所有镜像

删除镜像

docker rmi -f 镜像id  # 强制删除
docker rmi -f 镜像id 镜像id  # 强制多个删除
# 删除全部
docker images -aq # 获取全部镜像的id

docker rmi -f $(docker images -aq)  # 组合命令!

容器命令

1、新建并启动容器

docker run

# 常用参数
--name="MySQL"   给容器指定一个名字
-d               后台运行
-i               交互模式运行,进入容器
-t               交互模式运行,分配终端。进入容器
-P               随机暴露端口
-p               指定暴露的端口
 -p 3306:3306    将容器内部的端口和内部端口做映射
 
# 这些镜像一般都是精简的!
[root@kuangshen ~]# docker run -it centos /bin/bash   #以交互模式进入容器,
[root@8731ed2f08d1 /]# ll
bash: ll: command not found
[root@8731ed2f08d1 /]# ls
bin  etc   lib	  lost+found  mnt  proc  run   srv  tmp  var
dev  home  lib64  media       opt  root  sbin  sys  usr
[root@8731ed2f08d1 /]# vim
bash: vim: command not found
[root@8731ed2f08d1 /]# ifconfig
bash: ifconfig: command not found
[root@8731ed2f08d1 /]# exit   # 退出容器
exit
[root@kuangshen ~]# ll

2、列出运行的容器

[root@kuangshen ~]# docker ps    # 正则运行的
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
[root@kuangshen ~]# docker ps -a    # 正在运行和历史运行的都会显示!
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS           
8731ed2f08d1        centos              "/bin/bash"              2 minutes ago       Exited (127) 

3、退出容器

exit   # 容器停止退出
Ctrl+P+Q  # 不停止容器,退出

4、容器的启动停止

docker start    # 启动
docker restart  # 重启

docker stop  # 停止
docker kill  # 强制停止

5、删除容器

docker rm -f  容器id           # 删除指定的
docker rm -f $(docker ps -qa)  # 删除全部
docker run [OPTIONS] IMAGE根据镜像新建并启动容器。IMAGE是镜像ID或镜像名称
OPTIONS说明:
 --name=“容器新名字”:为容器指定一个名称
 -d:后台运行容器,并返回容器ID,也即启动守护式容器
 -i:以交互模式运行容器,通常与-t同时使用
 -t:为容器重新分配一个伪输入终端,通常与-i同时使用
 -P:随机端口映射
 -p:指定端口映射,有以下四种格式:
  ip:hostPort:containerPort
  ip::containerPort
  hostPort:containerPort
  containerPort
docker ps列出当前所有正在运行的容器
docker ps -a列出所有的容器
docker ps -l列出最近创建的容器
docker ps -n 3列出最近创建的3个容器
docker ps -q只显示容器ID
docker ps --no-trunc显示当前所有正在运行的容器完整信息
exit退出并停止容器
Ctrl+p+q只退出容器,不停止容器
docker start 容器ID或容器名称启动容器
docker restart 容器ID或容器名称重新启动容器
docker stop容器ID或容器名称停止容器
docker kill 容器ID或容器名称强制停止容器
docker rm 容器ID或容器名称删除容器
docker rm -f 容器ID或容器名称强制删除容器
docker rm -f $(docker ps -a -q)删除多个容器
docker logs -f -t --since --tail 容器ID或容器名称查看容器日志
如:docker logs -f -t --since=”2018-09-10” --tail=10 f9e29e8455a5
 -f : 查看实时日志
 -t : 查看日志产生的日期
 --since : 此参数指定了输出日志开始日期,即只输出指定日期之后的日志
 --tail=10 : 查看最后的10条日志
docker top 容器ID或容器名称查看容器内运行的进程
docker inspect 容器ID或容器名称查看容器内部细节
docker attach 容器ID进到容器内
docker exec 容器ID进到容器内
docker cp 容器ID:容器内的文件路径 宿主机路径从容器内拷贝文件到宿主机.
如:docker cp f9e29e8455a5:/tmp/yum.log /root

日志查看

docker  logs
# 参数
  -f  -t  --tail 行数

# 通过日志查看
# -t  时间戳显示
# -f  刷新最新的日志
# --tail n 指定显示最后的多少行
[root@kuangshen ~]# docker logs -tf --tail 10 2b0b65a0733d

查看容器进程信息

docker top 2b0b65a0733d

# 常用的,进入正在运行的容器 
# -it 创建一个新的端口,交互模式运行  会启动新的终端
[root@kuangshen ~]# docker exec -it 2b0b65a0733d /bin/bash

# 进入正在执行的终端!不会启动新的终端
[root@kuangshen ~]# docker attach 2b0b65a0733d

复制容器内的文件到宿主机上
docker cp 2b0b65a0733d:/home/f1 /home

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值