无法将dockerized spring boot应用程序连接到dockerized postgre sql

我有一个docker-compose.yml有两个服务: version: '2' services: stuffer: container_name: stuffer_container build: . ports: – "8080:8080" environment: – spring.profiles.active=dev depends_on: – postgreDB postgreDB: container_name: postgreDB_container image: "postgres:9.6.2" ports: – "5432:5432" expose: – "5432" environment: – POSTGRES_DB=stuffer – POSTGRES_USER=postgres – POSTGRES_PASSWORD=root123 volumes: – /home/iwaneez/postgreData:/var/lib/postgresql/data 我的应用程序有application-dev.properties: ## Datasource config spring.datasource.driver-class-name=org.postgresql.Driver spring.datasource.url=jdbc:postgresql://postgreDB:5432/stuffer spring.datasource.username=postgres spring.datasource.password=root123 当我运行他们都使用 码头工人组成 我得到连接拒绝异常: stuffer_container | Caused by: org.springframework.jdbc.datasource.init.UncategorizedScriptException: […]

在Docker容器上运行时,没有找到HTTP请求的映射

Spring Security安装Spring Boot api到目前为止运行良好。 当我尝试从Docker容器运行api时遇到问题,当接收到像http:// localhost:8080 / api / v1 / h2-console /这样的请求时,我得到一个没有找到HTTP请求的映射。 这是直接在jvm上运行应用程序的日志一切正常: 2017-07-22 19:28:36.310 DEBUG 6235 — [nio-8080-exec-1] osswaiFilterSecurityInterceptor : Authorization successful 2017-07-22 19:28:36.310 DEBUG 6235 — [nio-8080-exec-1] osswaiFilterSecurityInterceptor : RunAsManager did not change Authentication object 2017-07-22 19:28:36.310 DEBUG 6235 — [nio-8080-exec-1] ossecurity.web.FilterChainProxy : /h2-console/ reached end of additional filter chain; proceeding with […]

为docker store的图片自定义docker-compose.yml

我是新来的码头,我目前正在试验使用https://github.com/diginc/docker-pi-hole 这是非常简单的,如果我把它想象成一个轻量级的虚拟机,我已经使用docker pull diginc/pi-hole来docker pull diginc/pi-hole图像,并通过手动方式手动启动图像 docker run -d \ –name pi-hole \ -p 53:53/tcp -p 53:53/udp -p 8053:80 \ -e TZ=SG \ -v "/Users/me/pihole/:/etc/pihole/" \ -v "/Users/me/dnsmasq.d/:/etc/dnsmasq.d/" \ -e ServerIP="192.168.0.25" \ –restart=always \ diginc/pi-hole:alpine 一切正常,但在他们的文档中,提到使用docker_run.sh 不知道在哪里/如何执行这个,作者也建议使用docker-compose,但是在拉动项目之后,我找不到实际的目录。 目录在哪里? 什么是定制compose.yml的典型方法 如何运行后,我已经完成我的定制?

使用Dockerfile创建图像时发生错误

我创建了一个Dockerfile来创建一个图像来运行基于Web的应用程序。 当我运行该文件,并试图收集mysqlclient == 1.3.7时,发生以下错误。 "mysql_config raise EnvironmentError("%s not found" %(mysql_config.path,)) EnvironmentError: mysql_config not found Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-ME9Fq7/mysqlclient/ You are using pip version 8.1.1, however version 9.0.1 is available. You should consider upgrading via the 'pip install –upgrade pip' command. " 这是Dockerfile ############################################################ # Dockerfile to build Python […]

使用Docker –net = host并通过主机名连接到其他容器

我想设置一个Nginx的反向代理,工作正常,但如果我设置network_mode: "host"它停止工作,因为它无法找到其他码头集装箱的主机名。 我有一个web容器和一个nginx容器。 我得到以下错误: reverseproxy_1 | nginx: [emerg] host not found in upstream "web:80" in /etc/nginx/nginx.conf:10 reverseproxy_1 | nginx: [emerg] host not found in upstream "web:80" in /etc/nginx/nginx.conf:10 我的Nginx conf文件是: worker_processes 1; events { worker_connections 1024; } http { sendfile on; upstream docker-web { server web:80; } server { listen 8080; location / { proxy_pass […]

我怎样才能配置从码头集装箱去sdk和GOPATH?

我试图配置与Jetbrains Gogland和码头工人组成golang项目。 我想使用GOPATH并从码头集装箱出发。 我的意思是从容器中使用去安装自动完成等没有在本地机器上安装golang。 项目结构是: project root docker-compose.yml back| Dockerfile main.go some other packages front| all the front files… 之后,我想将我的back文件夹部署到docker容器中的/go/src/app 。 问题是,当我开发项目时,我不能使用自动完成,因为这个项目不在我的本地GOPATH中,并且在Docker容器和本地机器上有不同的golang版本,我已经阅读了这个问题,但是我仍然可以“解决我的问题。

从Docker容器访问Windows机器的文件

我在Windows 10操作系统中安装了docker。 我正在Docker容器中运行一个python脚本,它从磁盘读取文件,并在文件末尾添加少量文本。 现在需要从Windows 10中读取文件并对其执行相同的操作。 docker可以从Docker运行的操作系统上读取文件吗?

docker cp命令是如何工作的

命令docker cp用于将文件从主机复制到容器,反之亦然。 即使容器处于停止状态或退出,此命令仍然有效。 Docker使用分层的方法来存储图像,当我们使用这个图像运行容器时,它会在上面创建一个更多的可写层,它负责处理容器内所做的所有更改。 一旦我们离开容器,这个可写层就消失了。 在这里,我无法知道,docker在哪里存储docker cp命令可用的那个容器的数据,甚至在容器退出之后。 我搜索/var/lib/docker目录,但没有运气。 我正在使用docker的devicemapper存储驱动程序centos7.2。 有没有人有任何想法?

使用Docker Rails 5 Postgres应用程序的Nginx路由

当我尝试将Dockerize Rails应用程序放入容器并在主机上运行Nginx时,出现了外部路由问题。我无法在rails应用程序容器中访问/ public。 相反,我可以在主机上看到/var/www/app/public 。 我如何从Nginx路由到Docker Rails容器? nginx.conf: upstream puma_app { server 127.0.0.1:3000; } server { listen 80; client_max_body_size 4G; keepalive_timeout 10; error_page 500 502 504 /500.html; error_page 503 @503; server_name localhost app; root /var/www/app/public; try_files $uri/index.html $uri @puma_app; location @puma_app { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_redirect off; proxy_pass http://puma_app; # limit_req zone=one; […]

将主机指向具有静态域名的Docker容器

我已经在Docker容器中设置了一个Web服务,它只响应对http://pouac.localhost发出的HTTP请求。 所以,当前,当我想测试这个Docker容器时,我必须手动将该容器的IP地址添加到/etc/hosts的/etc/hosts文件中。 这个IP地址从一个运行到另一个运行,所以我需要每次都得到它: docker inspect mycontainer …然后将其添加到/etc/hosts 。 它有效,但这是一个真正的痛苦。 我很确定有一个更好的方法来做到这一点。 如果我理解正确, Docker包含一个DNS服务器 。 所以我想我可以尝试将主机指向Docker DNS,这将是一个开始……但是我不知道在哪个地址运行Docker DNS。 有关信息,主机运行的是Ubuntu 16.04,而Docker容器则使用docker-compose启动。