「Docker」- 获取帮助和改进 @20210421
需要具备的知识:Git、GitHub、Go
#1 获取帮助
Docker社区
使用IRC频道
#docker,讨论用户求助及基本的Docker文件。聊天记录:https://botbot.me/freenode/docker/
#docker-dev,开发者相关的问题。聊天记录:https://botbot.me/freenode/docker-dev/
都在Freenode IRC网络上。
在GitHub上
关注Docker仓库:https://github.com/docker/docker/
distribution - 独立的Docker Registry和分布式工具。
runc - Docker容器格式和CLI工具。
Docker Swarm - Docker的调度框架。
Docker Compose - Docker Compose工具。
#2 报告Docker问题
问题描述要清晰:
包含docker info和docker version的输出; 命令uname -a的输出; 问题的详细描述,及期望的结果; 确认没有同样的问题;
#3 搭建构建环境
构建环境并检出源码
先安装Docker,因为构建环境本身就在Docker容器中。
安装git和make工具。
检出源码然后进行工作。
贡献文档
除了源码之外,文档大家都也参与贡献:
#!/bin/sh cd docker make docs docker run --run -it -e AWS_S3_BUCKET -p 8000:8000 "docker-docs:master" mkdocs serve # 然后在本地浏览器中打开8080端口
修改源码
#!/bin/sh # 源码目录中附带了一个Dockerfile,用于构建开发环境 # 构建Docker开发环境 make build # 该命令创建Docker镜像,里面包含了所有的Go及其他所必须的依赖,之后会基于该镜像启动一个容器。 # 构建可执行程序 make binary # 构建二进制程序,位于./bundles/<version>-dev/binary/中 # 测试新特性。 # 先停止原有的容器,然后运行新的容器,进行一系列的测试。 # 运行测试。 make test # 该命令会将当前代码作为构建上下文上传到镜像,并创建一个新的开发镜像。然后使用该镜像启动一个容器,并在容器中运行测试代码。 # 在新开发的容器中运行交互式Shell make shell
发起PR
略……
批准合并和维护者
略……
相关文章
「Docker」- 关于版本号的疑问
「Docker」- 将代码放入容器中
「Dockerfile」- Programming