我安装了一个postgres docker容器和Spring启动应用程序作为另一个docker容器。但是Spring Boot应用程序无法连接到数据库。
这是我的数据库连接代码:
# name is used in quartz scheduling initial table creation in db
spring.datasource.name = postgresql
# postgresql, mysql, all, h2 etc, default is all
# spring.datasource.platform = postgresql
spring.datasource.url = jdbc:postgresql://<public_ip_address>:5432/production_db
spring.datasource.username = postgres
spring.datasource.password = 1234
请注意,数字海洋也有私人IP地址。我也试过。即使有localhost和127.0.0.1
我运行postgres如下:
docker run -d --rm -p 5432:5432 --name pg-docker -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=1234 -v $HOME/docker/volumes/postgres/:/var/lib/postgresql/data postgres:11.0
psql -U postgres -h localhost -c "CREATE DATABASE production_db"
我的Dockerfile:
FROM openjdk:8-jdk-alpine
VOLUME /tmp
COPY build/libs/*.jar app.jar
EXPOSE 8081
ENTRYPOINT ["java","-jar","/app.jar"]
以下是docker-compose.yml文件。
version: '3'
services:
postgresql:
image: "postgres:11.0"
container_name: "postgresql"
ports:
- "5432:5432"
volumes:
- $HOME/docker/volumes/postgres/:/var/lib/postgresql/data
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=1234
api:
build: .
container_name: "api"
ports:
- "8081:8081"
depends_on:
- postgresql
当我尝试docker-compose up--build时,它也显示连接错误。数据源行:spring.datasource.url=jdbc: postgresql://postgresql: 5432/production_db
在docker命令中使用EXPOSE 5432来运行Postgres容器。默认情况下它不会公开端口。
请使用docker compose部署应用程序和数据库,然后使用docker compose服务名称而不是public\u ip\u地址。
类似地,我在这个示例应用程序中使用了mysql:https://github.com/jinternals/micrometer
datasource:
url: jdbc:mysql://mysql:3306/micrometer
username: user
password: password
我在Digital Ocean上安装了一个基于Ubuntu的droplet,安装了Docker,并在那里上传了我的Docker图像。我桌面上的tar文件。我上传了这张图片。tar文件进入/home/newuser/app目录。接下来,我加载了图像。使用以下命令进行tar: 图像已加载。我查过了。 当我运行以下行时,我看不到我的图像应用程序在公共IP上连接到我的水滴实例: 或 你们是怎么处理这件事的
我遵循这个指南,在Ubuntu(LAMP stack)上为Digital Ocean设置Laravel 5.1。当我尝试通过单击鼠标访问我的Laravel应用程序时,我得到: 我先安装Composer,然后安装Laravel,然后安装目录在我的路径中“这样您的系统就可以找到laravel可执行文件。” : 然后按照这个指南改变我的webroot,这样我就可以像Laravel期望的那样从提供服务:
我在nginx代理的Digital Ocean Droplet中有几个项目,我想用pm2开始所有的项目,我看到我可以用一个带有名称和脚本的。json文件来实现这一点,但它似乎不起作用,这是我所做的: 我的droplet目录和项目: 项目1 项目2 pm2-apps.json pm2-apps.json 然后我跑 但是当我输入url时,项目似乎没有正确安装,如果我在项目文件夹中的中分开运行每个项目,
我有Kafka Streams java应用程序启动并运行。我试图使用KSQL创建简单的查询,并使用Kafka流来实现复杂的解决方案。我希望将KSQL和Kafka流作为Java应用程序运行。 我打算通过https://github.com/confluentinc/ksql/blob/master/ksqldb-examples/src/main/java/io/confluent/ksql/em
海洋是3D地球表面表示海洋的特定区域,在Gio地球表面,海洋是最暗的区域。海洋的默认亮度是0.5。 可以通过 configure() API来设置海洋的亮度,具体设置方式如下所示: controller.configure({ brightness: { ocean:0.8 } }); 也可以通过 adjustOceanBrightn
我使用Realm对象服务器运行在数字海洋的最低选项(5美元/月)在Ubuntu服务器上。我一直收到连接拒绝错误;我不知道错误是来自DO还是ROS。 我不是Ubuntu方面的专家;因此,我进入并清除了/var/log中的所有日志,并尝试重新连接。当有大量记录需要同步时,我不断收到以下错误(在iOS上,客户端): 在ubuntu端,清除所有日志后,当我尝试连接到服务器时,会再次创建一个日志,,以下是内