脚本宝典收集整理的这篇文章主要介绍了使用PHP,MySQL,nginx同时运行多个Dockerize项目,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我有使用相同配置(PHP,MysqL,Nginx)的docker-compose配置的项目.当我使用docker-compose运行一个项目时没有问题,但我需要每天在它们之间切换几次以进行开发.
问题:
> Nginx的相同端口的共享配置
>默认数据库和连接的共享配置(名称和用户)
>每个项目的域名
>适用于Mac的Docker – 边缘
目前
现在只需每次都上下运行-v.
大多数情况下,项目都是相同的PHP版本(应该是)和MysqL.
思路
负载均衡器
其中一个想法是在主文件夹工作区中创建配置,docker-compose与一些loadbalancer,这将是一些规则将为给定项目生成域,其中volume为主文件夹,并且有一个MysqL服务器和几个DB – 但这是一个原始想法.
题
什么解决方案适用于特定情况?
>提出任何结构或泊坞窗配置来解决独立配置?
更新
我的docker-compose文件
版本:’2.1′
dev的单服务器设置
services: app: image: ${PHP_IMAGE} volumes: - ${COMPOSE_DIR}/../../:/VAR/www:cached - ${COMPOSER_HOME}:/root/.COMposer:cached dePEnds_on: - db environment: - SYMFONY_ENV=${SYMFONY_ENV-PRod} - SYMFONY_DEBUG - SYMFONY_HTTP_CACHE - SYMFONY_HTTP_CACHE_CLASS - SYMFONY_TRUSTED_PROXIES - DATABASE_USER - DATABASE_PASSWORD - DATABASE_NamE - DATABASE_HOST=db web: image: ${Nginx_IMAGE} volumes_From: - app:ro ports: - "8080:80" environment: - SYMFONY_ENV=${SYMFONY_ENV-prod} - MAX_BODY_SIZE=20 - FASTCGI_PASS=app:9000 - TIMEOUT=190 - DOCKER0NET command: /bin/bash -c "cd /var/www && cp -a doc/Nginx/ez_params.d /etc/Nginx && bin/vhost.sh --template-file=doc/Nginx/vhost.template > /etc/Nginx/conf.d/default.conf && Nginx -g 'daemon off;'" db: image: ${MysqL_IMAGE} volumes: - ${COMPOSE_DIR}/entrypoint/MysqL:/docker-entrypoint-inITdb.d/:ro environment: - MysqL_RANDOM_ROOT_PASSWORD=1 - MysqL_USER=$DATABASE_USER - MysqL_PASSWORD=$DATABASE_PASSWORD - MysqL_DATABASE=$DATABASE_NAME - TERM=dumb
鉴于此,正如我所说,我希望运行具有不同PHP版本的项目.每个都有相同的Nginx配置,然后需要以某种方式有可能轻松和同时运行它们.
理解@Vladimir Kovpak的答案,但手动这种方式会产生很多工作.
每个项目都有自己的docker-compose配置.
什么是完美的
场景1
>转到项目,运行命令以通过docker-compose正确构建
>可以做开发工作
>可以通过一些动态域访问页面
>运行命令关闭项目
情景2
>转到项目,运行命令以通过docker-compose正确构建
>转到其他项目,运行命令以通过docker-compose正确构建
>可以做开发工作
>可以通过一些动态域访问页面
>运行命令关闭项目
Portainer本身就是一个docker机器,所以我在机器启动时启动它,然后在Web浏览器中我可以看到我已经设置的MysqL,PHP和PHPmyadmin容器.您可以单独启动和停止它们,也可以通过浏览器将控制台执行到机器中.
浏览器还会显示机器使用情况统计信息,IP地址和端口转发详细信息,以及浏览器中的大量有用信息.
最后,它还允许您远程管理docker机器,因此我使用docker设置我的桌面,我可以管理笔记本电脑上的容器.
以上是脚本宝典为你收集整理的使用PHP,MySQL,nginx同时运行多个Dockerize项目全部内容,希望文章能够帮你解决使用PHP,MySQL,nginx同时运行多个Dockerize项目所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。