有没有办法通过像http://mydomain.dev?

时间:2016-12-24 23:57:17

标签: php networking nginx docker docker-compose

我基本上使用的设置来自:https://github.com/wouterds/docker(但不使用mysql)

以下是我的docker-compose.yml文件:

nginx:
    image: nginx:1.10.2
    ports:
        - 80:80
    restart: always
    volumes:
        - ./nginx/conf:/etc/nginx/conf.d
        - ~/server/firebase-test/code:/code
    links:
        - php
    depends_on:
        - php

php:
    build: php
    expose:
        - 9000
    restart: always
    volumes:
        - ./php/conf/php.ini:/usr/local/etc/php/conf.d/custom.ini
        - ~/server/firebase-test/code:/code

如果我转到http://localhost

,它会正常工作

但是我正在使用这个容器设置来开发一堆不同的站点。有时我需要它们同时运行,所以它们都尝试使用localhost url,这是不可能的。有没有办法在本地手动让它们被http://websitename.devhttp://[container-name].dev引用? docker-compose是否会生成某种网络映射,我可以使用它来访问容器而不是http://localhost

对Docker来说很新,所以我有点迷失并且谷歌搜索最后一小时除了一个名为“docker-hostmanager”的工具之外没有其他任何结果,但它不适用于v2语法。

1 个答案:

答案 0 :(得分:0)

我相信您应该能够使用server_name指令配置nginx来执行此操作:

server {
    listen       80;
    server_name  example.org  www.example.org;
    ...
}

http://nginx.org/en/docs/http/server_names.html