这是一道样题!千万不要在生产中这样做。在单独的容器中运行NGINX/PHP/OTHER服务!
# Version: 0.0.1
FROM ubuntu:15.04
ENV DEBIAN_FRONTEND noninteractive
#INSTALL ALL
RUN apt-get update && apt-get install -y \
nano \
php5-fpm \
php5-mysql \
nginx
#NGINX CONF
ADD nginx/sites-available/laravel.conf /etc/nginx/sites-available/
RUN rm /etc/nginx/sites-available/default
RUN mv /etc/nginx/sites-available/laravel.conf /etc/nginx/sites-available/default
VOLUME /www
ENTRYPOINT nginx && service php5-fpm start && /bin/bash
CMD ["true"]
EXPOSE 80
和docker-compose.yml
:
version: '2'
services:
ubuntu:
build: .
container_name: ubuntu
volumes:
- ~/sph/laravel52:/www/laravel
ports:
- "80:80"
问题是在运行容器时使用了-t
选项。
您是否可以检查一下在docker-compose.yml文件中启用tty
选项(参见参考),容器是否会继续运行?
version: '2'
services:
ubuntu:
build: .
container_name: ubuntu
volumes:
- ~/sph/laravel52:/www/laravel
ports:
- "80:80"
tty: true
我正在尝试在我的容器中启动一些服务。 这是我entry_point剧本: 我想做的是取消评论这一行: 但在启动时,容器就挂在这里。 有什么解决办法吗?
我想在Docker容器中启动两个不同的服务,并在其中一个退出后立即退出容器。我查看了supervisor,但找不到如何让它在一个托管应用程序退出后立即退出。它试图重启它们多达三次,就像标准设置一样,然后什么也不做。主管是否能够做到这一点,或者是否有其他工具可以做到这一点?如果还有一种方法可以让两个托管程序都写入到stdout,并标记它们的应用程序名,则会有好处,例如:
我正在windows上使用Docker-version(客户端)/(服务器)。我已经为ELK堆栈创建了文件。一切正常。我想做的是,在kibana启动之前安装。我想先复制,然后调用install: 但这看起来不是正确的方法,因为首先它不起作用,其次我不确定我是否可以像以前那样调用多个命令,第三,我不确定中的在服务创建的那个阶段是否被允许
问题内容: 我有一个docker- compose文件,该文件在同一主机中部署8个不同的docker服务。是否可以在不同的主机中部署它?我想在一个主机中远程部署某些服务,而在其他主机中远程部署其他服务。我需要使用docker- swarm吗?还是更简单的方法? 我已经阅读到可以使用DOCKER_HOST来完成此操作,但是如果我使用此变量配置/ etc / default / docker,则所有服
我已在Azure虚拟机上安装了Docker for Windows Server。 现在,我尝试使用以下步骤设置RabbitMQ https://hub.docker.com/r/library/rabbitmq/ 但我有一个错误。 3:从库/rabbitmq C:\Program Files\Docker\Docker.exe中提取:清单列表项中没有与windows/amd64匹配的清单。 这是
问题内容: 我正在处理一个系统,该系统在其自己的JVM中为每个客户运行Java应用程序。现在,我们有大约六个专用服务器,它们总共运行近100个JVM,以及用于管理这些JVM的自定义脚本集。此设置实际上已经表明了它的年龄:管理许多JVM已成为监视/管理的噩梦,并且我们一直在处理堆大小调整问题。我们想采用一种更现代的方法,并在每台物理计算机的单个应用服务器中运行一堆应用程序。但是,将应用程序保持隔离确