我正在尝试学习服务器端 swift 并成功通过 Heroku 作为 Docker 容器进行部署,但是在使用 couchdb 时我正在努力让我的数据库工作。数据库在本地运行良好,但我似乎无法让它在 Docker 容器中运行。
我的电流Dockerfile
如下:
FROM ibmcom/swift-ubuntu:5.0.2
WORKDIR /ServerSideSwift
COPY . .
RUN swift build -c release
CMD .build/release/ServerSideSwift
因此,为了向其中添加 couchdb,我尝试创建一个docker-compose.yml
看起来像这样的:
version: "3.7"
services:
web:
build:
context: .
dockerfile: Dockerfile
ports:
- "8080:8080"
links:
- db
db:
image: couchdb
ports:
- "5984:5984"
构建图像工作正常并且运行也很好,但是当它尝试创建一个新数据库(在 swift 中)时,我收到了我在 swift 代码中输入的错误,这些错误显示 couchdb 没有运行,因此无法创建任何新数据库。
谁能看到我哪里出错了?
更新 3:我的当前docker-compose.yml
:
version: "3.7"
networks:
app-net:
driver: bridge
services:
app:
build: .
ports:
- "8080:8080"
networks:
- app-net
db:
image: couchdb
ports:
- "5984:5984"
environment:
COUCHDB_USER: Test
COUCHDB_PASSWORD: test
networks:
- app-net
首先,将连接字符串从“localhost”更改为“DB”以使用 Docker DNS。然后将连接参数更改为不使用加密。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句