2.Docker 常用命令(三)——容器命令

Docker 容器命令

  1. 启动运行容器:docker run [OPTIONS] IMAGE [COMMAND] [ARG…]

    • 部分 OPTIONS 说明:docker run --help 查看所有 OPTIONS

      • –name string 为容器指定名称

      • -d 后台运行容器并打印容器 ID

      • -i 以交互模式运行容器,通常与 -t 同时使用(启动交互式容器)

      • -t 为容器分配一个伪输入终端,通常与 -i 同时使用(启动交互式容器)

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QjrPPwCK-1662906748969)(2.Docker 常用命令(三)——容器命令.assets/image-20220717210450366.png)]

      • -p 指定端口映射

        参数说明
        -p hostPost:containerPort端口映射
        -p ip:hostPost:containerPort配置监听地址
        -p ip::containerPort随机分配端口
        -p hostPost:containerPort指定协议
        -p hport1:cport1-p hport2:cport2多个端口映射
  2. 查看运行中的容器:docker ps

    Usage:  docker ps [OPTIONS]
    
    List containers
    
    Options:
      -a, --all             Show all containers (default shows just running)
      -f, --filter filter   Filter output based on conditions provided
          --format string   Pretty-print containers using a Go template
      -n, --last int        Show n last created containers (includes all states) (default -1)
      -l, --latest          Show the latest created container (includes all states)
          --no-trunc        Don't truncate output
      -q, --quiet           Only display container IDs
      -s, --size            Display total file sizes
    
  3. 停止容器:

    • 容器内,exit 退出,容器停止

      desc

    • ctrl+p+q 退出容器,容器不停止

      desc

  4. 启动已经停止运行的容器:docker start [OPTIONS] CONTAINER [CONTAINER…]

    desc

  5. 重启(一个或多个)容器:docker restart [OPTIONS] CONTAINER [CONTAINER…]

  6. 停止(一个或多个)容器:docker stop [OPTIONS] CONTAINER [CONTAINER…]

  7. 强制(一个或多个)停止容器:docker kill [OPTIONS] CONTAINER [CONTAINER…]

  8. 删除已停止的(一个或多个)容器:docker rm [OPTIONS] CONTAINER [CONTAINER…]

    • -f 强制删除

    • 删除所有容器实例

      • docker rm -f $(docker ps -a -q)

      • docker ps -a -q | xargs docker rm

        desc

  9. 查看容器日志:docker logs [OPTIONS] CONTAINER

  10. 查看容器内运行的进程:docker top CONTAINER [ps OPTIONS]

  11. 查看容器内部细节:docker inspect [OPTIONS] NAME|ID [NAME|ID…]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jIighkRr-1662906748975)(2.Docker 常用命令(三)——容器命令.assets/image-20220718002207341.png)]

  12. 进入正在运行的容器并命令行交互:

    • 推荐:docker exec [OPTIONS] CONTAINER COMMAND [ARG…]

      desc

      • 一般用 -d 后台启动程序,再用 exec 进入对应容器实例
    • docker attach [OPTIONS] CONTAINER

    • 区别:

      • exec 是在容器中打开新的终端;且用 exit 退出,不会导致容器的停止

      • attach 是直接进入容器启动命令的终端;且用 exit 退出,会导致容器的停止

        desc

  13. 容器与主机的文件拷贝

    • 容器到主机:docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-

      desc

    • 主机到容器:docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH

      desc

      desc

  14. 导入导出容器(用于容器备份)

    • 导出容器的内容作为一个 .tar 归档文件:docker export [OPTIONS] CONTAINER

      desc

    • 导入压缩包的内容从而创建文件系统镜像:docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]]

      desc


Docker 后台启动容器:

​ 在大部分的场景下,我们希望 Docker 的服务是在后台运行的(如 Redis、MySQL 等), 我们可以过 -d 指定容器的后台运行模式。

Redis 前后台启动:

  • 前台交互式启动

    desc

  • 后台守护式启动

    desc

​ 但是,我们在使用某些镜像以后台模式启动时,由于 Docker 机制问题,容器会退出,下图所示使用 ubuntu:latest 镜像以后台模式运行,可以发现容器运行已经退出。

desc

​ 需要说明:Docker 容器后台运行,就必须有一个前台进程;容器运行的命令如果不是那些一直挂起的命令,就是会自动退出的。因此,要把运行的程序以前台进程的形式运行,常见就是命令行模式,表示我还有交互操作,别中断。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值