Docker在分离的容器中构建php + nginx + pgsql

时间:2016-12-31 13:33:17

标签: postgresql docker docker-compose dockerfile

我正在尝试在document.execCommand('insertText', false, 'Pasted text')的分隔容器中创建一个php7 + nginx + pgsql开发环境。

这是我的docker-compose

docker-compose.yml

现在我错过了webserver: build: ./nginx ports: - "8888:80" volumes: - ./site.conf:/etc/nginx/conf.d/default.conf links: - php-fpm php-fpm: build: ./php-fpm volumes: - /path/to/codes/:/var/www/

如何将pgsql添加到pgsql

2 个答案:

答案 0 :(得分:0)

你可能需要对它进行一些改进,但你可以通过添加以下条款来实现: db: image: postgres

您可能希望公开一些端口并挂载存储在pg中的数据,但这几乎就是这样。 你可以在这里看一个更完整的例子(使用mysql而不是pg) - https://github.com/nezhar/wordpress-docker-compose/blob/master/docker-compose.yml

请注意,该链接使用了docker compose的版本2,它的语法略有不同。

答案 1 :(得分:0)

This is a nice repository(使用PHP + Nginx + PostgreSQL + Composer)

您应该访问它以查看其使用的PHP,Nginx和Postgres的其他配置文件,但是它的docker-compose.yml文件是这样的:(我删除了composer部分,因为它对您的情况无关紧要

version: '3'
services:
    web:
        image: nginx
        volumes:
            - ./.docker/conf/nginx/default.conf:/etc/nginx/conf.d/default.conf
            - .:/var/www/html
        ports:
            - 80:80
        restart: always
        depends_on:
            - php
            - db
    php:
        build: .docker
        restart: always
        volumes:
            - ./.docker/conf/php/php.ini:/usr/local/etc/php/conf.d/php.ini
            - ./.docker/conf/php/xdebug.ini:/usr/local/etc/php/conf.d/xdebug.ini
            - .:/var/www/html
    db:
        image: postgres:10.1
        restart: always
        environment:
            - POSTGRES_DB=${DB_NAME}
            - POSTGRES_USER=${DB_USER}
            - POSTGRES_PASSWORD=${DB_PASSWORD}
        ports:
            - 5432:5432
        volumes:
            - ./.docker/conf/postgres/:/docker-entrypoint-initdb.d/