001-使用docker desktop for mac 

docker mac 指定主机名 docker mac地址_容器

 

一、安装

1 下载docker的安装文件,可以用命令安装,也可以直接下载安装
macOS 我们可以使用 Homebrew 来安装 Docker。
Homebrew 的 Cask 已经支持 Docker for Mac,因此可以很方便的使用 Homebrew Cask 来进行安装:
$ brew cask install docker

手动下载地址为https://download.docker.com/mac/stable/Docker.dmg

下载好后安装起来。。

2 查看安装的版本
docker --version
Docker version 17.09.1-ce, build 19e2cf6

3 镜像加速
国内网络问题,后续拉取 Docker 镜像十分缓慢,可以需要配置加速器来解决 使用的是网易的镜像地址: http://hub-mirror.c.163.com。
在任务栏点击 Docker for mac 应用图标 -> Perferences… -> Daemon -> Registry mirrors。在列表中填写加速器地址即可。修改完成之后,点击 Apply & Restart 按钮,Docker 就会重启并应用配置的镜像地址了。

4我们可以通过 docker info 来查看是否配置成功。
$ docker info

Registry Mirrors: Live Restore Enabled: false

5 加速配置查看
localhost:~ chenhuia$ docker info
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 18.09.2
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 9754871865f7fe2f4e74d43e2fc7ccd237edcbce
runc version: 09c8266bf2fcf9519a651b04ae54c967b9ab86ec
init version: fec3683
Security Options:
seccomp
Profile: default
Kernel Version: 4.9.125-linuxkit
Operating System: Docker for Mac
OSType: linux
Architecture: x86_64
CPUs: 6
Total Memory: 1.952GiB
Name: linuxkit-025000000001
ID: 6CRM:S36D:YUVK:SVGN:FWRK:FA77:VEHJ:KPYN:WLBV:V73F:HV7S:OJKS
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): true
File Descriptors: 24
Goroutines: 50
System Time: 2019-07-30T04:27:16.869429797Z
EventsListeners: 2
HTTP Proxy: gateway.docker.internal:3128
HTTPS Proxy: gateway.docker.internal:3129
Registry:  https://index.docker.io/v1/
Labels:
Experimental: true
Insecure Registries:
127.0.0.0/8
Registry Mirrors:
 http://hub-mirror.c.163.com/ Live Restore Enabled: false
Product License: Community Engine
localhost:~ chenhuia$ docker pull redis
Using default tag: latest
latest: Pulling from library/redis
f5d23c7fed46: Pull complete
a4a5c04dafc1: Pull complete
605bafc84bc9: Pull complete
f07a4e35cd96: Pull complete
17944e5e3eb7: Pull complete
6f875a8605e0: Pull complete
Digest: sha256:8888f6cd2509062a377e903e17777b4a6d59c92769f6807f034fa345da9eebcf
Status: Downloaded newer image for redis:latest

{
  "builder": {
    "gc": {
      "enabled": true,
      "defaultKeepStorage": "20GB"
    }
  },
  "experimental": false,
  "features": {
    "buildkit": true
  },
  "registry-mirrors":[
    "http://hub-mirror.c.163.com"
  ]
}

6 查看images

localhost:~ chenhuia$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
redis latest 598a6f110d01 2 weeks ago 118MB

7 启动redis
localhost:~ chenhuia$ docker run -d -p 6379:6379 --name myredis redis
65d42dadd8f83e4036627d39bdda96ffe73862862571e287296057d1a0c236d9
localhost:~ chenhuia$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
65d42dadd8f8 redis “docker-entrypoint.s…” 3 seconds ago Up 3 seconds 0.0.0.0:6379->6379/tcp myredis

8 连接redis
redis desktop manager 输入ip 端口直接连接

9补充 redis常用命令

命令 用途
set key value 设置 key 的值
get key 获取 key 的值
exists key 查看此 key 是否存在
keys * 查看所有的 key
flushall
 

二、介绍docker desktop

Docker Desktop for Mac是一款适用于MacOS的应用程序,用于构建和共享容器化应用程序和微服务,该软件不依赖于任何语言、框架或包装系统,消除了为构建现代应用程序设置复杂环境的麻烦,软件支持Azure 容器实例和 Amazon Elastic Container Service,它易于使用,可以帮助您快速安全地评估软件,提高了生产力。需要的朋友不要错过。

三、废话

Docker Desktop for Mac最新的4.6版本,加入了许多更新,而其中最值得注意的是,其采用新的文件共享技术Virtiofs,而该实例能够明显提高macOS用户的文件共享性能,另外,新版本还改进了macOS主机和Docker虚拟机间文件同步的方式,而官方提到,这些改进使得文件操作时间大幅减少达98%。

在使用Symfony或React等技术时,常见开发人员的工作流程,主要编辑位于macOS主机上的程序代码,同时在Docker容器执行应用程序,通过使用Docker存储磁盘(Volume),在主机和容器之间共享程序代码,官方提到,这样的流程让开发人员保存编辑后的源码,就可以立即在浏览器看到结果。也就是说,主机系统上的文件更改,必需要能可靠地传播到容器文件系统,才能提供开发人员更好生产力和用户体验。

主机和容器间共享应用程序源码的性能非常重要,因为像是当开发人员使用Symfony PHP框架,在编辑源码后,要在浏览器重新加载页面,容器中的网页服务器必须重新读取存储在主机上的大量PHP文件,官方表示,现在的相依项目管理系统,动辄会在项目带入数万到数十万的文件,而这将使得主机和容器同步性能不佳。

近期开发团队在Docker Desktop for Mac的更新,包括使用Virtiofs文件共享技术,能有效缓解这个问题,并对文件系统带来巨大的性能改进。根据早期预览版的实际试验资料,284 MB的MySQL导入时间,从3分16秒缩短到了18秒,而大型程序代码库执行composer install的时间,从1分钟27秒缩短87%,仅剩11秒,还有启动单体Typescript应用程序的时间缩短80%,从1分30秒缩短至18秒。

要激活文件系统加速功能,用户需要在Apple Silicon使用macOS 12.2以上版本,或是英特尔macOS 12.3以上版本,并且使用Docker Desktop 4.6,在设置中的实验性功能,激活新的虚拟化框架以及VirtioFS加速目录共享,重新启动应用程序即可。