如何在自己的networking中运行Docker容器
今天,我从“Docker Toolbox”切换到“Docker for Mac”,因为Docker现在终于可以写入我的User
目录了(这不适用于“Docker Toolbox”) – Yay!
但是这个改变还包括所有现在在我的本地主机上运行,而不是像以前那样在Docker的IP下运行的容器(例如192.168.99.100
)。
由于我的localhost
在默认情况下侦听各种端口(80,443,…),我不想总是添加新的创build的端口,这与标准的端口不冲突,我的本地开发域( example.dev:8443
),我想知道如何像以前一样运行我的容器。
我读了关于network
configuration,并尝试了很多东西(创build一个新的主机networking,暴露在它前面的IP端口,…),但没有得到它的工作。
我需要什么样的configuration来运行我的应用程序容器与IP 192.168.99.100
? 那是我docker-compose.yml
到目前为止。
version: '2' services: app: build: context: . dockerfile: Dockerfile depends_on: - mysql - redis - memcached ports: - 80:80 - 443:443 - 22:22 - 3000:3000 - 3001:3001 volumes: - ./app/:/app/ - /tmp/debug/:/tmp/debug/ - ./:/docker/ volumes_from: - storage # cap and privileged needed for slowlog cap_add: - SYS_PTRACE privileged: true env_file: - etc/environment.yml - etc/environment.development.yml mysql: build: context: docker/mysql/ dockerfile: MariaDB-10 ports: - 3306:3306 volumes_from: - storage volumes: - ./data/mysql:/var/lib/mysql - /tmp/debug/:/tmp/debug/ env_file: - etc/environment.yml - etc/environment.development.yml redis: build: docker/redis/ volumes_from: - storage env_file: - etc/environment.yml - etc/environment.development.yml memcached: build: docker/memcached/ volumes_from: - storage env_file: - etc/environment.yml - etc/environment.development.yml storage: build: docker/storage/ volumes: - /storage
您需要为每个服务声明“networks:”:
例如
version: '2' services: app: image: xxxx:xxx ports: - "80:80" networks: - my-network mysql: image: xxxx:xxx networks: - my-network networks: my-network: driver: bridge
然后从你的应用程序configuration,你可以使用“mysql”作为数据库服务器的主机名。
您可以在撰写文件中定义networking,然后将任何服务添加到networking。
https://docs.docker.com/compose/networking/
但是我build议你现在只使用不同的端口来运行。 即8080:80
- 如何在Docker容器中configurationspring cloud oauth2
- Docker端口没有从Docker的教程中映射
- 如何在Mac上映射我的容器中的共享文件夹?
- 能够连接到本地运行在Docker容器中的MongoDB,但不能从另一个容器中运行
- 通过stream浪者或docker安装cabot
- 在docker容器中安装openssh-server,g ++,gdb和gdbserver Visual C ++ for Linux Development + Docker
- 有没有办法在Docker中安装Docker命令行补丁以进行AWS CE部署?
- 如何生成docker图像层DiffID?
- 调整Docker容器的大小