Docker介绍与使用

Docker介绍与使用

目录:
一、Docker介绍
1、Docker概述与安装
2、Docker三要素
二、Docker常用命令的使用
1、镜像相关命令
2、容器相关命令
三、Docker实战之下载mysql、redis、zimg

一、Docker介绍

Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的操作系统的机器上,也能实现虚拟化。

1、Docker概述与安装

Docker 概述 |Docker 文档
Windows和Linux安装Docker-CSDN博客

2、Docker三要素

  • 镜像(image):镜像就是一个只读的模板
  • 容器(container):容器是代码的隔离环境,可以理解为一台独立的服务器
  • 仓库(repository):仓库用来存储镜像,最大的公开仓库是Docker官方的Docker Hub

镜像和容器就像面向对象里的类和对象,也可以将镜像比作印章,那么容器就是盖下的印

二、Docker常用命令的使用

Linux上为了避免每次使用docker命令都需要加上sudo权限,可以将当前用户加入安装中自动创建的docker用户组(可以参考官方文档)

sudo usermod -aG docker $USER

执行完此操作后,需要退出服务器,再重新登录回来,才可以省去sudo权限。

1、镜像(image)

镜像就是一个只读的模板

  1. 镜像的搜索、拉取、查看、删除
    docker search ubuntu	  # 在Ducker Hub上搜索与ubuntu关键词匹配的镜像
    docker pull ubuntu:20.04  # 拉取一个镜像,镜像名称ubuntu,版本20.04,不写版本默认为最新版
    docker images			  # 列出本地所有镜像
    docker rmi ubuntu:20.04	  # 删除镜像ubuntu:20.04 
    
  2. 移植镜像
    docker save -o ubuntu_20_04.tar ubuntu:20.04  #将镜像ubuntu:20.04导出到本地文件ubuntu_20_04.tar中
    docker load -i ubuntu_20_04.tar	#将镜像ubuntu:20.04从本地文件ubuntu_20_04.tar中加载出来
    

    移植到其他服务器记得给tar包加上可读权限

  3. 从一个Docker 容器创建一个新的镜像
    docker commit CONTAINER IMAGE_NAME:TAG 
    

    CONTAINER:容器的ID或名称。
    IMAGE_NAME:TAG:指定新镜像的名称和标签。如果不指定,Docker 会自动生成一个。

2、容器(container)

容器是代码的隔离环境,可以理解为一台独立的服务器

  1. 容器的创建、启动、查看、删除
    docker create -it ubuntu:20.04 	# 利用镜像ubuntu:20.04创建一个容器。
    docker ps -a 					# 查看本地的所有容器,不加-a是查看正在运行的容器
    docker start CONTAINER  		# 启动容器
    docker stop CONTAINER			# 停止容器
    docker restart CONTAINER		# 重启容器
    docker run -itd ubuntu:20.04	# 利用镜像ubuntu:20.04创建并启动一个容器
    docker rm CONTAINER				# 删除容器
    docker container prune			# 删除所有已停止的容器
    

    CONTAINER:容器的ID或名称。

  2. 在容器中执行命令,本地和容器间复制文件
    docker attach CONTAINER 		# 进入容器。先按Ctrl p,再按Ctrl q可以挂起容器
    docker exec CONTAINER COMMAND	# 在容器中执行命令
    docker cp xxx CONTAINER:xxx 	# 将本地xxx文件复制到容器的xxx目录
    docker cp CONTAINER:xxx xxx		# 将本地容器的xxx文件复制到本地xxx目录
    

    CONTAINER:容器的ID或名称。

    COMMAND:要执行的命令例如:ls

  3. 容器的导出与导入
    docker export -o xxx.tar CONTAINER		# 将容器CONTAINER导出到本地文件xxx.tar中
    docker import xxx.tar image_name:tag	# 将本地文件xxx.tar导入成镜像,并将镜像命名为image_name:tag
    

    docker export/importdocker save/load的区别:

    • export/import会丢弃历史记录和元数据信息,仅保存容器当时的快照状态
    • save/load会保存完整记录,体积更大
  4. 查看容器使用情况
    docker top CONTAINER	# 查看某个容器内的所有进程
    docker stats			# 查看所有容器的统计信息,包括CPU、内存、存储、网络等信息
    
  5. 修改容器
    docker rename CONTAINER1 CONTAINER2		# 重命名容器
    docker update CONTAINER --memory 500MB	# 修改容器限制
    

三、Docker实战之下载mysql、redis、zimg

且听下回分析(0^_^0)

你可能感兴趣的:(docker,linux)