docker - 将 docker link 命令转换为 docker-compose.yml
问题描述
是否可以将以下命令转换为docker-compose.yml
文件?
$ docker run --name venns-mongo -v /mnt/volume1/orthovenn/mongodata:/data/db -d -p 27017:27017 mongo:latest
$ docker run -d --name venns -p 6001:6001 --link venns-mongo -v /mnt/volume1/orthovenn/venn2data:/data/orthovenn2 -e MONGO_HOST=venns-mongo lufang0411/orthovenn2:latest
$ docker run --name venns-front -p 9999:80 --link venns -v /mnt/volume1/orthovenn/venn2data:/data/orthovenn2 -e API_HOST=venns -e API_PORT=6001 -d lufang0411/orthovenn2-front:latest
解决方案
在这里,我有 2 个与您的命令相关的 docker-compose 版本:
# Exact convert
version: '3'
services:
mongo:
image: mongo:latest
container_name: venns-mongo
volumes:
- /mnt/volume1/orthovenn/mongodata:/data/db
ports:
- 27017:27017
orthovenn2:
image: lufang0411/orthovenn2:latest
container_name: venns
volumes:
- /mnt/volume1/orthovenn/venn2data:/data/orthovenn2
ports:
- 6001:6001
environment:
- MONGO_HOST=venns-mongo
front:
image: lufang0411/orthovenn2-front:latest
container_name: venns-front
volumes:
- /mnt/volume1/orthovenn/venn2data:/data/orthovenn2
ports:
- 9999:80
environment:
- API_HOST=venns
- API_PORT=6001
# recommended
version: '3'
services:
db:
image: mongo:latest
volumes:
- /mnt/volume1/orthovenn/mongodata:/data/db
ports:
- 27017:27017
orthovenn2:
image: lufang0411/orthovenn2:latest
volumes:
- /mnt/volume1/orthovenn/venn2data:/data/orthovenn2
ports:
- 6001:6001
environment:
- MONGO_HOST=db
front:
image: lufang0411/orthovenn2-front:latest
volumes:
- /mnt/volume1/orthovenn/venn2data:/data/orthovenn2
ports:
- 9999:80
environment:
- API_HOST=orthovenn2
- API_PORT=6001
请注意,link
不推荐使用 docker,默认情况下使用 docker-compose 所有容器都将放在 default
网络中并且可以相互访问
推荐阅读
- c++ - 可能的 MSVC 编译器错误
- ios - 在 React Native 应用程序中使用 Firebase 身份验证时,auth.default.signInWithEmailAndPassword 不是一个函数
- java - request.getRemoteUser() 中的字符编码
- c# - 创建字典字典
存储在 Azure 表存储中 - c - 包含具有两个指针的节点结构的图
- visual-studio-code - VSCode Intellisense - 如何防止箭头键在建议中循环,直到按下 Tab
- sql-server - 如果一个日期为 NULL,则比较日期
- python - 查找 pandas 数据框中所有行对,时间在 60 秒内
- node.js - 为什么 node.js 为 end 函数获取内存?
- acumatica - 将 Acumatica 字段的列长度增加到 nvarchar(max)