当前位置: 首页 > web >正文

Mac中Docker下载与安装

目录

  • Docker
    • 下载
    • 安装
    • 配置
  • 版本查询以及问题处理
  • 配置国内镜像
  • 在Docker中安装软件
    • Nginx

Docker

下载

官网:https://www.docker.com/get-started/
在这里插入图片描述
或者
在这里插入图片描述

安装

在这里插入图片描述

配置

  • 这里我们选择 Accept
    在这里插入图片描述
  • 选择默认配置就行,Docker 会自动设置一些大多数开发人员必要的配置。
    在这里插入图片描述
  • 这里可以直接选择跳过
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 出现以上的图标即可
  • 到这里并没有正真的完成

版本查询以及问题处理

在这里插入图片描述
如果不显示版本号,显示如下

docker --version
zsh:command not found:docker

那就要查看一下自己的配置文件中有没有配置docker
如果没有那就依次执行以下代码(先看看自己的配置文件是zshrc还是bash_profile)

echo 'export PATH=/Applications/Docker.app/Contents/Resources/bin:$PATH' >> ~/.zshrc
source ~/.zshrc

通过 docker info 命令 可以查看 Docker Client 端和 Server 端信息。
Client端显示包括 Docker 版本,当前的上下文,调试模式等。
Server 部分显示了 Docker 守护进程的信息,包括当前运行的容器数量、镜像数量等

Last login: Wed May  7 20:03:52 on ttys000
sunhaixin@bogon ~ % docker info
Client:Version:    28.0.4Context:    desktop-linuxDebug Mode: false......在此省略一些
Server:Containers: 0Running: 0Paused: 0Stopped: 0Images: 0Server Version: 28.0.4......在此省略一些

配置国内镜像

Error response from daemon: Get “https://registry-1.docker.io/v2/”: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

因为没有配置国内镜像所以很容易导致链接失败

进入该目录
然后找到daemon.json
在这里插入图片描述
在这里插入图片描述
将以下代码放在这个位置

"registry-mirrors": ["https://docker.211678.top","https://docker.1panel.live","https://hub.rat.dev","https://docker.m.daocloud.io","https://do.nark.eu.org","https://dockerpull.com","https://dockerproxy.cn","https://docker.awsl9527.cn"]

添加完后重启docker软件即可

在Docker中安装软件

Nginx

  • 方式一:
    在这里插入图片描述
  • 方式二:使用命令行
    sudo docker pull nginx
    
  • 命名、指定端口并运行nginx
    sudo docker run --name mynginx -p 8080:80 -d nginx
    

    –name mynginx 指定当前容器名称为 mynginx
    -p 8080:80 将容器的 80 端口映射到主机的 8080 端口
    -v ~/project/www:/usr/share/nginx/html 将主机的 ~/project/www 目录挂载到容器的 /www
    -v ~/project/nginx/conf.d:/etc/nginx/conf.d 将主机的 ~/project/nginx/conf.d 目录挂载到容器的 /etc/nginx/conf.d
    –link myphp:php 将 myphp 容器的网络并入 nginx 容器,实现容器间的通信

如果想将docker内的文件与docker外的文件相关关联

那么你可以在本地文件夹中创建对应文件

mkdir -p ~/project/nginx/www ~/project/nginx/logs ~/project/nginx/conf

www是项目路经
logs是nginx错误日志
conf 是nginx配置文件

在这里插入图片描述

可以看见nginx正常运行

接下来复制docker容器终端配置文件到宿主中

输入(ce1e83caf65f这个在上图查看安装中可见到)

docker cp ce1e83caf65f:/etc/nginx/nginx.conf ~/project/nginx/conf

可以查看一下原配置信息
在这里插入图片描述

接下来再运行一个新的(删除原来创建的nginx),前面是测试(开一个新的需要修改端口号和名字),输入如下:

docker run -d -p 8082:80 --name mynginx2 -v ~/project/nginx/www:/usr/share/nginx/html -v ~/project/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v ~/project/nginx/logs:/var/log/nginx nginx

进入www创建

cd ~/project/nginx/www
vim index.html
#写一个hello world
<DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>my test docker</title>
</head>
<body>
<h1>hello world</h1>
</body>
</html>

在网页上输入http://localhost:8082/index.html,就能看到hello Wrold
在这里插入图片描述

http://www.xdnf.cn/news/4426.html

相关文章:

  • [学习]RTKLib详解:ppp.c与ppp_ar.c
  • 如何保证Kafka生产者的消息顺序性? (单分区内有序,需确保同一Key的消息发送到同一分区)
  • 网站网页经常 400 错误,清缓存后就好了的原因剖析
  • 【JMeter技巧】GET请求如何传递Body参数?版本兼容性详解场景需求
  • 风车 AI 翻译如何免费解决跨境电商图片翻译难题
  • 机器学习——逻辑回归ROC练习
  • Milvus 向量数据库详解与实践指南
  • OSCP - Proving Grounds - Sumo
  • powershell批处理——io校验
  • 力扣刷题Day 37:LRU 缓存(146)
  • 7系列 之 ISERDESE2
  • 准确---Typora配置Gitee图床并实现自动图片上传
  • 【上位机——MFC】序列化机制
  • 使用 pgrep 杀掉所有指定进程
  • 【Linux系列】如何区分 SSD 和机械硬盘
  • idea连接mongodb配置schemas
  • 【基础篇】prometheus热更新解读
  • 基于开源链动2+1模式AI智能名片S2B2C商城小程序的分销价格管控机制研究
  • TCGA数据库临床亚型可用!贝叶斯聚类+特征网络分析,这篇 NC 提供的方法可以快速用起来了!
  • 4G与5G网络频率:技术演进与应用场景解析
  • 认识中间件-以及两个简单的示例
  • WebRTC通信原理与流程
  • 矩阵系统源码搭建 UI 设计开发指南,支持OEM
  • C#对SQLServer增删改查
  • 支持向量机
  • 2025数字中国创新大赛-数字安全赛道数据安全产业积分争夺赛决赛Writeup
  • JumpServer批量添加资产
  • linux环境openssh升级到openssh-10.0p1
  • RabbitMQ如何保证消息不丢失?
  • 【Leetcode 每日一题 - 扩展】3342. 到达最后一个房间的最少时间 II