Tag:

如何使用docker-compose将PHP容器与nginx容器连接起来?

我试图在Docker环境中创build一个简单的LAMP堆栈。 它通过运行第三方容器phpdockerio/php71-fpm:latest ,但是我想要一个安装了XDebug的自定义PHP容器。 我的问题是,如果我执行docker-compose up ,启动后的PHP容器退出之前,我的webserver容器可以使用它。 我怎样才能成功告诉PHP容器等待我的nginx容器的连接? 命令行输出 PS C:\playground> docker-compose.exe up Starting playground_php_1 Starting playground_web_1 Attaching to playground_php_1, playground_web_1 playground_php_1 exited with code 0 playground_web_1 exited with code 1 Dockerfile FROM php:latest RUN pecl install xdebug \ && docker-php-ext-enable xdebug ENTRYPOINT ["docker-php-entrypoint"] CMD ["php", "-a"] 泊坞窗,compose.yml version: '2' services: php: build: context: ./etc/php/ dockerfile: […]

如何使用docker-java客户端库获取docker容器日志

我尝试了下面的代码,但是响应包含一个对象而不是日志。 DockerClientConfig config = DefaultDockerClientConfig.createDefaultConfigBuilder() .withDockerHost("tcp://IP:PORT").withDockerTlsVerify(true) .withDockerCertPath("………..CERTIFICATE PATH……….").build(); DockerClient dockerClient = DockerClientBuilder.getInstance(config).build(); dockerClient.logContainerCmd("Container ID") .withStdOut(true).withFollowStream(true) .exec();

将docker容器的权限分享给来自volumes_from的php-fpm映像

我正在dockerizing一个应用程序。 我做了这个组合文件,为这个应用程序创build一个数据容器,master,并使用nginx和php-fpm来服务它,但是所有的时候我都有权限问题: salahaddin@TulipanROG  ~/Proyectos/UzmanTech/opus  nginx-server ✚ ●  docker-compose logs -f | grep opus.php  130 ↵  2678  05:37:53 Attaching to opus.db-seed, opus.web, opus.php, opus.key, opus.migration, opus.master, opus.redis, opus.db opus.php | [23-Jun-2017 02:37:21] NOTICE: fpm is running, pid 1 opus.php | [23-Jun-2017 02:37:21] NOTICE: ready to handle connections opus.php | [23-Jun-2017 […]

用Docker错误500设置本地WordPress开发环境

我需要帮助build立我的docker,我知道有很多已经configuration的环境,但我需要一个适合我的需求。 贝娄你可以find我的设置。 泊坞窗,compose.yml version: '3' services: nginx: image: nginx:latest ports: – "80:80" volumes: – ./wordpress:/var/www/html – ./config/nginx:/etc/nginx/conf.d – ./logs/nginx:/var/log/nginx depends_on: – phpfpm restart: always mariadb: image: mariadb:latest ports: – "3306:3306" volumes: – ./data/db:/var/lib/mysql environment: MYSQL_ROOT_PASSWORD: password MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: password restart: always phpfpm: image: php:fpm ports: – "9000:9000" volumes: – ./wordpress:/var/www/html depends_on: – […]

减lessdocker图像大小

我下载了一个只有debian OS的图像,并开始构build它。 当我第一次使用它的时候,debian的图像大概是700MB。 安装了LAMP,Drupal站点,清漆,tomcat,solr和其他一些服务。 图像已经显着增加(我),高达13 GB和导入3GB的MySQL转储后,该图像的大小增加了一倍,大约29GB。 为什么发生这种情况? 有没有办法减less图像的整体大小?

许多PHP容器的Docker体系结构

我想知道你们如何deviseDocker来处理许多容器,每个容器运行不同的PHP代码。 基本上,系统上的每个用户都有自己的PHP代码,代码是不一样的。 想想像每个用户有自己的WordPress的网站。 (我认为)这意味着我需要为每个PHP容器安装不同的目录。 我初步想到的是为每个用户创build一个单独的服务。 这样,当http请求进来时,我可以使用主机头来find正确的服务来处理请求。 但是如果系统有1000个用户,那么就意味着拥有1000个服务 – 对于Docker来说,这看起来非常重要。 我看到一些人在运行1000个容器,但我不确定这么多的服务。 另一件事是我想为每个用户build立一个单独的networking – 这意味着1000个networking – 这是可行的? 我在这里走错路了吗?

Docker群集不断地closures容器

我在3台机器上创build了一个docker swarm manager节点 – 一台是Windows 10机器和2台Ubuntu机器。 事情在Windows 10和Ubuntu机器之一上按预期工作。 然而,在安装完所有东西之后,在最后一台机器(Ubuntu 16.04,Linode上的虚拟机)上,按照这里的说明并使用docker-ce 17.06.0〜ce-0〜Ubuntu的版本,我无法启动任何服务或堆栈 – 所有服务/堆栈容器都在一秒钟内closures。 没有从容器本身的日志 – 他们似乎在开始后立即停止。 如果restart_policy设置为on-failure容器,就像疯了一样开始和closures。 副本设置为1(默认)。 启动任何服务,然后检查服务状态 docker service ps *service-name* 在最右边的列中显示错误 starting container failed: su… 除了swar docker run以外, docker run hello-world 产生所需的输出。 所以,通过docker运行启动的其他容器。

自定义docker-java响应来移除一些像stream一样的logging器

我正在使用dockerJava版本3.0.10。 我可以编写代码来使用该版本执行不同的操作。 我得到如下响应: com.github.dockerjava.api.command.InspectImageResponse@3e690a97[arch=amd64,author=,comment=,config=com.github.dockerjava.api.model.ContainerConfig@3dbaa748[attachStderr=false,attachStdin=false,attachStdout=false,cmd={sh},domainName=,entrypoint=<null> ……………………(so on json) ] 但是,我想要JSON响应,并希望删除附加的行com.github.dockerjava.api.command.InspectImageResponse@3e690a97 ,就像在每个响应得到。 请给我这样做的方式。 提前致谢。

Docker swarm – 容器绑定到ethx IP

我真的是一个docker新手,请原谅我缺乏指定问题的技能。 现在我遇到了一个生产场景,我想用Docker Swarm将不同的机器连接在dockernetworking中。 但每个主机可能有多个物理网卡(eth0,eth1等),因此IP不同, 每次我编排系统时,我想为每个容器初始化一个新的networking,让容器使用网卡IP中的特定IP。 但是每个容器使用每个NIC的IP,而不是在docker0下。 我已经阅读了Docker 17.06ce上的文档 ,提到使用DOCKER-USER标志,但是我不太明白这一点。 使用主机networking对我来说不是最好的select,因为它将占用全球的端口。 提前致谢。

Docker – 安全的mysqlconfiguration

我想为我的生产和testing环境运行一个单独的docker容器为我的mysql数据库。 问题是,它有可能暴露port号和环境值,例如黑客已经获得访问容器。 我怎样才能写一个安全的mysql映像,不显示端口号和环境variables? UPDATE 我创build了一个本地.env文件,并在我的docker-compose.yml中使用了variables。 泊坞窗,compose.yml version: '3.1' services: mysql: image: mysql:5.6 ports: – 3306 environment: – DB_DATABASE=${DB_DATABASE} – DB_USERNAME=${DB_USERNAME} – DB_PASSWORD=${DB_PASSWORD}