上个月,Docker发起了Docker Global Mentor Week 2016(https://blog.docker.com/2016/10/docker-global-mentor-week-2016/),旨在帮助开发者用户提高各项技术水平。在resin.io技术栈中,Docker是一个关键的技术之一,而且我们也积攒了很多与Docker关联的最佳实践经验、注意事项、以及提高resin.io开发经验的小技巧。Docker本身已经有很多优秀的实践范例,但并不是所有的场景都在resin.io使用。根据Global Mentor Week的议题精神,在这篇博客中我们整理了关于resin.io应用程序和硬件设备使用Docker场景的一些常见问题。 文章主要分为两个部分:1,必须在实践中使用的; 2,提示部分,建议使用可以提高代码质量和经验,但是并非时强制的。 必须使用部分 以下这些实践经验能在开发中为您缩减痛苦过程。 固定软件版本固定所有依赖的版本是实现良好实践最佳途径。这包括基本映象,从GitHub中提取的代码,代码依赖的库等等。通过版本控制,您可以简化应用程序已知的工作版本。 如果没有版本控制,您的组件很容易改变,导致以前工作的Dockerfile不能再构建。 您可以在resin.io官方Docker Hub拉取基础映象最新的可用版本,可以依据基础映象的Tags查询选择。例如,使用 FROMresin/raspberrypi3-debian:jessie-20161119 基础映象的架构会发现变化(这种情况极少,但是也是存在的),而使用日期标记排序,就可以标识处稳定可用的最新映象版本。(这样对于Docker来说,他们就一直可以下载可用版本) 一个棘手的事情是固定操作系统中使用包安装器安装的软件的版本问题,再Debian中,运行apt-get安装特定的版本信息,例如: RUNapt-getupdate |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|