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

Docker入门

西北峰 学生
难度初级
时长 1小时36分
学习人数
综合评分9.50
130人评价 查看评价
9.7 内容实用
9.3 简洁易懂
9.5 逻辑清晰
  • docker pull    获取image
    docker build   创建image
    docker images  列出image
    docker run     运行container
    docker  ps     列出正在运行的container   
    docker  rm     删除container
    docker  rmi    删除image
    docker  cp     在host和container之间拷贝文件
    docker  commit  保存改动为新的image


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

    1.第一种方式:


    # 运行容器内部地址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.第二种方式:


    #将当前目录下的html子目录挂载到容器中中的/var/www/htm

    ldocker run -p 80:80 -d -v $PWD/html:/var/www/html nginx


    3.第三种方式:


    # 宿主机目录:$PWD/data docker目录:/var/mydata  容器名:data_container 基础镜像:ubuntu

    docker 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



    https://www.imooc.com/notepad/21a442

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

    2019-02-28

  • VOLUME 持久存储,应用场景比如数据库,可以存储在容器外面的分卷上。

    容器跟容器之间的数据共享也可以用。

    查看全部
    1 采集 收起 来源:volume介绍

    2019-02-28

  • sudo 普通用户希望用root权限执行

    wget 下载命令

    -qO(字母) 限制输出跟普通输出

    | sh 用SH的方式执行


    --------------------

    Linux安装docker,当前用户没有root权限。

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

    添加权限

    sudo usermod -aG docker 用户名

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

    2019-02-28

  • docker&&vmhttps://img1.sycdn.imooc.com//5c67cbf4000178af08110487.jpg

    查看全部
    1 采集 收起 来源:Docker介绍

    2019-02-16

  • docker search whalesay 搜索镜像

    docker pull whalesay 下载镜像

    docker tag docker/whalesay xsw/whalesay 给镜像换一个名字

    docker push xsw/whalesay

    上传之前要 docker login 登录

    查看全部
    1 采集 收起 来源:registry实战

    2019-01-09

  • 运行 docker 时 用 -v 参数指定 volume 的路径, 然后再用 inspect 查看 volume 映射到硬盘上的路径, 然后再直接更改硬盘上的文件。

    -v 参数也可以指定硬盘路径映射(挂载)到容器的路径。 docker run -p 80:80 -d -v $PWD/html:/usr/share/nginx/html nginx(很好的用于开发)

    docker create -v $PWD/data:/var/mydata --name data_container ubuntu

    docker run --volumes-from data_container ubuntu 

    两个组合可以实现镜像文件共享。

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

    2019-01-09

  • docker ps -a 表示所有容器

    docker pull 获取image

    docker build 创建image

    docker run 运行container

    docker images 列出image

    docker ps 列出container

    docker rm 删除container

    docker rmi 删除images

    docker cp host和container之间拷贝文件

    docker commit 保存改动为新的image


    查看全部
  • FROM ubuntu

    MANTAINER XSW

    RUN sed -i 's/cn.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 /usr/share/nginx/html

    ENTRYPOINT ["/usr/sbin/nginx","-g","daemon off;"]

    EXPOSE 80

    Dockerfile 语法

    FROM 基础镜像 

    RUN 在容器中执行命令

    ADD 添加文件,相比COPY可以将远程的文件复制进容器

    COPY 拷贝文件

    CMD 执行命令

    EXPOSE 暴露端口

    WORKDIR 指定路径

    MAINTAINER 维护者

    ENV 设置环境变量

    ENTRYPOINT 容器入口

    USER 指定用户

    VOLUME 指定容器挂载的卷

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

    2019-01-06

  • 目录关系:

    ghost
      - ghost
        - Dockfile    
      - nginx
          - nginx.conf
          - Dockfile
      - data
      - docker-compose.yml


    ghost/ghost/Dockfile

    https://img1.sycdn.imooc.com//5bc7e4f10001dd9c04800093.jpg


    ghost/ghost/config.js

    https://img1.sycdn.imooc.com//5bc7e523000125dc06630555.jpg


    ghost/nginx/Dockfile

    https://img1.sycdn.imooc.com//5bc7e5900001846704920086.jpg

    ghost/nginx/nginx.conf

    https://img1.sycdn.imooc.com//5bc7e9070001325305150210.jpg


    ghost/docker-compose.yml

    https://img1.sycdn.imooc.com//5bc7e7dd0001367f04590710.jpg

    此处数据库相关的配置要和config.js中的配置保持一致。【注:db.volumes的值应该为:$PWD/data:/var/lib/mysql】


    ghost目录:

    #将所有容器启动,并以daemon的方式后台运行
    docke-compose up -d

    启动容器后浏览器访问localhost

    显示502 Bad Gateway错误

    表示nginx已经启动,但是nginx和ghost-app之间的链接是不对的。

    检查:

        1.docker-compose.yml

        2.nginx.conf


    1.将已经启动的容器停掉
    docker-compose stop
    
    2.将已经停掉的容器删除掉
    docker-compose rm
    
    3.修改了nginx.conf之后需要重新构建镜像[第一次没有镜像,执行的时候回直接创建镜像,现在已经镜像了,所以需要重新构建]
    docker-compose build 
    
    4.使用镜像启动容器
    docker-compose up -d
    
    5.再次使用浏览器访问就成功了,表示使用docker-compose拉的三个容器已经启动,并且相互协作了
    
    6.访问localhost/ghost/setup/one 进行配置


    localhost/ghost/editor/ 写文章并发布,则可以在localhost看到发布的文章。


    查看全部
    1 采集 收起 来源:compose实战

    2018-10-18

  • .yaml  常见的如docker等软件的配置文件

    ghost-app:
        build:ghost
        depends_on:
            - db
        ports:
            - "2368:2368"
     nginx:
         build:nginx
         ports:
             - "80:80"
         depends_on:
             - ghost-app
    db:
        image: "mysql:5.7.15"

    三个顶层对象,表示三个服务,分别是:ghost-app、nginx、db


    查看全部
    1 采集 收起 来源:compose实战

    2018-10-18

  • docker-compose 安装

    1.Mac/Windows: 

        安装docker的时候附带安装了。

    2.Linux:

    curl https://github.com/docker/compose


    查看全部
    1 采集 收起 来源:compose介绍

    2018-10-18



  • #chroot对应用程序做了文件系统的分离


    #VM有一层Hypervisro虚拟层,虚拟出硬件

    #Docker没有Hypervisro虚拟层,会轻量很多

    查看全部
    1 采集 收起 来源:Docker介绍

    2018-08-14

  • Volume

    #docker run -d -name nginx-v /user/share/nginx/html nginx  通过-v挂在一个卷

    #docker inspect nginx 检查当前容器

    关心Mounts,把本地的一个路径映射到容器中

    #echo "it's 2018" > index.html

    #docker exec it nginx /bin/bash 进入容器中去看一下

    #cd /usr/share/nginx/html/


    #docker run -p 80:80 -d -v $PWD/html:/usr/share/nginx/hmtl nginx   $PWD是指当前路径的意思

    修改当前路径下的index.html,然后访问容器的80端口


    关键一下容器

    #mkdir data

    #docker create -v $PWD/data:/var/mydata --name  data_container ubuntu  如果没有ubuntu镜像会自动下载

    #docker run -it --volumes-form data_container ubuntu /bin/bach

    #mount

    #cd /var/mydata

    #touch whaterver.txt

    退出容器,查看本地的data目录,一个数据的容器可以被多个其他容器挂在,这样可以实现数据的共享



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

    2018-06-27

  • Dockerfile创建镜像

    #mkdir d1

    #cd d1

    #touch Dockerfile

    FROM alpine:latest

    MAINTAINER smilevt

    CMD echo "Hello Docker!"

    #docker build -t hello_docker .


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

    2018-06-27

举报

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

微信扫码,参与3人拼团

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

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