我现在想用Docker swarm和docker-compose v3(通过docker-stack.yml)进行生产
我的docker-stack文件是这样的:
version: "3"services:db: image: mariadb environment: MysqL_ROOT_PASSWORD: root MysqL_DATABASE: appPHP: image: <MYREGISTRY>/PHP volumes: - app-data:/var/www/app deploy: replicas: 2Nginx: 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图像中的代码?
哪个是最好的选择?
解决方法 源代码的维护应独立于docker镜像的维护.通过将包含源代码的docker镜像推入注册表,只维护源代码,您的第一个选项似乎将两者混合在一起.将源代码保留在VCS(版本控制系统)上.当代码准备好分发时,使用该代码构建docker镜像.如果图像可以直接从VCS访问源代码,那么整体维护就会减少.
您可以探索多阶段docker构建,其中可以创建连接到VCS的临时容器,提取适当的代码并在必要时构建它.然后,最终映像仅从临时容器复制构建过程的结果,而无需对VCS进行不必要的访问.
总结以上是内存溢出为你收集整理的Web应用程序docker swarm在哪里放源代码?全部内容,希望文章能够帮你解决Web应用程序docker swarm在哪里放源代码?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)