美文网首页
docker容器

docker容器

作者: 溺于眼里星河 | 来源:发表于2019-07-25 14:44 被阅读0次
    docker概念
    

    1、什么是Docker

    Docker事一个居于LXC技术构建的容器引擎,基于GO语言开发,遵循Aoache2.0协议开源


    ---.png

    2、容器和镜像

    Container:既Docker将宿主机隔开的一个个独立空间
    Image:可以看作是一个特殊的文件系统,既对某一时刻容器准备的备份

    3、镜像仓库地址

    https://hub.docker.com/
    https://dev.aliyun.com/search.html
    https://c.163yun.com/hub#/m/home/

    4.运行原理

    WI1A%9JGHZHR2IR)Z16DNPS.png
    安装docker容器
    

    --安装docker容器--
    sudo apt-get install docker.io -y
    --启动服务--
    sudo service docker start
    --查看版本--
    sudo docker --version

    镜像的操作
    

    1.下载镜像

    语法:
    docker pull [OPTIONS] NAME[:TAG|@DIGEST]
    OPTIONS说明:
    -a:拉去所有tagged镜像
    --disable-content-trust:忽略镜像的校验,默认开启
    TAG说明:
    不同的镜像版本号标志
    示例:
    sudo docker pull centos

    2.查看本地镜像

    语法:
    docker images [OPTIONS] [REPOSITORY[:TAG]]
    OPTIONS说明:
    -a:列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层)
    --digests:显示镜像的摘要
    -f:显示满足条件的镜像
    --format:指定返回值的模板文件
    --no-trunc:显示完整的镜像信息
    -q:只显示镜像ID
    示例:
    sudo docker images
    各个列说明:
    REPOSITORY:表示镜像的仓库源
    TAG:镜像的标签
    IMAGE ID:镜像ID
    CREATED:镜像创建时间
    SIZE:镜像大小

    3、搜索镜像

    语法:
    docker search [OPTIONS] 镜像名称
    OPTION说明:
    --automated:值列出automated build类型的镜像
    --no-trunc:显示完整的镜像描述
    -s:列出收藏数不小于指定值的镜像
    示例:
    sudo docker search tomcat
    各个选项说明:
    NAME:镜像仓库源的名称
    DESCRIPTION:镜像的描述
    OFFICIAL:是否docker官方发布

    4.删除镜像

    语法:
    docker rmi [OPTIONS IMAGE [IMAGE...]
    OPTIONS说明:
    -f:强制删除
    --no-prune:不溢出该镜像的过程镜像,默认移除
    示例:
    --删除tomcat镜像--
    sudo docker rmi -f tomcat

    容器的操作
    

    1.生成容器

    语法:
    docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
    OPTIONS常用说明:
    -d:后台运行容器,并返回容器ID
    i:以交互模式运行容器,通常与-t同时使用
    -p:端口映射,格式(宿主)端口:容器端口
    -t:为容器重新分配一个为输入终端,通常与-i同时使用
    --name="nginx-lb":为容器指定一个名称
    -h"mars":指定容器的hostname
    -m:设置容器使用内存最大值
    --net="bridge":指定容器的网络连接类型,支持bridge/host/none/container:四种类型:none无网络,host宿主网络,brldge默认,每个容器独立网络,container容器共用一个网络
    --expose=[]:开放一个端口或者一组端口
    --link=[]:添加连接到另一个容器
    示例:
    --生成启动容器,端口号8080,容器名称tomcat--
    sudo docker run -it -d -p 8080:8080 --name tomcat centos

    2.容器网络操语法

    语法:
    docker network create 网络名称 ——创建网络
    docker network ls ——列出创建的网络
    docker network rm 网络名称 ——删除创建的网络
    docker network disconnect 网络名称 ——禁用连接网络
    示例:
    --创建一个envdm网络xxx.xxx.x.x--
    sudo docker network create --subnet=[对应内网ip]/24
    --创建tomcat容器 指定xxx.xxx.x.x--
    sudo docker run -it -d --net envdm --ip xxx.xxx.x.x -name tomcat centos

    3.查看容器

    语法:
    docker ps [OPTIONS]
    OPTIONS常用说明:
    -a:显示所有的容器,包括未运行的
    -f:根据条件过滤显示的内容
    -l:显示最近创建的容器
    -n:列出最近创建的n个容器
    -s:显示总的文件大小
    示例:
    --查找tomcattomcat容器永兴和未运行的都显示--
    sudo docker ps -a|grep tomcat

    4.进入容器

    语法:
    docker exec [OPTIONS] CONTAINER COMMADND [ARG...]
    OPTIONS常用说明:
    -d:分离模式:在后台运行
    -i:即使没有附加也保持STDIN打开
    -t:分配一个伪终端
    示例:
    sudo docker exec -it tomcat /bin/bash——进入tomcat

    5.退出容器

    语法:
    exit
    示例:
    exit——退出当前容器

    6.停止容器

    语法:
    docker stop containerId/containerName
    示例:
    sudo docker stop tomcat——停止tomcat容器

    7.启动容器

    语法:
    docker start containerId/containerName
    示例:
    --启动tomcat容器,此容器必须存在--
    sudo docker start tomcat

    8.删除容器

    语法:
    docker rm containerId/containerName
    示例:
    sudo docker rm tocat——删除tomcat容器

    9.拷贝文件到容器

    语法:
    docker cp 宿主机目录及文件 容器名称:容器目录
    示例:
    --把宿主机当前目录下的jdk-8u201-linux-x64.tar.gz赋值到容器romcat的/home/apps文件下--
    sudo docker cp jdk-8u201-linux-x64.tar.gz tomcat:/home/apps/jdk-8u201-linux-x64.tar.gz

    10.查看日志

    语法:
    docker logs [OPTIONS] CONTAINER
    OPTIONS常用说明:
    --details:显示更多信息
    -f,--follow:跟踪实时日志
    --since string:显示自某个timestamp之后的日志,或相对时间,如42既(42分钟)
    -t,--timestamps:显示时间戳
    --until string:显示自某个timestamp之后的日志或相对时间,如42m(42分钟)
    示例:
    --查看指定时间后的日志,只显示最后100行--
    sudo docker logs -f -t --since="2018-02-08" --tail=100 dm_zuul-gateway_1
    --查看最近30分钟r日志--
    sudo docker logs --since 30m dm_zuul-gateway_1
    --查看实时日志--
    sudo docker logs -f dm_zuul-gateway_1

    创建tomcat容器发布项目
    

    1.下载centos镜像

    --更新资源连接--
    sudo apt-get update
    --下载centos镜像--
    sudo docker pull centos

    2.运行容器

    sudoo docker run -it -p 8080:8080 --name tomcat centos

    3.复制jdk到tomcat容器中

    dudo docker cp jdk-8u201-linux-x64.tar.gz tomcat:/home/jdk-8u201-linux-x64.tar.gz

    4.复制tomcat到容器中

    sudo docker cp apache-tomact-7.0.93.tar.gz tomcat:/home/apache-tomact-7.0.93.tar.gz

    5.进入到tomcat容器中

    sudo docker exec -it tomcat /bin/bash

    7.解压jdk和Tomcat

    tar -zxvf jdk-8u201-linux-x64.tar.gz
    tar -zxvf apache-tomact-7.0.93.tar.gz

    8.删除压缩jdk和tomcat文件

    rm -f jdk-8u201-linux-x64.tar.gz
    rm -f apache-tomact-7.0.93.tar.gz

    9.配置jdk的环境变量(临时)

    export JAVA_HOME=/home/jdk1.8.0_144
    export PATH=美元符号JAVA_HOME:美元符号PATH

    10.Tomcat给执行权限

    chmod 777 apache-tomcat-7.0.93/bin

    11.启动Tomcat

    ./apache-tomcat-7.0.93/bin/catalina.sh start

    12.访问

    http://虚拟机IP:8080

    相关文章

      网友评论

          本文标题:docker容器

          本文链接:https://www.haomeiwen.com/subject/ioycrctx.html