复现漏洞时,经常要复现环境,VMware还原太过麻烦,所以学习docker的基本操作也是必要的

Docker三要素-镜像、容器、仓库

操作系统:Centos7

官方教程文档

1.Docker的安装与卸载

先删除以前的docker

 sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine

安装gcc相关

yum -y install gcc
yum -y install gcc-c++

设置存储库

sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo

如果报错,就换国内镜像源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

更新yum软件包索引

yum makecache fast

安装Docker引擎

sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin

运行Docker

sudo systemctl start docker

运行hello-world镜像

sudo docker run hello-world

卸载docker

systemctl stop docker
sudo yum remove docker-ce docker-ce-cli containerd.io docker-compose-plugin
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd

2.配置镜像源

打开阿里云官方->容器镜像服务->镜像工具->镜像加速器

mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["自己的加速地址"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

3.Docker常用命令

3.1 帮助启动类命令

systemctl start docker    # 启动docker
systemctl stop docker # 停止docker
systemctl restart docker # 重启docker
systemctl status docker # 查看docker状态
systemctl enable docker # 开机启动
docker info # 查看docker概要信息
docker --help # 查看docker总体帮助文档
docker [command] --help # 查看docker命令帮助文档

3.2 镜像命令

docker images [options]           # 查看镜像
-a # 列出全部镜像
-q # 只列出镜像ID
docker search [options] [镜像名] # 搜索镜像
--limit N # 只列出前N个
docker pull [镜像名]:[TAG] # 下载镜像(无TAG默认latest)
docker system df # 查看镜像占用空间
docker rmi [镜像名或ID] # 删除镜像
docker rmi $(docker images -qa) # 删除所有镜像
-f # 强制删除

3.3 容器命令

docker run [options] image [command] [arg...]
--name="指定名字"
-d # 后台运行
-i # 交互模式运行
-t # 为容器重新分配一个伪输入终端,通常it一起使用
-P # 随机端口映射
-p # 指定端口映射

例:启动Ubuntu docker run -it ubuntu bash

docker ps  # 列出所有正在运行的容器实例
-a # 列出所有运行过的容器
-l # 显示最近创建的容器
-n m # 显示最近m个创建的容器
-q # 静默模式,只显示容器编号

run进入容器后停止

exit  # 退出并停止
ctrl+p+q # 退出不停止
docker start [容器名字或ID]   # 启动容器
docker restart [容器名字或ID] # 重启容器
docker stop [容器名字或ID] # 停止容器
docker kill [容器名字或ID] # 强制停止容器
docker rm [容器名字或ID] # 删除容器
-f #强制删除
docker logs [容器ID]     # 查看容器日志
docker inspect [容器ID] # 查看docker内部细节

重新进入退出的容器

docker exec -it [容器ID] bash  # exit退出后不会停止容器(推荐)
docker attach [容器ID] bash # exit退出后会导致容器停止

拷贝容器内的文件到本机

docker ps [容器ID]:[容器路径] [本机路径]

导出容器

docker export [容器ID]>[文件名].tar

导入容器

cat [文件名].tar | docker import - [镜像用户/镜像名称:镜像版本号]

来源:尚硅谷2022版Docker实战教程

Docker安装与教程-Centos7(一)的更多相关文章

  1. Vmware虚拟机中CentOS7与Docker安装图文教程

    1.安装VMware 下载一个软件安装: 2.新建一个虚拟机 等待自动安装完成 配置系统语言: 配置系统时间: 配置系统键盘: 语言支持: 默认自动使用安装源: 配置软件环境,需要及时添加的软件,这里 ...

  2. Centos7中用Docker安装MySQL教程

    第一步 安装Docker 1.1 参考这位博主给出的命令安装好 https://blog.csdn.net/weixin_43423864/article/details/109481260 第二步 ...

  3. Docker安装配置教程

    Docker公开课 1 Docker介绍 1.1 Docker是什么 云计算\云服务 IAAS(基础设施即服务).PAAS(平台即服务).SAAS(软件即服务) Docker到底是什么呢? Docke ...

  4. docker安装详细步骤-centos7

    https://www.runoob.com/docker/centos-docker-install.html 一.安装docker 1.Docker 要求 CentOS 系统的内核版本高于 3.1 ...

  5. mac系统Docker安装Redis教程

    在之前介绍过mac系统安装docker,以及docker安装mysql的傻瓜式教程,如果有需要参考的朋友,可以看下面文章: MacOS安装Docker傻瓜式教程 mac系统下docker安装配置mys ...

  6. Docker安装系列教程

    首先准备一台Centos7版本的虚拟机,它支持docker容器技术.本案例使用centos7虚拟机安装docker容器. 一.安装 1.启动虚拟机,配置虚拟机能够访问互联网 2. 安装支持软件包,提供 ...

  7. docker安装使用教程(Kali2.0)

    一.apt安装 apt直接安装是最好的,因为apt源中的其他docker相关组件,也是与docker匹配的版本. apt-get install docker docker-compose 二.手动安 ...

  8. docker安装制定版本-centos7

    # 安装依赖包 yum install -y yum-utils device-mapper-persistent-data lvm2 # 添加Docker软件包源 yum-config-manage ...

  9. CentOS7 下Docker最新入门教程 超级详细 (安装以及简单的使用)

    转载https://blog.csdn.net/wzsy_ll/article/details/82866627 1.为什么使用Docker(本人) 最近总是频繁的在新服务器发布项目, 每次发布都需要 ...

  10. centos7 docker 安装配置

    docker快速入门测试 ########################################## #docker安装配置 #环境centos7 #配置docker阿里源 echo '#D ...

随机推荐

  1. 好用工具: windows terminal

    直接在微软商店搜索该软件即可,本文介绍无法使用微软商店的情况. 解题思路 当我们无法下载某个软件时,可直接去Github中寻找该项目,知道该软件资源并下载. 下载地址 https://github.c ...

  2. PyQt5实时刷新

    对于执行很耗时的程序来说,由于PyQt需要等待程序执行完毕才能进行下一步,这个过程表现在界面上就是卡顿,而如果需要执行这个耗时程序时不断的刷新界面.那么就可以使用QApplication.proces ...

  3. Gin+Xterm.js实现远程Kubernetes Pod(一)

    Xterm.js简介 xterm.js (https://xtermjs.org/)是一个开源的 JavaScript 库,它模拟了一个终端接口,可以在网页中嵌入一个完全功能的终端.这个库非常灵活,并 ...

  4. markdown之mermaid

    官方文档 01 简单的流程图 TD或TB:top to bottom,从上到下的流程图 LR:从左到右 其它:RL,BT flowchart LR; A([节点A的圆矩框]) --> |AB之间 ...

  5. 三维模型OSGB格式轻量化纹理压缩关键技术分析

    三维模型OSGB格式轻量化纹理压缩关键技术分析 在三维模型应用中,纹理是一个十分重要的因素,可以使得模型更加真实.精细.随着移动设备和网络传输速度的限制,纹理数据也需要进行轻量化处理,而OSGB格式纹 ...

  6. jmeter 二次开发详解

    背景: JMeter 是一个功能强大的性能测试工具,但它可能无法满足特定项目或组织的特定需求.通过进行二次开发,可以定制 JMeter,使其适应具体项目的需求.例如,可能需要添加自定义的 测试元件.报 ...

  7. Frida环境配置

    目录 安装Linux客户端 配置Android服务端 测试运行效果 官方手册 安装Linux客户端 github地址:https://github.com/frida/frida pip instal ...

  8. 每日一题:vue3自定义指令大全(呕心沥血所作,附可运行项目源码)

    1.VUE常用指令大全 本项目所有指令均为全局注册,使用时直接在组件中使用即可. 指令目录:src/directives 页面目录:src/views 具体可查看源码 1.1 权限指令 封装一个权限指 ...

  9. 利用python将数据写入CSV文件中

    利用python将数据写入CSV文件中 全部代码如下: import csv # 1.创建文件对象 f = open('cav_file.csv', 'w', encoding='utf-8', ne ...

  10. Java自学网站--十几个网站的分析与评测

    ​简介 很多想学Java的人不知道怎样选教程,本文对Java自学网站进行评测. 本文不带主观倾向,只客观分析各个网站的区别. 第1类:大型培训机构(黑马等) 典型机构 黑马.尚硅谷.动力节点.白马.千 ...