当前位置: 首页> 房产> 政策 > docker使用

docker使用

时间:2025/7/13 1:42:22来源:https://blog.csdn.net/BlackPudding_/article/details/141602228 浏览次数:0次

目录

1. 安装

2. 查询镜像,拉取镜像

1. 查询镜像

        1. 通过图形化界面docker desktop

        2. 通过命令行查找

2. 下载镜像

3. 使用docker运行镜像

1. 图形化界面

2. 命令行

4. 注意点

1. 端口映射

2. 挂载文件

3. 容器间桥接网络


1. 安装

        windows安装docker比较简单,但是需要注意如果之前安装了虚拟机,安装后可能会有冲突无法使用。这里我解决得很迷幻,而且每个人的情况不一样,就各自安好吧~

        另外,还需要注意检查下面的设置。

        搜索应用“启用或关闭windows功能”,检查Hyper-V,适用于Linux的windows子系统,虚拟机平台是否启用。

        找到本地组策略编辑器,检查是否打开基于虚拟化的安全。检查步骤如下图。

2. 查询镜像,拉取镜像

        查询镜像流程:

        1. 查看是否有官方的镜像,有的话优先官方镜像

        2. 没有官方镜像优先推荐值高的镜像

        3. 确认镜像是否符合需求

1. 查询镜像

        1. 通过图形化界面docker desktop

        但我安装的图形化界面没法查找到镜像,是因为docker desktop没有链接到网络。

        解决办法:配置Proxies

        tips:三个都要配置,之前只配置了一个,坑了好久。

        配置好后可以查找镜像了。

        2. 通过命令行查找

docker search 要查找的镜像

        这里以查询mysql为例。

2. 下载镜像

        1. 在图形化界面拉取镜像

        以上图片来自网络。

        2. 使用命令行

docker pull 镜像名

        3. 下载速度慢解决方案

        方法一:配置镜像源

{"builder": {"gc": {"defaultKeepStorage": "20GB","enabled": true}},"experimental": false,"registry-mirrors": ["https://bytkgxyr.mirror.aliyuncs.com","https://hub-mirror.c.163.com/","https://reg-mirror.qiniu.com/","https://docker.mirrors.ustc.edu.cn/","https://registry.docker-cn.com","https://docker.888666222.xyz/"]
}

        方法二:修改DNS

        公共 DNS 服务器 IP 地址(表格来源)

114 DNS114.114.114.114114.114.115.115
阿里 AliDNS223.5.5.5223.6.6.6
百度 BaiduDNS180.76.76.76
DNSPod DNS+119.29.29.29182.254.116.116
CNNIC SDNS1.2.4.8210.2.4.8
oneDNS112.124.47.27114.215.126.16
DNS 派 电信/移动/铁通101.226.4.6218.30.118.6
DNS 派 联通123.125.81.6140.207.198.6
Google DNS8.8.8.88.8.4.4
OpenDNS208.67.222.222208.67.220.220
V2EX DNS199.91.73.222178.79.131.110

        镜像下载速度慢解决方案参考链接:

Docker拉取镜像过慢或卡死的坑!!!(亲测有效)_docker pull registry拉取不动-CSDN博客

3. 使用docker运行镜像

1. 图形化界面

        运行成功的界面如下。

2. 命令行

# 查看已下载的容器
docker images# 运行交互式容器
docker run -it <image_name>
# 运行后台容器
docker run -d <image_name>
# 指定端口映射
docker run -p <host_port>:<container_port> <image_name>
# 设置环境变量
docker run -e <env_var>=<value> <image_name># 查看正在运行的容器
docker ps# 停止容器
docker stop <container_id>

        示例。

        成功运行容器。

        成功停止运行容器。

4. 注意点

1. 端口映射

        判断容器是否做端口映射:如果容器内运行的服务(如 Web 服务器、数据库等)需要被外部访问,那么就需要进行端口映射。例如,我希望通过主机访问docker中的某个容器时,需要端口映射。

        对于容器对外暴露的端口可以查看dockerfile得到。(dockerfile文件实际上是一个指令文件,里面包含了容器构建起来的所有指令,通过这些指令docker可以自动化地创建和配置镜像。)

        在docker desktop中也可以看到这些指令。

        我们可以在运行时通过以下指令配置端口映射。

docker run -p <host_port>:<container_port> <image_name>

2. 挂载文件

        挂载对外服务产生的文件,挂载的文件一般有配置文件,用户上传文件等。通过挂载可以

防止因为容器崩溃导致数据丢失,同时还可以挂载到不同的容器中共享数据。

        可以通过图形化界面,在启动容器时配置挂载信息。

       

        或者通过-v--mount选项配置挂载。

docker run -d -v 本机目录:容器挂载点 镜像名
docker run -d --mount type=bind,source=本机目录,target=容器挂载点 镜像名

        查看挂载信息。

docker inspect 镜像名

        示例。

3. 容器间桥接网络

        容器间互相访问,建立桥接网络。在容器间搭建网桥类似于组建了一个小型的局域网,进入这个桥接网络的容器可以通过IP地址或容器名称相互通信,就像在同一个局域网中的设备一样。如果,容器有对外暴露端口,那么容器间就可以通过IP和端口号获取容器中的数据和服务。

        

        搭建网桥步骤:

        1. 创建桥接网络

docker network create my_bridge_network

        2. 将运行的容器添加到网络中

docker network connect my_bridge_network my_existing_container

        3. 查看网络信息,获取容器IP

docker network inspect <network_name>

        4. 测试容器互联

        需要在容器中安装ping,但是由于每个容器的环境不同,所以需要根据容器查找对应的安装方法。

        这里测试成功了。

 

参考文章:

1.
WSL2 请启用虚拟机平台 Windows 功能并确保在 BIOS 中启用虚拟化_当前计算机配置不支持 wsl2。 请启用“虚拟机平台”可选组件,并确保在 bios 中启-CSDN博客

2. Docker拉取镜像过慢或卡死的坑!!!(亲测有效)_docker pull registry拉取不动-CSDN博客

3. win10 手动设置 DNS 地址_自动分配口ip手动指定dns-CSDN博客

关键字:docker使用

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: