Docker
安装
centos7安装docker
1、安装yum工具
yum install -y yum-utils \ device-mapper-persistent-data \ lvm2 --skip-broken
2、更新本地镜像源
yum-config-manager \ --add-repo \ https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo yum makecache fast
3、安装docker
yum install -y docker-ce
4、关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
不同的操作系统安装方式不一样
基本操作
启动
systemctl start docker
设置开机启动【重启操作系统后生效】
systemctl enable docker
停止
systemctl stop docker
重启
systemctl restart docker
配置镜像加速
mkdir -p /etc/docker vim /etc/docker/daemon.json { "registry-mirrors": ["https://p11xf841.mirror.aliyuncs.com"] } 把上面的内容复制到 daemon.json sudo systemctl daemon-reload sudo systemctl restart docker
镜像
文件系统
Docker将应用程序及其所需的依赖、函数库、环境、配置等文件打包在一起
由两部分组成
-
镜像名称
-
镜像版本
-
未指定版本,默认为 latest
-
-
如
-
镜像名称:版本号
-
mysql:5.7.25
-
镜像相关命令
查看本地镜像
docker images
搜索镜像
docker search 镜像名称
拉取镜像
docker pull 镜像名称:版本号
案例一
拉取nginx镜像:docker pull nginx
导出镜像
docker save -o [保存的目标文件名称] [镜像名称]
docker save -o nginx.tar nginx:latest
删除镜像
前提:该镜像没有对应的容器
docker rmi 镜像ID或者镜像名称
docker rmi nginx:latest
导入镜像
docker load -i nginx.tar
导入后如果查看不到镜像名称,可以使用 docker tag 为镜像指定名称
docker tag 镜像ID 镜像名称:tag
docker tag 605c77e624dd nginx:latest
容器
相关命令
参数
运行容器
docker run -d -p 80:80 --name nginx80 -v /opt/nginx/html:/usr/share/nginx/html -v /opt/nginx/nginx.conf:/etc/nginx/nginx.conf --rm 镜像名称或镜像id
参数说明 -d:后台运行 -p:端口映射 --name:指定容器名称 -v:数据卷映射 --rm:停止容器后删除容器 --restart:重启容器方式 --rm 跟 --restart 不能同时使用
基本命令(重要)
docker run -d -p 宿主机端口:容器端口 --name 容器名称 镜像ID或者镜像名称 docker run -d -p 80:80 --name nginx nginx:latest
查看容器
查看正在运行的容器
docker ps
查看全部容器
docker ps -a
查看全部容器ID
docker ps -aq
停止容器
docker stop 容器名称或ID
停止所有的容器
docker stop $(docker ps -aq)
启动退出的容器
docker start 容器名称或ID
重启容器
docker restart 容器名称或ID
删除容器
docker rm 容器名称或ID
容器必须是停止状态,才能删除
进入容器(重要)
docker exec -it 容器ID或容器名称 bash
命令解读 docker exec :进入容器内部,执行一个命令 -it : 给当前进入的容器创建一个标准输入、输出终端,允许我们与容器交互 bash:进入容器后执行的命令,bash是一个linux终端交互命令
退出容器
exit
查看容器日志(重要)
docker logs 容器ID
数据卷
1、概述
可以让宿主机的目录和容器中的目录形成映射关系,实现共享数据 数据卷的本质就是一个目录
2、创建数据卷
docker volume create 数据卷名称
3、查看数据卷信息
docker volume inspect 数据卷名称
4、查看全部数据卷
docker volume ls
5、删除数据卷
只能删除没有被容器引用的数据卷 删除全部
docker volume prune
删除指定数据卷
docker volume rm 数据卷名称
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?