为了账号安全,请及时绑定邮箱和手机立即绑定

Docker入门

西北峰 学生
难度初级
时长 1小时36分
学习人数
综合评分9.50
130人评价 查看评价
9.7 内容实用
9.3 简洁易懂
9.5 逻辑清晰
  • <h5>什么是Image(镜像)</h5><ul class=" list-paddingleft-2"><li><p>文件和meta data的集合(root filesystem)</p></li><li><p>分层的,并且每一层都可以添加改变删除文件,成为一个新的image</p></li><li><p>不同的image可以共享相同的layer</p></li><li><p>Image本身是read-only的</p></li></ul>
    查看全部
  • 1.docker images    查看本地所有image(images其实就是一个文件系统)

    2.docker run -p 8080:80 -d daocloud.io/nginx     执行docker容器

    -p是做端口映射的,把nginx的80端口映射到本地的8080端口

    -d是允许这个程序直接返回,把这个容器作为守护进程来执行

    3.docker cp index.html containerId://user/share/nginx/html

    拷贝一个文件到docker容器

    4.docker ps   查看当前正在运行的docker容器   

    5.docker stop containerId   停止docker容器命令

    6.docker commit -m 'fun' containerId  新容器名字          结果会产生一个新的image

    7.docker rmi imageId   删除没用的image

    8.docker ps -a 列出所有容器

    9.docker rm containerId 删除容器

    http://img1.sycdn.imooc.com/5e8fe15100012e6b08510502.jpg

    http://img1.sycdn.imooc.com//5e8fe39800010ef309490443.jpg

    查看全部
  • docker linux安装命令:

    命令1:sudo wget -qO- https://get.docker.com | sh

    wget是命令行下载工具,下载后面网址

    -q是不让wget输出不太多,大写O-是直接输出到标准输出而不是输出到文件

    后面是管道,直接把下载下来的sh脚本进行sh执行,该脚本会检查本地linux版本,下载合适的安装包

    命令2:sudo usermod -aG docker user2(其他用户名) 

      就是把user加到 docker组里,就不需要进入root用户去启动docker了

    命令3:docker info

    查看全部
    0 采集 收起 来源:docker linux安装

    2020-04-10

  • 运行一个docker容器实例

    简单使用:docker run 镜像名称

    带参数使用:docker run -p 容器对外暴露的端口:容器内部端口 -d(后台运行)  镜像名称

    查看全部
  • 修改docker镜像后制成一个新的镜像文件

    docker commit -m '修改备注' docker容器ID

    查看全部
  • 停止docker某个镜像

    docker stop 容器ID

    查看全部
  • 将外部文件拷贝到docker竞相内

    docker cp 宿主机文件 容器ID+容器内文件路径

    查看全部
  • docker-compose命令

    查看全部
    0 采集 收起 来源:章节回顾

    2020-04-03

  • docker-compose命令

    查看全部
    0 采集 收起 来源:章节回顾

    2020-04-03

  • 容器和宿主机目录挂载的三种方式:

    1.第一种方式:

    1234567# 运行容器内部地址nginx用来访问网页的地址/usr/share/nginx/html docker run -d --name nginx -v /usr/share/nginx/html nginx#给出容器的所有信息docker inspect nginx > Mounts.Source  宿主机目录 [如果是mac,则该路径不是mac上的实际路径,因为mac上运行docker是还有一层虚拟层,这是docker虚拟层中的路径,可以在docker中访问到]> Mounts.Destination:/usr/share/nginx/html/ 容器目录screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty [这个路径才是mac本身挂载的目录]


    2.第二种方式:

    12#将当前目录下的html子目录挂载到容器中中的/var/www/htmldocker run -p 80:80 -d -v $PWD/html:/var/www/html nginx


    3.第三种方式:

    123456# 宿主机目录:$PWD/data docker目录:/var/mydata  容器名:data_container 基础镜像:ubuntudocker create -v $PWD/data:/var/mydata --name data_container ubuntu# -it表示使用交互的方式进入容器[默认ubuntu基础镜像没有服务]docker run -it --volumes-from data_container ubuntu /bin/bash#进入后执行mount,可以看到有/var/mydata目录的挂载信息mount


    查看全部
    0 采集 收起 来源:volume操作

    2020-04-03

  • Dockerfile中的每一行都产生一个新层

    镜像分层的原理及其好处:

     分层的好处:假如有很多 container 或者 很多的 Image的话,这些层可以共享。那么存储压力会小很多。运行起来方便。

    每个一个命令都是一层,只有容器层是RW,镜像中的各层都是RO


    查看全部
    0 采集 收起 来源:镜像分层

    2020-04-03

  • FROM ubuntu MAINTAINER me@hazyzh.com RUN sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list RUN apt-get update RUN apt-get install -y nginx COPY index.html /var/www/html ENTRYPOINT ["usr/sbin/nginx", "-g", "daemon off;"] EXPOSE 80

    查看全部
    0 采集 收起 来源:dockerfile实战

    2020-04-03

  • FROM ubuntu MAINTAINER me@hazyzh.com RUN sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list RUN apt-get update RUN apt-get install -y nginx COPY index.html /var/www/html ENTRYPOINT ["usr/sbin/nginx", "-g", "daemon off;"] EXPOSE 80

    查看全部
    0 采集 收起 来源:dockerfile实战

    2020-04-03

  • 使用 Dockerfile 创建镜像

    12345FROM alpine:latest    #使用的基础镜像MAINTAINER xbf    #谁写的********docker build -t hello_docker . (-t:给个标签,名字叫hello_docker;'.':路径名,把路径下所有内容送给docker engine).


    查看全部
    0 采集 收起 来源:dockerfile介绍

    2020-04-03

    1. docker run ubuntu echo hello docker :运行一个ubuntu镜像,并且在其中输出一个hello docker

    2. docker images : 查看容器中有的对象

    3. docker run -p 8080:80 -d daocloud.io/nigix : -p 端口映射  -d 直接输出内容

    4. 通过 docker ps 查看docker中启动的进程

    5. 尝试在nigix中输出一些信息(随便一个网页假设是index.html),执行如下命令:

      docker cp index.html xxxx://usr/share/nigix/html 

      解释:将index.html移动到xxxx(容器的进程id)://(容器里面的路径)

    6. 停止容器: docker stop xxxx(容器id)

    7. 重新执行第三步,会发现之前移动进去的index.html已经没有,这是每次对容易的修改是增量修改,需要提交才能生效(其实感觉有点类似于git的分支),因此需要执行 :

      docker commit -m "修改说明" xxxx(容器的进程id)  容器的新名字

      这个时候在执行docker images 就可以看到刚才提交的生成了一个新容器。

    8. 删除掉提交的进程 docker rmi xxx(进程id)

    9. docker ps -a :查看之前运行过的容器

    10. docker rm xx(容器id) xx xx xx  可通过空格隔开,可以清除容器


    查看全部

举报

0/150
提交
取消
课程须知
有操作Linux命令行的基本技能
老师告诉你能学到什么?
1、什么是Docker 2、什么是Docker镜像,什么是容器 3、将自己的app打包成容器 4、搭建多容器的环境 5、docker在各个平台上的安装

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!