zoukankan      html  css  js  c++  java
  • docker 入门(1)

    1,docker 的安装卸载 

    https://docs.docker.com/install/linux/docker-ce/ubuntu/

    2,docker中的基本概念

    • 镜像(Image)
    • 容器(Container)
    • 仓库(Repository)

    1)镜像就相当于安装系统时所需的系统镜像。

    2)容器就相当于正在运行中的虚拟机。

    3)tar文件类似于VMware中vmdk文件,使用时可以把镜像保存(save指令)为tar文件,移动后可以直接把tar文件加载(load指令)为镜像。

    4)dockerfile文件相当于配置文件,内容是镜像的构建步骤等,通过build指令来构建出镜像。

    5)仓库中保存了各种镜像(例如MySQL镜像,Tomcat镜像等等),我们可以很方便的下载(pull指令)到本地使用,也可以吧自己的镜像push到仓库。

     3,基本的操作命令

    从仓库下载所需的镜像
    docker pull nginx 相当于docker pull nginx:latest 即从仓库下载最新的nginx

    查看本地的镜像
    docker images

    运行镜像得到容器
    docker run -d -p 80:80 nginx
    -d 后台运行
    -p 指定内外的端口映射
    --name 指定容器的名字
    -v 'pwd':/usr/share/nginx/html 把当前目录映射到容器里的这个目录,这样就可以把一些文件放到容器外,方便修改

     这一串字母数字就是容器的ID

    查看正在运行的容器有哪些
    docker ps

    访问192.168.91.138:80,ip是ubuntu的ip

    可以再用这个镜像运行一个容器
    docker run -d -p 81:80 nginx
    进入容器
    docker exec -it 容器的ID bash
    容器ID可以只写前几个字符,能和其他容器区分即可

    从命令行可以看到已经进入了ID为7a开头的这个容器

    修改这个nginx容器中的index文件
    cd /usr/share/nginx/html/

    修改index.html中的内容

    退出容器
    exit

    删除容器
    docker rm -f 容器id

    容器通过commit命令得到镜像
    docker commit 容器id 给镜像取的名字
    再通过docker images命令看本地的镜像就会有自己新生成的镜像了

    创建Dockerfile文件
    vim Dockerfile

    例如写入如下内容

     FROM nginx (基于nginx镜像)
      ADD ./ /usr/share/nginx/html/(把当前目录下的文件拷贝到后面这个文件夹)

    docker build -t 给要创建的镜像取的名字 . 
    最后这个 点(.)是用当前目录下的dockerfile文件构建

     运行该镜像

    把镜像保存到 .tar文件中
    docker save image的名字 > name.tar

    把dockerfileimage镜像删除,得先把用他创建的容器删除

    利用.tar文件生成镜像
    docker load < name.tar

    详见B站视频  https://www.bilibili.com/video/av58402749?from=search&seid=713640718069258203

     

  • 相关阅读:
    [原创]失眠应该顺其自然
    [原创]电饭锅终于煮出有粥油的小米粥了
    [原创]背诵是最好的入静法门
    JSON字符串与JSON对象的区别
    C#注解属性的感想一:
    我对面向对象的理解二:
    我对面向对象的理解一:
    如何理解泛型中的new()约束
    vue关于导航守卫的几种应用场景
    vue3中如何去请求数据
  • 原文地址:https://www.cnblogs.com/xdyixia/p/11731628.html
Copyright © 2011-2022 走看看