[英]how to automate docker development environment startup for a multi-service web app (on Linux)
我目前必须执行以下 9 个以上的步骤才能在 Ubuntu 16.04 上使用 Docker 启动我的开发堆栈,然后才能开始编写代码:
我尝试编写一个 shell 脚本来使用gnome-terminal --tab -e "bash -c docker-compose up"
等启动所有内容, gnome-terminal --tab -e "bash -c docker-compose up"
尴尬,并且在尝试将 shell 装入容器并运行某些东西时会失败,例如gnome-terminal --tab -e "bash -c \\"docker-compose exec service1 bash -c rundev.sh \\""
。 我也尝试使用xdotool
,但由于某种原因它无法识别xdotool
shell 终端选项卡。
运行具有两个后端服务的 SPA 并在三个代码库中的每一个上进行本地开发对我来说似乎并不是 Docker 应用程序开发的一个奇怪用例。
有没有人对工具或替代开发环境设置有任何建议以简化事情?
您可以使用 bash 脚本来完成,但正确的方法是 docker-compose。 您需要使用各自的命令创建 2x 服务才能运行。 这是 rails 应用程序的示例。 您的 docker-compose.yml 应该与此类似。
version: '2'
services:
db:
image: postgres
web:
build: .
command: bundle exec rails s -p 3000 -b '0.0.0.0'
volumes:
- .:/myapp
ports:
- "3000:3000"
depends_on:
- db
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.