查看命令

  • docker images 查看镜像
  • docker ps 查看正在运行的容器
  • docker ps -a 查看所有的容器
  • docker inspect container-name 记录着 Docker 容器的配置和状态信息的JSON文件支持过滤
  • docker top container-name 查看容器中的运行进程
  • docker port container-name 查看容器的映射端口
  • docker info | grep -i root 可以查看 docker 文件系统根目录

删除命令

*docker rm 删除容器

*docker rmi 删除镜像

进入容器执行

  • docker exec -it 【容器名】 bash
    • -i :即使没有附加也保持STDIN 打开 [-- interactive]
    • -t :分配一个伪终端 [--tty]

exit退出

启动容器

  • docker run 第一次启动容器 要暴露端口
  • -p 宿主机端口:容器应用端口 多个端口映射 [--publish]
  • -d(--detach) 创建守护式容器在后台运行 ,创建后不进入容器 ; -it 创建后会进入容器
  • -e 为容器设置环境变量
  • -v(--volume) 宿主机目录:容器目录 目录映射关系 。 可以批量修改通用设置
  • --restart always Docker重启,容器重启
  • docker start name 启动 name容器
  • docker stop name 停止容器 终止程序运行

创建容器后添加参数

docker container update --restart=always 容器名字

修改docker容器的挂载路径

  • 停止所有的容器
  • 停止docker服务
  • 找到container 的hostconfig.json config.v2.json文件 并备份
  • 修改hostjson文件中Binds选项中冒号前的路径
  • 修改config.v2.json 中 MountPoints. Source的配置路径
  • 启动docker 服务 启动容器

docker 网络及配置

docker 网络模式 -net

  • -net=value指定网络模式
  • value 的类型
  • host
  • 和宿主机公用一个 network namespce
  • 容器使用宿主机的ip和端口 ,不虚拟自己的网卡、配置ip
  • none
  • 容器有自己的 network namespace
  • 容器没有网卡,ip,路由信息。需要手动配置
  • bridge
  • docker 默认网络设置
  • 每个容器都分配一个network namespace ,设置ip
  • docker启动时创建一个名为 docker0 的虚拟网桥,容器会连接到这个虚拟网桥 ifconfig 查看docker0网桥管理接口
  • container:NAME_or_ID
  • 指定和已经创建的容器共享一个network namespce
  • 容器不创建自己的网卡和ip 而是 共享指定容器的ip和端口范围
  • 文件系统和进程是隔离的
  • 案例1

docker容器启动 网络配置-设置固定IP

*原因 :

  • /etc/hosts, /etc/resolv.conf和/etc/hostname,容器中的这三个文件不存在于镜像,在启动容器的时候,通过mount的形式将这些文件挂载到容器内部
  • docker 默认使用 briger模式,所以每次启动容器时,容器ip会发生变化。容器启动时需要重新构建新的/etc/hosts文件,否则会产生脏数据
  • 解决方案1 : 使用pipework 给容器设置ip
  • 宿主机下载pipework
  • git clone https://github.com/jpetazzo/pipework.git
  • cp pipework/pipework /usr/local/bin/
  • 安装网桥工具包bridge-utils yum -y install bridge-utils
  • 创建网桥并设置IP网段
  • brctl addbr br1
  • ip link set dev br1 up
  • ip addr add 192.168.10.1/24 dev br1
  • 启动一个容器 docker run -d --name=mysql mysql
  • 设置IP pipework br1 centos-ip 192.168.10.20/24
  • 解决方案2 : 参考 案例1
  • 解决方案3 :往/etc/hosts里添加hosts
  • --hostname :指定hostname
  • --ip:指定IP
  • --add-host :指定往/etc/hosts添加的host

网桥常用命令

brctl show  查看网桥状态
brctl delif <网桥名> <端口名> 卸载网桥上的端口
brctl delbr <网桥名> 删除网桥 ifconfig 查看网桥网卡
ifconfig <网桥名> down 关闭网卡

容器配置文件

一般在config文件下 如果 容器中没有安装vim 运行命令 apt-get update apt-get install vim

docker 的基本命令的更多相关文章

  1. Docker容器基本命令注意点

    Docker 容器基本命令注意点 前言: a. 本文主要为 Docker的视频教程 笔记. b. 本机环境为 Windows 10 专业版,使用的命令行为 PowerShell. 1. docker ...

  2. 记录以下docker的基本命令

    docker search xxx(tag)      在OFFICIAL上ok的是官方镜像    这里也可以去dockerhub上面看到   搜索xxx镜像docker images查看本地所安装的 ...

  3. 【Docker】基本命令

    1.进入容器交互状态 docker exec -ti xxxx /bin/bash 2.查询镜像 docker images 3.查询容器 docker ps

  4. 【Docker】- 基本命令

    1.docker ps -a    显示所有容器 2.doker ps -l 显示最近一次启动的容器 3.docker ps   显示正在运行的容器 4.docker start [容器ID]  启动 ...

  5. 【Docker】基本命令使用介绍

    # docker命令行学习 ## docker run- docker run --help:老实说这条最管用了- docker run -it:交互模式,允许控制台输出 - docker run - ...

  6. Docker安装基本命令操作,带你了解镜像和容器的概念!

    上一章节我们了解了Docker的基本概念,以及相关原理.这一章节进行实操. <Docker这么火爆.章节一:带你详尽了解Docker容器的介绍及使用> 一.Docker安装 声明:Dock ...

  7. Docker 02 基本命令

    参考源 https://www.bilibili.com/video/BV1og4y1q7M4?spm_id_from=333.999.0.0 https://www.bilibili.com/vid ...

  8. 七、docker基本命令

    Docker 基本命令 docker的基本命令 docker version :查看docker的版本号,包括客户端.服务端.依赖的Go等 [root@centos7 ~]# docker versi ...

  9. Docker 基本命令和使用

    Docker 基本命令 systemctl start docker : 启动 Docker systemctl stop docker : 停止 Docker systemctl restart d ...

随机推荐

  1. 正则表达式过滤html注释内容

    Regex.Replace("<!--(.|[\r\n])*?-->",string.Empty)

  2. Win环境下安装vue及运行vue开发的前端项目

    vue安装及配置 首先下载node.js要求版本在8.9以上        官网:https://nodejs.org/zh-cn/ 下载完可检查在windows任务命令行里输入node -v 使用淘 ...

  3. Blazor client-side + webapi (.net core 3.1) 添加jwt验证流程(非host)第一步

    第一步,设置并检查CROS跨域请求 因为我们并不打算将Blazor 由webapi来进行host,所以Blazor和api将是两个域名,这样操作即方便以后单独使用Blazor来写前端,但后端采用已有或 ...

  4. C#中 ref 关键字的认识和理解

    之前接手老项目的时候有遇到一些的方法参数中使用了ref关键字加在传参的参数前面的情况.对于新手,这里介绍和讲解一下ref的用法和实际效果. CLR中默认所有方法的参数传递方式都是传值,也就是说不管你传 ...

  5. CentOS7.6安装MySQL8.0(图文详细篇)

    目录 一.安装前准备 二.安装MySQL 三.设置远程登录 四.安装问题解决 五.设置MySQL开机自启 一.安装前准备 1.在官网下载MySQL安装包(注意下载的安装包类型)  2.查看是否安装ma ...

  6. 多字节与Unicode

    编码知识 一.Unicode与多字节(ANSI ) (1)Windows中,Unicode也称为宽字节,多字节也称为窄字节; VS中默认使用Unicode编码,在项目属性>>配置属性> ...

  7. 为什么我用Ipad Pro做电子笔记和看PDF电子书

    为什么我用Ipad Pro做电子笔记和看PDF电子书 Ipad做笔记的优点: 1.ipad整理的笔记可以随时修改,可以看PDF的书,2.纸质书很重携带不便3.ipad的可通过关键词搜索笔记内容 4.笔 ...

  8. .net全栈开发-c#面向对象与工控自动化分拣上位机

    一.前言 开始做了两年web.期间也整了一段时间winform.后来做了两年工控上位机,也就是做工控这两年发现机器跟面向对象真是如此贴切,也是我从处理数据和流程的思维转变为面向对象思维的开始.这对我后 ...

  9. EasyUI笔记(二)Layout布局

    本系列只列出一些常用的属性.事件或方法,具体完整知识请查看API文档 Panel(面板)   1. 通过标签创建面板 <div id="p" class="easy ...

  10. MySQL第六课

    SELECT [DISTINCT]     * /{字段名1,字段名2,字段名3,.........} FROM 表名 [WHERE 条件表达式1] [GROUP BY 字段名[HAVING 条件表达 ...