Docker开发环境预览

Posted 给自己一年时间。

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker开发环境预览相关的知识,希望对你有一定的参考价值。

docker在我们印象中完成的是开发完阶段的部署与协作共享功能,最近Docker推出了适合开发阶段的Docker环境容器开发。

1.1 开发环境预览

开发环境允许您与团队成员共享正在进行的代码,从而使您能够轻松协作。使用 Dev Environments 时,您可以轻松设置可重复的开发环境,将环境详细信息与代码一起进行版本控制。您还可以一键与您的团队成员共享您正在进行的代码,而无需处理任何合并冲突,同时在 Git 分支之间移动以将您的代码放到他们的机器上。

开发环境还允许您在开发人员环境或团队成员的环境之间切换,在分支之间移动以查看正在进行的更改,而无需离开当前的 Git 分支。

要访问 Dev Environments,请从 Docker 菜单中选择Dashboard > Dev Environments。

1.1.1 启动单个容器开发

  • 单击创建新环境。这将打开“创建开发环境”对话框。https://github.com/dockersamples/single-dev-env.git将其复制并添加到Remote Git Repository选项卡上的Repository URL字段。
    现在,单击创建。

  • 这会克隆卷内的 Git 代码,确定适合您的开发环境的最佳映像,最后,在开发环境容器内打开 VS Code。

    在上面的例子中,名称wizardly_ellis和relaxed_maclaren是随机生成的。创建开发环境时,您很可能会看到不同的名称。

将鼠标悬停在容器上并单击在 VS Code 中打开以开始像往常一样在 VS Code 中工作。您还可以在 VS Code 中打开一个终端,然后使用 Git 将代码推送或拉取到您的存储库,或者像往常一样在分支和工作之间切换。

您可以通过make run在 VS Code 终端中运行命令来启动应用程序。这将在端口 8080 上打开一个 http 服务器。在浏览器中打开http://localhost:8080以查看正在运行的应用程序。

1.1.2 从特定的分支或标签创建一个开发环境

您可以通过添加@mybranch或@tag作为后缀到您的 Git URL ,从特定分支(例如,与拉取请求对应的分支)或标记创建开发环境:

https://github.com/dockersamples/single-dev-env@mybranch

或者

git@github.com:dockersamples/single-dev-env.git@mybranch

然后 Docker 使用您指定的分支或标签克隆存储库。

总结

  • 首先,我们使用 Git 凭据在容器中克隆了一个 Git 存储库。请注意,这与您主机上的任何本地文件都没有冲突。
  • 我们示例项目所需的 Go 工具是为我们自动设置的。此外,这不会对我们的本地工具设置造成任何摩擦。
  • 最后,我们能够使用 VS Code 终端在容器内运行应用程序服务器,并从主机自动访问它。

2.1 分享你的开发环境

当您准备好共享您的环境时,只需单击共享按钮并指定要将开发环境推送到的 Docker Hub 命名空间。

这将创建开发环境的 Docker 映像,将其上传到您在上一步中指定的 Docker Hub 命名空间,并提供一个可用于与团队成员共享您的工作的小 URL。

您的团队成员需要打开“创建”对话框,选择“现有开发环境”选项卡,然后粘贴 URL。您的开发环境现在开始时处于与您共享时完全相同的状态。

使用此共享开发环境,您的团队成员可以访问代码、任何依赖项以及您正在处理的当前 Git 分支。他们还可以在您创建拉取请求之前审查您的更改并提供反馈!

3.1 优缺点

  • 此次docker dev environment功能的推出解决了在协同阶段开发环境不同造成的困扰。
  • 缺点是DEV容器若损坏将会对整个项目开发造成不可逆的损伤。
  • 还有一点就是目前容器协作开发的方式Docker只与VScode完成了对接,希望之后能开发与IDEA的对接。

Mac 使用docker搭建PHP环境

参考技术A 启动php-fpm

启动Nginx镜像

查看容器是否启动

容器启动成功

在浏览器打看试试

结果显示错误

这是什么问题??

3.1 进入容器看看挂载是否成功

文件挂载成功

3.2 第一个考虑是没有配置文件
设置一个配置文件

文件存储在宿主机的位置
nginx挂载文件设置 /var/data/nginx/conf:/etc/nginx/conf.d

查看nginx容器是否成功挂载配置文件

成功挂载文件

预览测试html

预览测试php

无法解释php文件,配置文件还需要修改。应该是php fpm地址错误。

先找到php-fpm的ip地址

修改nginx的配置文件

测试成功!

4.1 查看有没有ext目录

如果没有,就需要创建

如果ext目录已经存在需要安装扩展的源码,就直接安装

如果ext目录没有扩展源码,就需要使用另外一种方式安装。
以安装mcrypt为例
// redis 源码 http://pecl.php.net/get/redis-4.0.2.tgz

重启php-fpm容器,就可以在web服务器查看已经加载。

以上是关于Docker开发环境预览的主要内容,如果未能解决你的问题,请参考以下文章

打造专属的docker开发环境(二)-centos安装httpd

如何使用Docker部署PHP开发环境

Linux开发环境配置(Docker)和安装jdk

利用docker快速搭建创建开发环境

利用docker快速搭建创建开发环境

Docker秒搭建Php7开发环境