Docker 轻轻松松学会 docker

kouyou · 2019年06月13日 · 最后由 who 回复于 2019年08月25日 · 279 次阅读
本帖已被设为精华帖!

一、思考

1.想搭建一个网站,如何做?

LNMP(Linux + Nginx + MySQL + PHP)

  • 安装各种软件以及相关依赖环境
  • 参数配置
  • 写程序
  • 功能测试
  • 部署


2.网站想换位置,迁移至阿里云?

  • 上述步骤需要重来一篇
  • 数据迁移非常麻烦
  • 环境不同步,配置繁琐



三、docker介绍

1.什么是容器?

  • 来装东西
  • 杯子,可以装水
  • 饭盒,可以装饭菜
  • 酒瓶,可以装酒

docker,也是容器,它是来web应用的


docker设计思想来自于集装箱

  • 进行标准化
  • 隔离(不同的应用之间,往往需要隔离)
  • 如果把云计算当作大货柜,那么docker就相当如集装箱


2.什么是docker?

  • 是一个让开发、测试、部署、运行应用程序更简单的工具

  • 充分利用系统资源

  • 大大提高工作效率


3.为什么使用docker?

  • 开发:开发环境的配置

  • 测试:测试环境的部署

  • 运维:运维环境的搭建

  • 线上部署:需要非常稳定的线上环境

  • 全球知名机构,对各中大型公司使用docker的分析调查


4.docker vs vmware(or virtualbox)?



5.docker 架构

  • Docker Engine(C/S架构)

    • a server process(服务端)
    • a client cli(客户端)
    • a rest api interface
    • 服务端与客户端使用restful api接口进行交互

  • Docker objects
Docker:假如类比为汽车
Dockerfile:相当如汽车的蓝图(图纸),用来创建image镜像
Docker image:类似于样版车,不是真正的车,不能够驾驶
Docker container:相当如在样版车上加入各种零部件进行组装,并且加满油之后,汽车就能够正常驾驶了
Docker Registry:类似于汽车4s店,可以免费获取docker image
Docker volume: 类似与油箱,汽车报废了,但油箱中的油还能使用
Docker Swarm:相当于,交通枢纽,控制多辆汽车的运行
  • Docker Hub(Docker Registry)



四、安装docker

1.在Windows中安装docker

官方安装教程:https://docs.docker.com/docker-for-windows/


2.在linux中安装docker

在Centos中安装docker:https://docs.docker.com/install/linux/docker-ce/centos/

在ubuntu中安装docker:https://docs.docker.com/install/linux/docker-ce/ubuntu/


3.在虚拟机中安装docker

在Windows中安装virtualbox虚拟机,在虚拟机中安装Centos,然后在Centos中安装docker

  • 首先安装最新版的virtualbox
  • 安装vagrant
  • 在vagrant中下载并启动Centos7


4.在线练习docker

katacoda网站:https://www.katacoda.com/ 每10分钟一个小练习

Play with Docker网站:https://labs.play-with-docker.com/ 每次能使用4个小时



五、基本操作

1.docker image

# 先运行hello-world和centos容器
docker run hello-world
docker run -it centos /bin/bash

  • 列出镜像

docker images

  • 下载镜像

    • docker pull 镜像名(会从docker hub官方仓库中下载到本地)
    • docker run 镜像名(如果本地没有此镜像,将会先从docker hub官方仓库中拉去到本地,然后运行
  • 删除镜像

    • sudo docker rmi 镜像id或者镜像名

    docker rmi fce289e99eb9 或者 docker rmi hello-world

  • 查看镜像详细信息

docker inspect 镜像名或者镜像id


2.docker container

  • 运行容器

sudo docker run -it centos /bin/bash

  • 列出容器

    • 列出正在运行的容器 sudo docker ps
    • 列出所有容器(包括关闭的) sudo docker ps -a
  • 查看容器的进程和资源利用情况

    • sudo docker top 容器id和容器名
    • sudo docker stats 容器id和容器名
  • 停止/开启容器

    • sudo docker stop 容器id和容器名
    • sudo docker start 容器id和容器名
  • 暂停/启动容器

    • sudo docker pαuse 容器id和容器名
    • sudo docker unpαuse 容器id和容器名
  • 删除容器

    • sudo docker rm 容器id和容器名
    • sudo docker rm -f 容器id和容器名


共收到 6 条回复
huahua 将本帖设为了精华贴 06月14日 16:33

厉害啊大佬

交作业

老师授业解惑,学生醍醐灌顶

get到了

干货满满,收益匪浅!2019-08-25 22:32:59

干货满满,收益匪浅!2019-08-25 23:05:19

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册