Docker学习笔记一:弄懂容器与镜像的关系&一张图记住全部管理命令

一、Docker架构与主流使用场景

Docker学习笔记一:弄懂容器与镜像的关系&一张图记住全部管理命令

Docker学习笔记一:弄懂容器与镜像的关系&一张图记住全部管理命令

二、镜像与容器

Docker学习笔记一:弄懂容器与镜像的关系&一张图记住全部管理命令

容器是从镜像中创建出来的虚拟实例

三、Linux中安装Docker

先更新yum软件管理器,然后在安装Docker

yum -y update // -y 代表选择程序安装中的yes选项
yum install -y docker

四、管理Docker虚拟机

service docker start // 启动
service docker stop // 关闭
seM q S T q $ *rvice docker restart // 重启

五、一张图记住Docker管理命令

Docker学习笔记一:弄懂容器与镜像的关系&一张图记住全部管理命令

1} ) ^ -、DockerFile

  • 定义镜像要安装的程序和配置的环境
  • 通过build创建# s Z镜像
docker build filename

2、镜像分发到其他主机中的6 ; P S _ Docker虚拟机

  • 通过push将本地镜像上传到Dock& t c g mer仓库
  • 其他主机通过search到仓库查找上传的镜像
  • D E t G Wpull将镜像下载到本地
  • 另一种:将镜像压缩成文件,其他主机用压缩文A ) } e件导入镜像即可

3、镜像管理命令

  • rmi 删除镜像
  • inspect 查看镜像的具体信息
  • imagesL ) _ _ Z看Docker虚拟机中所有的镜像
  • 导入导出镜像
docker save docker.io/| 6 C & 6 qnginx  > /hoE G 6 k ! + Kme/nginx.tar.gz // 导出x ,  $ C W镜像
dockE 5 b + R n A : ler load < /home/nginx.tar.gz //  导入镜像; z o , N a

4、容器管理命令t Y ] ) r #

  • run 镜像创建容器
  • pause/unpause 暂停和恢复容器的运行
  • stop/start 停止和恢复容器的运行
  • in0 9 k F S W mspect 查看容器的具体信息
  • ps 查看Docker中所有的容器
  • rm 删除容器
  • commit 容器保存成镜像
  • exit 退出容器命令行(在容器内执行的命令)

六、在线安装镜像J K | j b

查找想安装的相关镜像 如:

docker search nginx

查找到结果后L j t ; X,将镜像的名字复制W A d a然后下载安装 如:

docker pull docker.io/nginx

六、创建并启动一个容器

docker run -it --name nginx docker.- c s 5 m 3 k  bio/nginx bash

1、参数说明

  • [-it]T E 0 d 8 L 启动容器后^ Y k W ) q 5 Q开启一个交互界面
  • [--name] 给容器起一个名字(没名字可通过容器的ID管理)
  • [nginx] 镜像的名i H R O
  • [bash] 启动容器运行命令= M I | H ! D H程序

2、映射

  • 端口映射
docker run -it --name myjava -p 9000:8080 -p 9001:8085  do4 a v n C ucker.io/nginx bash

参数[-p]代表端口映射
意思是分别将容器的[8080][8085]端口映射到宿主机的[9000][9001]端口上

  • 文件映射
docker run -it --name ngiQ J ~ 6 fnx -v /home/project:/soft --privileged docker.io/nginx  bash

[-v] 是--volume的缩写,是目录映射参数
[:]前的路` g f ? F 6 A F径是宿主机的H f B m k路径,后面的则是容器的路径
[--pri7 Z . m (vileged]代表容器在操作映射文件 拥有最高权限

  • 组合示例
docker run -it --. * name nginx -p 80:80 -v /home/nginx/html:/u5 ? G % T 3 O tsr/share/nginx/html --privileged docker.io/nginx bash
  • 7 / 7 $ R y文件拷贝到B = 9 6 | )dZ & / `ocke? # M { r中
docker cp index.html 容器ID://user/share/nginx/html

3、容器中安装vim

apt-get update // 先更新apt-get
apt-get install vim // 安装vim