在docker语句中翻译vagrant语句
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在docker语句中翻译vagrant语句相关的知识,希望对你有一定的参考价值。
我必须在docker命令中翻译一个vagrant文件来设置测试服务器。我没有使用docker的经验,并且对于以下命令我找不到解决方案。
Vagrant.configure("2") do |config|
config.vm.network(:forwarded_port, guest: 5432, host: 5432, host_ip: "127.0.0.1")
我试过像docker network create --gateway 127.0.0.1 forwarded_port这样的东西
但我发现无法设置端口,我不确定“forwarded_port”是否是我的网络名称或后台方法的参数。
我很感激任何帮助
马蒂亚斯
答案
该特定行似乎会导致容器/ VM中的端口转发到主机,它应该与选项docker run -p 127.0.0.1:5432:5432
完全等效(其中这三个部分与您的Vagrant语句中的host_ip
,host
和guest
匹配)。
请注意,Docker环境和典型用法可能与典型的VM设置不同。作为一个具体的例子,你通常不会尝试在应用程序的容器中运行PostgreSQL数据库;你将单独启动一个数据库容器并告诉你的应用程序。典型的命令行设置可能是
docker network create mynet
docker run -p 5432:5432 --net mynet --name db postgres:9.6
docker run -p 8080:8080 --net mynet --name app -e PGHOST=db myapp:20180914
Docker Compose是一个经常使用的工具,用于启动多个一起工作的容器(你可以通过阅读SO问题找到许多app +数据库docker-compose.yml
文件的例子)。
以上是关于在docker语句中翻译vagrant语句的主要内容,如果未能解决你的问题,请参考以下文章
用于复杂 vhost 设置(if 语句等)的 Vagrant / puppet 配置?