ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

Docker详解

2026/8/15 16:28:18 拓冰建站 浏览量
Docker详解

Docker详解

      • 一,安装
        • windows安装
          • 1,下载
          • 2,打开任务管理器查看CPU虚拟化是否已经启用
          • 3,在控制面板打开程序,然后点击启动或关闭windows功能,勾选Hyper-v,然后重启
          • 4,安装
        • linux安装
          • 1,一键安装
          • 2,手动安装
          • 3,Docker启动
      • 二,配置
      • 三,使用
        • 常用命令:
        • docker网络network

一,安装

windows安装
1,下载

Docker Desktop下载链接
linux内核wsl 下载链接

2,打开任务管理器查看CPU虚拟化是否已经启用
3,在控制面板打开程序,然后点击启动或关闭windows功能,勾选Hyper-v,然后重启

如果进来没找到Hyper-v
桌面建一个Hyper-V.bat文件

pushd "%~dp0"
dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt
for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
del hyper-v.txt
Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL
4,安装

把docker安装到其他盘:
docker默认安装路径在C盘,并且无法修改,需要创建软连接修改

mklink /j "C:\Program Files\Docker" "D:\Docker"

双击运行Docker Desktop

docker修改镜像存放路径

  1. 打开 Docker 设置。
  2. 选择存储选项卡。
  3. 在「镜像和容器存储路径」下更改路径。
  4. 应用更改并重启 Docker 应用程序。
linux安装
1,一键安装

官方一键安装

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

国内 daocloud一键安装:

curl -sSL https://get.daocloud.io/docker | sh
2,手动安装

下载Docker相关依赖环境

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

设置Docker的镜像源

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

阿里云镜像源:

http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

清华大学镜像源:

https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo

Docker安装

提升安装软件速度

yum makecache fast

安装docker(docker-ce为社区免费版本)

sudo yum install -y docker-ce docker-ce-cli containerd.io
yum install -y docker-ce
3,Docker启动
sudo systemctl start docker

测速是否安装成功

# 拉取测试镜像
sudo docker pull hello-world
# 启动测试镜像
sudo docker run hello-world

二,配置

设置国内镜像地址:
Settings-Docker Engine中的末尾添加

"registry-mirrors": ["http://hub-mirror.c.163.com","https://mirror.baidubce.com"]

三,使用

常用命令:
查看docker安装
docker ps  或者  ps -ef | grep docker查看docker服务:
systemctl status docke设置开启docker服务:
systemctl enable docker启动docker服务:
systemctl start docker重启docker服务
systemctl restart docker查看mysql镜像
docker search nginxpull镜像
docker pull nginx查看当前已有的镜像
docker images删除镜像
docker rmi nginx查看正在运行的所有容器
docker ps 查看所有容器(包括未启动的)
docker ps -a 启动容器
docker run -p 80:80 --name nginx_test -v D:\zsh\nginx\conf.d\default.conf:/etc/nginx/conf.d/default.conf -v D:\zsh\nginx\html\:/usr/share/nginx/html/ -v D:\zsh\nginx\nginx.conf:/etc/nginx/nginx.conf -d nginx进入容器:
docker exec -it nginx_test bash停止容器  
docker stop 容器ID/容器名重启容器:  
docker restart 容器ID/容器名启动停止的容器:  
docker start 容器ID/容器名删除一个容器  
docker rm -f 容器名/容器ID  删除多个容器 空格隔开要删除的容器名或容器ID  
docker rm -f 容器名/容器ID 容器名/容器ID 容器名/容器ID  删除全部容器(谨慎操作)
docker rm -f $(docker ps -aq)查看容器日志  
docker logs -f -t --tail=100 容器名/容器ID查看所有网络  
docker network ls查看指定网络的详细信息  
docker nekwork inspect 网络名字NAME发生容器启动不了之类的错误
查看最近30分钟的容器日志
docker logs --since 30m 容器i查看容器完整信息:  
docker ps -a --no-trunc更换容器名
docker rename 容器ID/容器名 新容器名获取容器/镜像的元数据(可用于查看容器的挂在目录等操作)
docker inspect 容器id模版指令{{ }} 语法用于处理模版指令,大括号外的任何字符都将直接输出。
查看指定容器的ip地址“.” 表示“当前上下文”,大多数情况下表示了容器元数据的整个数据结构
docker inspect -f {{.Config.Hostname}} 容器名或容器id根据容器名查看容器id  
docker inspect -f {{.Config.Hostname}} 容器名提交一个镜像  
docker commit -m="提交信息" -a="作者信息" 容器名/容器ID 提交后的镜像名:Tag查看docker-compose.yml所在位置  
locate docker-compose.yml
docker网络network
Docker方式下容器网络:两种方式:networks(常用)links
查看所有网络docker network ls
查看具体网络docker network inspect 网络name命令 将一个已经启动的容器添加到已有的网咯中docker network connect 网咯名字NAME 容器名字NAME
切断容器连接的网络docker network disconnect -f 容器名字
删除网络,前提是网络里没有活动的容器,有就要先切断容器连接网络docker network rm 网络名字NAME
创建自定义网络docker network create --driver bridge --subnet 192.168.1.0/16 --gateway 192.168.1.0 mynet
查看是否在同一个网络下:列出所有网络
docker network ls查看指定网络
docker network inspect 网络name进入一个容器,
docker exec -it 容器id /bin/bash
ping 另外一个容器的名字,是否ping的通,Ctrl + c 结束ping操作