Docker安装与教程-Centos7(一)
复现漏洞时,经常要复现环境,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 - [镜像用户/镜像名称:镜像版本号]