我的要求是使用openface我需要训练数据集(图像)并测试来自webinterface(PHP)的每个输入图像,所有这些活动应该从docker容器运行。
我能够在ubuntu机器上达到上述要求。我们正在尝试在docker中安装完整的设置(apache / php& openface)。 目前我们无法使用docker
从apache服务器调用html文件以下docker文件用于将项目导入docker并安装apache / PHP。如果需要在dockerfile中进行任何更改,请告诉我。
FROM ubuntu:16.04
RUN apt-get update && \
apt-get -y install sudo
RUN useradd -m docker && echo "docker:docker" | chpasswd && adduser docker sudo
ADD opencv-3.0.0 /
ADD openface_setup.sh /
RUN /openface_setup.sh
ADD openface_work /
RUN apt-get update && apt-get -y upgrade && DEBIAN_FRONTEND=noninteractive apt-get -y install \
apache2 php7.0 libapache2-mod-php7.0 curl lynx-cur
RUN a2enmod php7.0
RUN a2enmod rewrite
RUN sed -i "s/short_open_tag = Off/short_open_tag = On/" /etc/php/7.0/apache2/php.ini
RUN sed -i "s/error_reporting = .*$/error_reporting = E_ERROR | E_WARNING | E_PARSE/" /etc/php/7.0/apache2/php.ini
ENV APACHE_RUN_USER www-data
ENV APACHE_RUN_GROUP www-data
ENV APACHE_LOG_DIR /var/log/apache2
ENV APACHE_LOCK_DIR /var/lock/apache2
ENV APACHE_PID_FILE /var/run/apache2.pid
EXPOSE 8080
VOLUME /var/www/html # **my PHP/html files are located here. In the docker container the html/php files are not reflecting**
ADD apache-config.conf /etc/apache2/sites-enabled/000-default.conf
CMD /usr/sbin/apache2ctl -D FOREGROUND
容器启动后,我希望test.html(位于/ var / www / html中)运行。
仅供参考:
创建泊坞窗图像的命令
sudo docker build -t myname/apache-test .
启动docker容器的命令
docker run -p 8080:80 -d <imageid>
答案 0 :(得分:1)
我建议将the official PHP image与预先安装的Apache安装一起使用。
您的项目可能如下所示:
.
├── Dockerfile
└── src
└── index.php
,而您的Dockerfile包含以下内容:
FROM php:7.1-apache
# now RUN here your commands to install openface etc.
你的index.php看起来像这样:
<?php phpinfo();
然后构建图像:
docker build -t myapache .
docker run --rm -p 8080:80 -v $(pwd)/src:/var/www/html myapache
http://localhost:8080显示了php-info页面。
您可以根据需要扩展图像,这比您的方法简单得多。希望这可能有所帮助。
如果您不需要安装其他任何东西,可以在创建新容器时直接使用php:7.1-apache图像。
答案 1 :(得分:0)
尝试输入 docker ps 以获取在容器中运行的所有进程。 然后输入 docker run -it container-id
它将启动apache服务器并显示它托管它的地址,除非你想在 /etc/docker/daemon.json (https://docs.docker.com/engine/userguide/networking/default_network/custom-docker0/)中添加另一个>