我正试图从使用无业游民的设置转移到docker。我已经阅读了很多不错的docker deepdive和大量文档。我正在尝试使用docker-compose将事物捆绑在一起。
所以最初我只有db和php-apache容器。 Composer,npm,gulp,git,node,其余的也都安装在了那里。但这似乎不正确吗?因此,我尝试将php和apache分解为它们自己的容器,而改为“从头开始”,在该命令行中任何命令行位和鲍勃都可以像vm一样运行。所以在Dockerfile中,我尝试安装composer,npm和其他一些东西。但是我认为我没有将这些容器正确地组合在一起,目前我面临的问题是我无法从头开始从php-apache容器安装php。
对于我最好的解决方法,我会提出一些建议,我在网上找不到任何与此类似的示例(这很奇怪,因为这是一个常见的灯泡组)。我应该如何构造这个?
version: '3'
services:
scratch:
container_name: scratch
build: ./docker/scratch
volumes:
- .:/var/www/html
depends_on:
- db
- php-apache
links:
- db
- php-apache
php-apache:
container_name: php-apache
build: ./docker/php-apache
ports:
- 80:80
volumes:
- .:/var/www/html
- ./docker/vhosts:/etc/apache2/sites-available
db:
container_name: db
build: ./docker/mysql
ports:
- 3306:3306
volumes:
- db:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: main
MYSQL_USER: root
MYSQL_PASSWORD: root
restart: always
volumes:
db:
driver: local