草庐IT

DOCKER_CONTAINER

全部标签

go - 通过 api 网关的 http 链接的 docker 容器之间的通信

我目前正在开发一个golang网络应用程序,该应用程序目前是一个由许多包组成的应用程序,并且部署在一个单独的docker容器中。我有一个redis实例和一个mysql实例作为单独的容器部署和链接。为了获取它们的地址,我从docker设置的环境变量中拉取它们。我想实现一个api网关模式,其中我有一个服务公开HTTP端口(80用于http或443用于https)称为“api”,它代理对其他服务的请求。其他服务最好不要公开任何端口,而是直接链接到它们所依赖的服务。所以,api会和除mysql和redis以外的所有服务Hook。任何需要验证用户session信息的服务都将与用户服务等相关联。我

go - Docker-Compose:与需要相对导入的 Dockerfiles 组合

首先,这是我的项目层次结构:myproj/-commons1/-com1_file1.go-...-commons2/-com2_file1.go-...-module1/-mod1_file1.go-Dockerfile-...-module2/-mod2_file1.go-Dockerfile-...-docker-compose.yml我想做的是,当module1和module2容器启动时,它们每个都有一份所有commonsNGOPATH中的目录,这样每个目录都可以访问每个commonsN目录公开的公共(public)库。例如,我希望在module1的容器中看到这样的内容:/go

macos - 无法在 OSX 上使用 docker 公开 Web 服务器

我有一个运行网络服务器的docker镜像,我想从我的本地OSX访问它,但我遇到了问题。我用以下命令启动容器:dockerrun-p8000:8000我可以看到日志消息告诉我本地服务器正在监听localhost:8000我能够通过运行获得成功响应:dockerexeccurl"http://localhost:8000/"我在本地OSX上试过的地址是:http://localhost:8000/http://这些都不起作用。有什么建议吗?容器是从golang:1.8构建的Docker版本:Version17.03.1-ce-mac5(16048)MacOS塞拉利昂:10.12.4出于测试

docker - GO - 本地导入不工作

我是golang的新手,我想构建我的第一个简单的网络应用程序。每次我想构建我的源时,我都会收到错误localeimport"./controllers"innon-localpackage"。这是我的文件夹结构:goTest├──Dockerfile├──controllers│  └──IndexController.go└──main.gomain.go文件:packagemainimport("github.com/julienschmidt/httprouter""net/http""log""./controllers")funcmain(){router:=httprout

docker - 如何使用主机上的golang访问安装在docker中的kafka

我需要使用golang来访问kafka,所以我在docker中安装了kafka和zookepper。1.这里是kafka安装脚本:#pullimagesdockerpullwurstmeister/zookeeperdockerpullwurstmeister/kafka#runkafka&zookepperdockerrun-d--namezookeeper-p2181-twurstmeister/zookeeperdockerrun--namekafka-eHOST_IP=localhost-eKAFKA_ADVERTISED_PORT=9092-eKAFKA_BROKER_ID=

docker - 如何通过 websocket 获取 Docker 容器输出?

我正在尝试使用fmt将输出从docker容器发送到控制台,但在尝试这样做时我得到了这个。&{0xc0422a65c0{00}false0x6415a00x641540}我该怎么做?这是我的完整代码。funcmain(){imageName:="hidden/hidden"ctx:=context.Background()cli,err:=client.NewClient("tcp://0.0.0.0:0000","v0.00",nil,nil)iferr!=nil{panic(err)}fmt.Println("Pulling\""+imageName+"\"")_,err=cli.I

docker - os.Lstat 在基于 ubuntu 的 Docker 容器上的挂载卷中失败

我有一个使用go-bindata编译配置的docker容器。我用运行docker容器dockerrun-id\-vconf:/conf\-eCONF="/conf"\my-container然后在docker容器中,我安装go-bindata,然后运行RUNgo-bindata-prefix$CONF-o$GOPATH/src/github.com/my/repo/dir/conf_generated.go$CW_CONF/config输出是bindata:Failedtostatinputpath'/conf/config':lstat/conf/config:nosuchfileo

docker - nsq 无法通过连接到 nsqlookupd 来消费消息

我尝试使用docker-compose来运行nsq,docker-compose.yml如下:version:'3'services:nsqlookupd:image:nsqio/nsqcommand:/nsqlookupdports:-"4160:4160"-"4161:4161"nsqd:image:nsqio/nsqcommand:/nsqd--lookupd-tcp-address=nsqlookupd:4160depends_on:-nsqlookupdports:-"4150:4150"-"4151:4151"nsqadmin:image:nsqio/nsqcommand:

docker run -w 从 go 脚本运行时出现意外错误

我正在编写一个非常简单的脚本,它只是通过docker为go应用程序格式化构建命令。它格式化命令如下:dockerrun--rm-vc:/Users/me/go/src/goapp:/go/src/goapp-w/go/src/goapp-eGOOS=os-eGOARCH=archimagegobuild-v-ooutputname运行它时,我得到以下信息:docker:Errorresponsefromdaemon:theworkingdirectory'/go/src/goapp'isinvalid,itneedstobeanabsolutepath我试过像这样重新格式化它:dock

docker - 设置 PATH 变量并在 Dockerfile 中获取环境

我编写了一个Dockerfile来创建安装了Golang的容器。我有一个运行goversion命令的goss测试,但测试失败,因为路径变量(在Dockerfile中)——出于某种原因——没有保持设置。我也曾尝试从Dockerfile中获取go的.env,但这似乎也不起作用。DockerfileENVGIMME_VERSION"v1.4.0"ENVGO_VERSION"1.4"ENVJENKINS_HOME"/opt/jenkins"ENVPATH="~/bin:${PATH}"ENVPATH=“/opt/jenkins/.gimme/versions/go1.4.linux.amd64