Docker常用命令

  1. Docker架构

    1. 三个基本概念:
      1. 镜像
      2. 容器:镜像运行时的实体
      3. 仓库:保存镜像
    2. 客户端-服务器(C/S)架构模式,使用远程APi来管理和创建Docker容器
  2. Docker Hello World

    1. docker run ubuntu:15.10 /bin/echo "Hello World"
      • docker:Docker的二进制执行文件
      • run: 与docker组合运行一个容器
      • ubuntu:15.10 :要运行的镜像
      • /bin/echo "hello world": 在容器里执行的命令
    2. 进行交互式的容器
      1. docker run -it ubuntu:15.10 /bin/bash (相当于进入一个新系统)
    3. 启动容器(后台模式)
      1. docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done"
      2. docker logs CONTAINERID 查看容器内的标准输出
      3. docker stop  CONTAINERID 停止容器
  3. Docker容器的使用

    1. 获取镜像docker pull ubuntu
    2. 启动容器:docker run -it ubuntu /bin/bash
    3. 启动一个已停止的容器:docker start CONTAINERID
    4. 后台运行docker run -itd --name ubuntu-test ubuntu /bin/bash (通过-d指定运行模式)
    5. 停止一个容器: docker stop CONTAINERID
    6. 重启容器:docker restart CONTAINERID
    7. 进入容器:( 容器在后台,想要进入容器)
      1. docker attach containerID (从容器退出,会导致容器停止)
      2. docker exec -it containerID /bin/bash (推荐使用,容器不会停止)
    8. 导出和导入容器
      1. 导出容器:docker export containerID > ubuntu.bar
      2. 导入容器:cat docker/ubuntu.tar|docker import - test/ubuntu:v1
    9. 删除容器:
      1. docker rm -f containerID
      2. docker container prune (清理所有终止状态的容器)
    10. 运行一个web应用: 在docker中运行一个Python Flask应用来运行一个web应用
      1.  docker pull training/webapp
      2. docker run -d -P training/webapp python app.py
        1.  -d:让容器在后台运行
        2. -P:将容器内部使用的网络端口随机映射到我们使用的主机上(这里主机指当前用的虚拟机)
    11. 查看WEB应用程序日志: docker logs containerID
    12. 查看WEB应用程序容器的进程: docker top containerID
    13. 查看WEB应用程序(返回一个JSON文件记录着Docker容器的配置和状态信息)
      1. docker inspect container
  4. Docker镜像

    1. 更新镜像
    1. 查找镜像:docker search containerName
    2. 删除镜像:docker rmi containerName
    3. 创建镜像:
      1. 先创建一个容器:docker run -it ubuntu:15.10 /bin/bash
      2. 进行更新:apt-get update
      3. 提交容器副本:docker commit -m="has update" -a="runoob" containerID runoob/ubuntu:v2
        1. -m:提交的描述信息
        2. -a:指定镜像作者
        3. runoob/ubuntu:v2:指定要创建的目标镜像名
    4. 构建镜像
      1. 创建Dockerfile文件:
      2. 构建镜像: docker build -t runoob/centos:6.7 .
      3. 添加新标签:docker tag containerID imagesName:newTag
  5. Docker容器连接

    1. 网络端口映射
      1. -P:是容器内部端口随机映射到主机端口
      2. -p:是容器内部端口绑定到指定的主机端口
        1. docker run -d -p 127.0.0.1:5001:5000 training/webapp python app.py ( 这样我们就可以通过访问 127.0.0.1:5001 来访问容器的 5000 端口。curl 127.0.0.1:5001)
      3. 查看端口的绑定情况:docker port portName 5000
    2. Docker容器互联: docker 有一个连接系统允许将多个容器连接在一起,共享连接信息
      1. 容器命名:docker run -d -P --name liye training/webapp python app.py
      2. 新建网络:docker network create -d bridge test-net
      3. 查看网络:docker network ls
      4. 连接容器
        1. 运行一个容器并连接到新建的 test-net 网络:
          1. docker run -itd --name test1 --network test-net ubuntu /bin/bash
        2. 打开新终端,在运行一个
          1. docker run -itd --name test2 --network test-net ubuntu /bin/bash
          2. 如果无ping指令
            1. apt-get update
            2. apt install iputils-ping
        3. 在test1容器中连接test2: ping test2
    3. 配置DNS(看不懂)
  6. Docker仓库管理:目前Docker维护了一个公共仓库Docker Hub
    1. 登录:docker login
    2. 退出:docker logout
    3. 搜索:docker search ubuntu
    4. 推送镜像:用户登录后,可以通过docker push 命令将镜像推送到Docker Hub
      1. docker tag ubuntu:18.04 userName/ubuntu:18.04
      2. docker push userName/ubuntu:18.04
      3. docker search userName/ubuntu
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值