Docker还是新手。我已使用可用指令here成功创建了WSO2泊坞窗图像。
我想用自定义CSS文件运行它(wso2am:2.0.0
)。我正在读书,但我遇到了问题。
docker run wso2am:2.0.0
时,Docker镜像运行正常。wso2am
复制了/home/me/Desktop/some-path
的目录结构,并将我的css文件放在正确的目录中。我在Ubuntu 14下。我面临两个问题:
我想在我的wso2am
图像上运行我的目录结构,但不对我的wso2am
图像文件进行永久性更改。也就是说,如果我停止容器/映像,那么来自我的目录结构的复制文件是否不会持久化并不重要。要执行的确切命令是什么?
Docker文档经常提到-t -i
作为访问容器的选项。但是,当我启动docker run -it wso2am:2.0.0 bash
时,我没有获得shell访问权来探索容器的目录结构。它只是转储所有调试语句(日志)。为什么呢?
备注
关于1.,它似乎不是继续进行的权利。我应该复制Dockerfile
并添加说明以复制我的额外文件,然后构建图像。
答案 0 :(得分:1)
您可以尝试以下命令。这将为您提供对正在运行的容器的shell访问权限。
docker exec -it <CONTAINER_ID> /bin/bash
首先获取CONTAINER_ID问题docker ps
命令,该命令将列出所有正在运行的容器及其CONTAINER_ID。
使用-i -t
执行时转储日志的原因是它在前台docker run
期间启动了碳服务器。因此,您无法在此模式下执行任何其他shell命令。我假设你可能已经在docker文件中配置了这种方式。如果这不能回答问题,请分享你的dockerfile。
您是否正在使用来自WSO2 docker repository的dockerfiles?