目录
- 1. 使用 Docker 的好处
- 2. 安装 Docker
- 1) Linux 安装 Docker
- 2) Windows 10
- 3) macOS
- 3. Docker 换源
- 1) Linux 换源
- 2) Windows 和 Mac 换源
- 4. 编写 Dockerfile
- 5. 编写 docker-compose.yml
- 6. 启动容器
- 7. 总结
这些异常情况,大多数时候是因为系统不同而导致的依赖差异 。因此,为了解决这个问题,就产生基于 Docker 构建统一开发环境的需求 。
有关 docker 的基本知识,可以参照 docker教程 。
1. 使用 Docker 的好处部署方便
我们平常搭建环境常常需要耗费很长时间 。对于团队协作时来说,每有新人进来,都需要浪费这些可以避免的时间 。而且搭建环境时,也常常会产生的各种问题,导致项目代码运行异常 。如果使用了 Docker 的话,只需最开始的人写好开发容器,其他人只需要 pull 下来,即可完成项目环境的搭建,能有效避免无意义的时间浪费 。
隔离性
我们时常会在一台电脑部署多个项目环境,若是直接安装的话,彼此间有可能会造成干扰,比如一个项目需要 Node.js 14,有的又需要 Node.js 12,若是直接在本机部署的话,总是不能共存的,而是用 Docker 的话,则可以避免该问题 。Docker 还能确保每个应用程序只使用分配给它的资源(包括 CPU、内存和磁盘空间) 。一个特殊的软件将不会使用你全部的可用资源,要不然这将导致性能降低,甚至让其他应用程序完全停止工作 。
2. 安装 Docker
1) Linux 安装 Docker以 Arch Linux 为例,其他发行版也大同小异,只是换成其包管理工具而已 。
# 设置国内镜像站,国内提速用的,可选操作$ sudo pacman-mirrors -i -c China -m rank# 使用 Pacman 安装 Docker$ sudo pacman -S docker# 建立 docker 用户组 。默认情况下,docker 命令会使用 Unix socket 与 Docker 引擎通讯 。而只有 root 用户和 docker 组的用户才可以访问 Docker 引擎的 Unix socket 。出于安全考虑,一般 Linux 系统上不会直接使用 root 用户 。因此,更好地做法是将需要使用 docker 的用户加入 docker 用户组 。$ sudo groupadd docker# 将当前用户加入 docker 组,退出当前终端并重新登录后生效$ sudo usermod -aG docker $USER# 测试是否安装成功$ docker run --rm hello-world
2) Windows 10Windows 10 下安装 docker 比较简单,有如下几种方式:
手动下载安装:
下载 Docker Desktop for Windows 。由于官网下载比较慢,需要本地下载的可以点此链接
下载好之后双击 Docker Desktop Installer.exe 开始安装 。
使用winget安装:
$ winget install Docker.DockerDesktop运行 Docker:
在 Windows 搜索栏输入 Docker 点击 Docker Desktop 开始运行 。

文章插图
Docker 启动之后会在 Windows 任务栏出现鲸鱼图标 。

文章插图
等待片刻,当鲸鱼图标静止时,说明 Docker 启动成功,之后你可以打开 PowerShell/CMD/Windows Terminal 使用 Docker 。
3) macOS使用 Homebrew 安装:
Homebrew 的 Cask 已经支持 Docker Desktop for Mac,因此可以很方便的使用 Homebrew Cask 来进行安装:
$ brew install --cask docker手动下载安装:
如果需要手动下载,请点击下载 Docker Desktop for Mac 。由于官网下载比较慢,需要本地下载的可以点此链接
请注意下载对应芯片类型的软件,M1 和 Intel 芯片所对应的版本不通用 。
如同 macOS 其它软件一样,安装也非常简单,双击下载的 .dmg 文件,然后将那只叫 Moby 的鲸鱼图标拖拽到 Application 文件夹即可(其间需要输入用户密码) 。
运行 Docker:
从应用中找到 Docker 图标并点击运行 。

文章插图
运行之后,会在右上角菜单栏看到多了一个鲸鱼图标,这个图标表明了 Docker 的运行状态 。

文章插图
安装完成并启动后,我们可以在终端通过命令检查安装后的 Docker 版本 。
$ docker --version
3. Docker 换源docker 默认的源是国外的,国内访问的话速度比较慢,因此可以换为国内源,提高镜像拉去速度 。
1) Linux 换源Linux 下的比较简单,创建个 deamon.json 文件写下配置就好:
$ vi /etc/docker/deamon.json# 输入镜像源{# 只换一个源也是可以的,可以直接用字符串,而不是数组 。"registry-mirrors": ["https://registry.docker-cn.com","http://hub-mirror.c.163.com","https://docker.mirrors.ustc.edu.cn"],}# :wq 保存退出后重启 docker$ systemctl restart docker
2) Windows 和 Mac 换源Windows 和 Mac 都是使用的 Docker Desktop,所以直接在 GUI 中配置即可 。
打开 Docker 界面,点击 Docker Engine:

文章插图
在右边输出框中,输入镜像源:
{"registry-mirrors": [ "https://registry.docker-cn.com", "http://hub-mirror.c.163.com", "https://docker.mirrors.ustc.edu.cn"],}
4. 编写 Dockerfile安装完 Docker 之后,接下来我们便可以来编写我们自己的项目开发环境了 。本文将以前端开发环境为例,构建 Dockerfile 。
包含环境:
- node.js 14.17
- npm 6.14
- yarn 1.22
5. 编写 docker-compose.yml在开发时,我们寻常需要多个容器配合使用,比如需要配合 mysql 或其他容器使用时,使用 docker-compose.yml 可以更好的组织他们 。
version: '2'services:react:build: context: . dockerfile: react/Dockerfiletty: trueports: - 30000:3000volumes: - ./react/www:/var/wwwnetworks: - frontendmysql:image: mysql:5.7ports: - 33060:3306volumes: - ./mysql/data:/var/lib/mysql - ./mysql/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.denvironment: - MYSQL_ROOT_PASSWORD=passwordnetworks: - frontend# 将容器置于同一 networks 即可直接通过容器名访问networks:frontend:driver: bridge
6. 启动容器编写完上述 Dockerfile 和 docker-compose.yml 后,即可愉快的开始开发了!
# 进入 docker-compose.yml 所在目录$ cd frontend# 后台启动 docker-compose.yml 中所有容器,若容器没有构建则会先构建$ docker-compose up -d# 进入 react 容器中,以便命令行交互$ docker-compose exec --user=me react /bin/zsh为了测试容器间是否能相互访问,可以使用编写如下文件,数据库需自行创建:
// index.jsconst mysql = require('mysql')const connection = mysql.createConnection({host: 'mysql',user: 'root',password: 'password',database: 'test',})connection.connect();connection.query(`SELECT * FROM users`, function (error, results, fields) {if (error) throw error;console.log(results)})connection.end();之后运行,即可看到结果:
$ node index.js[ RowDataPacket { id: 1, name: 'Caster' } ]
7. 总结使用 Docker 来搭建开发环境十分方便,一次搭建,即可在许多机器上多次使用,即使是要重装系统,也不必在重复配置 。
如不喜欢写 Dockerfile 的话,也可以直接开启一个容器,然后进入容器配置完后,使用 docker save/export 导出即可 。
参考资料:
1. Docker教程
2. Docker构建开发环境
【Windows和mac 使用Docker构建开发环境的方法步骤】到此这篇关于使用Docker构建开发环境的方法步骤( Windows和mac)的文章就介绍到这了,更多相关Docker构建开发环境内容请搜索考高分网以前的文章或继续浏览下面的相关文章希望大家以后多多支持考高分网!
- 春季老年人吃什么养肝?土豆、米饭换着吃
- 三八妇女节节日祝福分享 三八妇女节节日语录
- 老人谨慎!选好你的“第三只脚”
- 校方进行了深刻的反思 青岛一大学生坠亡校方整改校规
- 脸皮厚的人长寿!有这特征的老人最长寿
- 长寿秘诀:记住这10大妙招 100%增寿
- 春季老年人心血管病高发 3条保命要诀
- 眼睛花不花要看四十八 老年人怎样延缓老花眼
- 香槟然能防治老年痴呆症? 一天三杯它人到90不痴呆
- 老人手抖的原因 为什么老人手会抖
