Web应用程序docker swarm在哪里放源代码?

weixin_38093608 2019-09-12 12:52:08
我正在使用Docker和Docker编写PHP-FPM / Nginx / Mariadb应用程序开发.我现在想用Docker swarm和docker-compose v3(通过docker-stack.yml)进行生产 我的docker-stack文件是这样的: version: "3" services: db: image: mariadb environment: MYSQL_ROOT_PASSWORD: root MYSQL_DATABASE: app php: image: <MYREGISTRY>/php volumes: - app-data:/var/www/app deploy: replicas: 2 nginx: image: <MYREGISTRY>/nginx depends_on: - php volumes: - app-data:/var/www/app deploy: replicas: 2 ports: - "80:80" volumes: app-data: 如您所见,我使用自己的私有注册表来存储应用程序图像.我的问题是我在哪里放置代码源? 我看到两个选项: >新服务应用程序(基于busybox映像?)是一个仅数据容器.然后我可以将代码源图像推送到我的注册表并进行部署.使用带标记的代码源的Docker镜像可能很方便.>复制PHP图像或Nginx图像中的代码? 哪个是最好的选择?
...全文
28 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38107468 2019-09-12
  • 打赏
  • 举报
回复
源代码的维护应独立于docker镜像的维护.通过将包含源代码的docker镜像推入注册表,只维护源代码,您的第一个选项似乎将两者混合在一起. 将源代码保留在VCS(版本控制系统)上.当代码准备好分发时,使用该代码构建docker镜像.如果图像可以直接从VCS访问源代码,那么整体维护就会减少. 您可以探索多阶段docker构建,其中可以创建连接到VCS的临时容器,提取适当的代码并在必要时构建它.然后,最终映像仅从临时容器复制构建过程的结果,而无需对VCS进行不必要的访问.

433

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧