这就是我的docker-compose.yml的样子。
nginx:
container_name: 'nginx'
image: 'nginx:1.11'
restart: 'always'
ports:
- '80:80'
- '443:443'
volumes:
- '/opt/nginx/conf.d:/etc/nginx/conf.d:ro'
links:
- 'anything'
现在,我需要通过shell脚本(在ubuntu服务器上)添加一些内容。我不太确定是否有可能:
- 将新元素添加到
nginx/links
(如果不存在) newthing
如果不存在newthing-block,则附加块
新内容应如下所示:
nginx:
container_name: 'nginx'
image: 'nginx:1.11'
restart: 'always'
ports:
- '80:80'
- '443:443'
volumes:
- '/opt/nginx/conf.d:/etc/nginx/conf.d:ro'
- '/etc/letsencrypt:/etc/letsencrypt'
links:
- 'anything'
- 'newthing'
newthing:
container_name: foo
image: 'newthing:1.2.3'
restart: always
hostname: 'example.com'
您能举个例子吗?
—
user3142695'1
尽管使用Shell在技术上是可行的,但最好使用具有实际yaml库的语言。
—
jordanm
我建议您检查一下
—
phk
ruamel.yaml
Python库。
我认为这是值得一提的是链接将从码头工人在将来被移除的原有功能:docs.docker.com/compose/compose-file/#links
—
的MikaelKjær的
sed
,awk
并regular expressions
更新文件。