docker 的基本命令
查看命令
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 的基本命令的更多相关文章
- Docker容器基本命令注意点
Docker 容器基本命令注意点 前言: a. 本文主要为 Docker的视频教程 笔记. b. 本机环境为 Windows 10 专业版,使用的命令行为 PowerShell. 1. docker ...
- 记录以下docker的基本命令
docker search xxx(tag) 在OFFICIAL上ok的是官方镜像 这里也可以去dockerhub上面看到 搜索xxx镜像docker images查看本地所安装的 ...
- 【Docker】基本命令
1.进入容器交互状态 docker exec -ti xxxx /bin/bash 2.查询镜像 docker images 3.查询容器 docker ps
- 【Docker】- 基本命令
1.docker ps -a 显示所有容器 2.doker ps -l 显示最近一次启动的容器 3.docker ps 显示正在运行的容器 4.docker start [容器ID] 启动 ...
- 【Docker】基本命令使用介绍
# docker命令行学习 ## docker run- docker run --help:老实说这条最管用了- docker run -it:交互模式,允许控制台输出 - docker run - ...
- Docker安装基本命令操作,带你了解镜像和容器的概念!
上一章节我们了解了Docker的基本概念,以及相关原理.这一章节进行实操. <Docker这么火爆.章节一:带你详尽了解Docker容器的介绍及使用> 一.Docker安装 声明:Dock ...
- Docker 02 基本命令
参考源 https://www.bilibili.com/video/BV1og4y1q7M4?spm_id_from=333.999.0.0 https://www.bilibili.com/vid ...
- 七、docker基本命令
Docker 基本命令 docker的基本命令 docker version :查看docker的版本号,包括客户端.服务端.依赖的Go等 [root@centos7 ~]# docker versi ...
- Docker 基本命令和使用
Docker 基本命令 systemctl start docker : 启动 Docker systemctl stop docker : 停止 Docker systemctl restart d ...
随机推荐
- JavaScript中基本数据类型之间的转换
在JavaScript中共有六种数据类型,其中有五种是基本数据类型,还有一种则是引用数据类型.五种基本数据类型分别是:Number 数值类型.String 字符串类型.Boolean 布尔类型, nu ...
- winform重绘控件边框
首先添加一个用户控件 对于重绘边框有三个需要考虑的东西 1:是否显示边框 2:边框颜色 3:边框宽度 所以定义三个私有变量 /// <summary>/// 是否显示边框/// </ ...
- .NetCore学习笔记:四、AutoMapper对象映射
什么是AutoMapper?AutoMapper是一个简单的小型库,用于解决一个看似复杂的问题 - 摆脱将一个对象映射到另一个对象的代码.这种类型的代码是相当沉闷和无聊的写,所以为什么不发明一个工具来 ...
- sql的一般查询语句(增删改查中的查)
/*例子 判断规则 http://xxx.xxx/new.php?id=57 and 1=1 正确 http://xxx.xxx/new.php?id=57 and 1=2 错误 http://xxx ...
- rxjs简单的Observable用例
import React from 'react'; import { Observable } from 'rxjs'; const FlowPage = () => { const onSu ...
- 解决 Windows 编译 Fast R-CNN 的 bbox 和 nms 出现的错误 error: Unable to find vcvarsall.bat
在 Windows 下安装一个底层的 Python 包时(Fast R-CNN 的 bbox 和 nms),遇到 error: Unable to find vcvarsall.bat 错误,看到这个 ...
- c#中for与foreach的使用
for循环示例: static void Main(string[] args) { string[] s = new string[] { "a,b,c,d,e,f,g" }; ...
- BZOJ #5457: 城市 [线段树合并]
线段树合并的板子题,每次从下到上合并就完事了 // by Isaunoya #include <bits/stdc++.h> using namespace std; #define re ...
- filter逻辑bug
复合筛选,有个要求是如果筛选条件是空就不传,加了一个逻辑 看着没什么问题,但是存在bug,当重置单一筛选条件时,赋空不能奏效,比如我重置symbol为空,之前是qqq,因为有非空的判断所有并不能奏效导 ...
- mysql版本报错
IntelliJIdea2019.3打开原项目报mysql版本报错: Error opening zip file or JAR manifest missing : /C:/Users/flycat ...