• docker基础学习一


    一 docker是什么?

      docker是目前比较火的容器引擎,开发者可以打包应用以及依赖到可移植的容器中,然后发布到任何流行的Linux容器上,也可以实现虚拟化。容器完全使用沙箱机制,相互之间不会有任何接口。

    二 安装docker

    yum包更新到最新
    sudo yum update
    
    安装需要的软件包  yum-util提供yum-config-manager功能 ,另外两个是devicemappe驱动依赖的
    sudo yum install -y yum-utils device-mapper-persistent-data 1vm2
    
    设置为yum源为阿里云
    sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
    centos8默认使用podman代替docker,所以需要containerd.io
    yum install https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-1.2.6-3.3.fc30.x86_64.rpm
    
    安装docker   ce是社区版
    sudo yum install docker-ce
    
    安装后查看docker版本
    docker -v 
    

    在这里插入图片描述

    三 设置docker为国内镜像

    设置docker国内镜像,不然拉取一些镜像的速度会非常慢,使用的是国外站点,我刚开始使用的阿里镜像,但是启动docker一直无法启动,后面更换了镜像就可以了。

    vi /etc/docker/daemon.json
    
    将下面镜像之间复制进去,当然也可以选择其他国内镜像
    
    {
    "registry-mirrors":["https://registry.docker-cn.com"]
    }
    

    我在设置镜像的时候没有找到cocker文件夹,我是自己通过命令创建出来的

    mkdir /etc/docker 
    

    四 docker的一些常用命令

    启动docker
    systemctl start docker 
    
    查看docker启动状态
    systemctl status docker
    
    停止docker
    systemctl stop docker
    
    重启docker
    systemctl restart docker
    
    设置开机自启
    systemctl enable docker
    

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

    五 docker镜像的一些常用命令

    查看镜像
    docker images
    
    搜索镜像,搜索的是互联网里面的
    docker search 镜像名称包含的字
    
    拉取镜像
    docker pull 镜像名称
    
    删除镜像
    docker rmi  镜像ID|镜像名称
    
    删除全部镜像
    docker rmi `docker images -q`
    

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

    六 docker容器的一些命令

    • 创建查看容器
    查看容器
    docker ps
    
    查看所有容器
    docker ps -a
    
    查看最后一次运行的容器
    docker ps -l
    
    查看停止的容器
    docker ps -f status=exited
    
    查看容器日志
    docker logs -f -t --since="2018-03-31" --tail=100 elastic_raman
    –since : 此参数指定了输出日志开始日期,即只输出指定日期之后的日志。 
    -f : 表示查看实时日志 
    -t : 查看日志产生的日期 
    -tail=200 : 查看最后的200条日志。 
    sleepy_snyder 容器的名称,并不是镜像的名字
    

    在这里插入图片描述

    创建容器
    docker run
    -i:表示运行容器
    -t:表示容器启动后会进入其命令行,加入这两个参数后,容器创建完成就会登陆进去,相当于一个伪终端
    --name:为容器命名
    -v:表示目录映射关系(前者是宿主机,后者是映射到宿主机的目录),可以使用多个-v做多个目录或者文件的映射。最好是最目录映射 ,在宿主机上做修改然后共享到容器上面
    -d:在run后面加上-d参数。则会创建一个守护式容器在后台运行(这样不会自动登陆容器。如果过只加-i,-t两个参数会直接进入到容器里面)
    -p:表示端口映射,前者是宿主机,后者是容器内的映射端口,也是可以多个-p做多个端口映射
    
    • 交互式方式创建容器
    docker run -it --name=MyTest   镜像名称:镜像标签    /bin/MyTest
    /bin/MyTest==就是交互式方式运行之后,运行的命令(相当于加载镜像容器的命令行)
    
    

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

    当前已经进入到容器里了。从新开一个窗口,就可以看到当前运行的容器了
    在这里插入图片描述

    退出容器,容器也会关机
    exit
    
    
    • 守护式方式创建容器
    name名字是唯一的,即使之前的容器关机了,也不能出现重复名称
    docker run -di --name=Mycentos1 centos:latest
    
    

    在这里插入图片描述

    进入容器
    docker exec -it Mycentos1 /bin/bash
    
    

    在这里插入图片描述

    此时通过命令exit退出,但是容器并不会关机

    • 停止启动容器
    停止容器
    docker stop 容器名称|容器ID
    
    启动容器
    docker start 容器名称|容器ID
    
    
    • 文件拷贝,目录挂载
    docker cp 需要拷贝的文件或者目录  容器名称:容器目录
    
    docker cp 容器名称:容器目录    需要拷贝的文件或者目录  
    
    

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

    目录挂载 宿主机的/docker/MyTest与容器的/usr/local共享
    docker run -di --name=MyCentos2 -v /docker/MyTest:/usr/local centos:latest
    
    

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

    这里是中文,查看的时候出现乱码了

    这个命令可以查看容器的很多东西,包括IP地址
    docker inspect MyCentos2
    
    直接查询所需要的信息,如IP地址
    docker inspect --format='{{.NetworkSettings.IPAddress}}' MyCentos2
    
    

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

    删除容器
    docker rm 容器名称|容器ID
    
    

    七 docker备份与迁移

    容器保存为镜像
    docker commit 容器名称 镜像名称
    
    

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

    容器备份 将
    docker save -o 导出文件名  镜像名称
    
    导入镜像
    docker load -i 备份的镜像文件名 
    
    

    在这里插入图片描述

  • 相关阅读:
    SVN 使用学习记录
    jQuery 获取 URL信息
    JS扩展方法
    .Net 加密 哈希
    SQL Serverf 索引
    SQL Server索引
    SQL Server索引
    insert into select 多个表
    Mysql数据库自带四个数据库的解析
    转: MySQL5.7 ERROR 1142 (42000)问题
  • 原文地址:https://www.cnblogs.com/yangk1996/p/12657703.html
Copyright © 2020-2023  润新知