在pycharm中浏览docker容器

时间:2018-10-16 08:33:40

标签: docker pycharm

pycharm中是否有功能可浏览Docker容器? 类似于“浏览远程主机”,但我想浏览一个Docker容器以能够编辑容器中的文件。我目前正在做的是 “ docker exec -ti <container> bash”,然后是nano filename。这样我可以使用nano编辑文件。我试图实现的是能够在pycharm IDE中编辑容器文件。

更新

假设我们正在运行nginx docker映像,并希望与正在运行的容器的/ etc / nginx共享一个卷。请告知我在触发-v命令时应在docker run之后添加什么内容。

2 个答案:

答案 0 :(得分:0)

我对pycharm不够了解,无法知道是否执行了此功能,但是除非您在容器和主机之间创建了一个卷,否则查找此类信息会遇到问题。

要启用此功能,您可以通过添加

来将您的主机Docker计算机的本地目录与容器同步
-v /HOST_DIRECTORY/PATH:/CONTAINER/DORECTORY/PATH
# TO ENABLE THE CURRENT DIRECTORY:
-v $(pwd):/PATH 

Docker oficial Reference:

答案 1 :(得分:0)

好吧,我希望能够做类似的事情,尽管我不认为我仍然可以在PyCharm中找到一种从PyCharm浏览Docker容器的方法,但我仍然找到了一种方法在容器外做类似的事情。

执行此操作的方法是将容器文件/文件夹复制到本地文件系统。现在,当这些文件存在于本地计算机中时,您可以按照典型的步骤打开它们并在PyCharm IDE中进行编辑。

更改并保存后,再次将这些文件复制到容器中(它将用新文件替换旧文件)。您完成了!

至少出于我的目的,这很好。我还是Docker的新手,所以我不知道这是否会破坏某些东西。

现在执行此操作的命令(取自Docker文档)-

要从容器复制到本地系统,请执行以下操作:

import plotly.graph_objects as go
import pandas as pd

fig = go.Figure()

data = {'targets':['targ1','targ2','targ1','targ3','targ2','targ1','targ4','targ3','targ4'], 'features':[1,2,3,4,5,6,7,8,9]}

df=pd.DataFrame(data)

#1-sort the df
df.sort_values(by=['targets'],inplace=True)


#2-plot the violin for each value
#To avoid repeated items in graph and legend
targets=df['targets'].unique().tolist()

for target in targets:

    fig.add_trace(go.Violin(x=df['targets'][df['targets'] == target],
                            y=df['features'][df['targets'] == target],
                            name=target,
                            side='positive',
                            box_visible=True,
                            meanline_visible=True, ))


fig.show()

要将已编辑的文件从本地系统复制回容器:

$ docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-

更多信息可在官方Docker Docs中找到。

相关问题