【发布时间】:2018-07-25 19:27:34
【问题描述】:
经过几天的 docker 测试和工作(我通常尝试从 vagrant 迁移到 docker),我遇到了一个巨大的问题,我不知道如何或在哪里解决它。
docker-compose.yml
version: "3"
services:
server:
build: .
volumes:
- ./:/var/www/dev
links:
- database_dev
- database_testing
- database_dev_2
- mail
- redis
ports:
- "80:8080"
tty: true
#the rest are only images of database redis and mailhog with ports
Dockerfile
示例_1
FROM ubuntu:latest
LABEL Yamen Nassif
SHELL ["/bin/bash", "-c"]
RUN apt-get install vim mc net-tools iputils-ping zip curl git -y
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
RUN cd /var/www/dev
RUN composer install
Dockerfile
示例_2
....
RUN apt-get install apache2 openssl php7.2 php7.2-common libapache2-mod-php7.2 php7.2-fpm php7.2-mysql php7.2-curl php7.2-dom php7.2-zip php7.2-gd php7.2-json php7.2-opcache php7.2-xml php7.2-cli php7.2-intl php7.2-mbstring php7.2-redis -y
# basically 2 files with just rooting to /var/www/dev
COPY docker/config/vhosts /etc/apache2/sites-available/
RUN service apache2 restart
....
现在找不到 example_1 composer.json 文件/目录 并且 example_2 apache 会说找不到根目录 文件/目录 = /var/www/dev 我猜它是因为它是一个卷,并且在容器完全启动之前它不会启动,因为如果我在没有 prev 命令的情况下启动容器会导致错误,那么我可以登录到容器并从命令行执行命令而不会出现任何错误
如何解决这个问题?
【问题讨论】:
标签: docker docker-compose