feu*_*eux 3 docker nsenter linux-containers
背景
我已经构建了一个npm服务器(sinopia)docker镜像(https://github.com/feuyeux/docker-atue/blob/master/docker-images/feuyeux_sinopia.md),并且在CMD行中,它将运行启动每次生成容器时都会生成.sh.
CMD ["/opt/sinopia/start.sh"]
Run Code Online (Sandbox Code Playgroud)
这个shell将动态创建一个yaml文件.
sed -e 's/\#listen\: localhost/listen\: 0.0.0.0/' -e 's/allow_publish\: admin/allow_publish\: all/' /tmp/config.yaml > /opt/sinopia/config.yaml
Run Code Online (Sandbox Code Playgroud)
题
我希望我可以在容器运行时编辑这个config.yaml,因为我希望内容应该按需更改.
如上所示,第一行运行一个sinopia容器,在这个容器中,有/opt/sinopia/config.yaml.但我不知道如何获取此运行容器并编辑和检查此文件.如果我按照sinopia-ls的方式行,那么就有一个新的容器运行而不是之前运行的容器.
多谢你们!
答案(详情见下文我接受的内容)
sudo nsenter --target $PID --mount --uts --ipc --net --pid
root@58075317e47d:/# ls /opt/sinopia/
config.yaml config_gen.js start.sh storage
root@58075317e47d:/# cat /opt/sinopia/config.yaml
Run Code Online (Sandbox Code Playgroud)
Mic*_*arf 11
使用docker 1.3,有一个新命令docker exec.这允许您输入正在运行的泊坞窗:
docker exec -it <container-id> bash
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6567 次 |
| 最近记录: |