• docker命令行学习


    docker命令行学习

    docker run

    • docker run --help:老实说这条最管用了
    • docker run -it:交互模式,允许控制台输出
    • docker run -d:detach,以后台进程的形式运行,可以与-it同时生效
    • docker run --name "your docker name":指定名称,可以在后续操作替代id
    • docker run -v {host path}:{docker path}:挂载磁盘,下面详细说
    • docker run --rm: Automatically remove the container when it exits,结束后自动删除docker,省去了docker rm的操作
    • docker run -p {host port}:{docker port}:指定端口映射关系,冒号前是宿主机的端口,冒号后是容器的端口
    • docker run --restart {mode}:支持重启的容器,三种模式:no/on-failure/always,看名字就知道是干嘛的了

    docker run -v

    重点学习一下docker run -v这个磁盘挂载操作:

    参考: 关于Docker目录挂载的总结

    挂载磁盘的目的是将宿主机的目录挂载到容器中,这样可以达到宿主机和容器共享一个目录,从而更方便的共享数据。
    值得注意的是,当在宿主机或容器中修改了目录内的内容或是目录的权限,相应的映射目录也会进行改变,但是如果是容器被删除,宿主机内的目录并不会被删除,但是反之则会。

    列出几点关键点:

    • 容器目录不可以为相对路径
    • 宿主机目录如果不存在,则会自动生成
    • 宿主机的目录如果为相对路径,会在/var/lib/docker/volumes/下创建目录
    • 如果只是-v指定一个目录,随机生成的一个目录名
    • 挂载宿主机已存在目录后,在容器内对其进行操作,报“Permission denied”

    docker logs

    • docker logs {docker_id/docker_name} :查看日志(控制台输出)
    • docker logs -f {docker_id/docker_name} :类似tail -f 实时查看输出

    docker exec

    • docker exec -it {docker_id/name} /bin/bash:进入后台运行的容器的交互模式

    docker build

    • docker build -t {tag_name} {Dockerfile dir}:根据目录下的Dockerfile文件构建一个镜像,-t指定其名称和tag
  • 相关阅读:
    java核心技术卷上学习笔记
    个人作业——软件工程实践总结作业
    个人作业——软件产品案例分析
    软件工程作业-结对编程 2.0
    软件工程作业-结对编程 1.0
    软件工程作业2.0
    软件工程作业1.0
    《面向对象程序设计》c++第六次作业___calculator SE
    面向对象程序设计作业 6.1~6.4
    面向对象程序设计作业 5.1~5.5
  • 原文地址:https://www.cnblogs.com/puyangsky/p/8178832.html
Copyright © 2020-2023  润新知