docker-compose.yml
mongo:
image: tutum/mongodb
environment:
- AUTH=no
volumes:
- /Users/andrey/docker/mongodb:/mongo/db
ports:
- "27017:27017"
parser:
image: nazandr/goparser
およびDockerfile goparser
FROM golang:1.8
WORKDIR /app
ADD parser.go /app/
RUN go get github.com/PuerkitoBio/goquery; go get gopkg.in/mgo.v2; go build -o parser
ENTRYPOINT ["./parser"]
Mongoを接続するために使用する必要があるアドレス
以下のようなことができます:
version: '3'
services:
mongo:
image: 'mongo:3.4.1'
ports:
- '27017:27017'
volumes:
- 'mongo:/data/db'
puma:
tty: true
stdin_open: true
depends_on:
- 'mongo'
build:
context: .
dockerfile: Dockerfile.puma
command: bundle exec Rails s -p 3000 -b '0.0.0.0'
ports:
- '3000:3000'
volumes:
- '.:/app'
environment:
- SECRET_KEY_BASE=secret
- MONGO_URL=mongodb://mongo:27017/app_development
volumes:
mongo:
お気づきかもしれませんが、docker-compose.yml
などの接続文字列を使用して、同じmongodb://mongo:27017
ファイルにある他のコンテナーからmongo
コンテナーで実行されているmongoサービスに接続できます。
ホストから接続する場合、上記のようにmongoポートを公開していれば、mongodb://localhost:27017
を使用できます。