VScode作为宇宙第一IDE,最近探索了一些插件的使用,真的是太舒服了,对于命令行来使用docker镜像最难受的事情就是如果要更改镜像里文件,需要在镜像里安装编辑器(我常用的是在Linux里使用vim编译器),然后再使用vim编辑文件然后保存,如果要想在本地传入文件到镜像里,还是需要命令行敲击,对我这种不太习惯命令行的人来说,体验真的太不好的(特别是在使用vim编辑更改代码的时候,真的是太太太难受了)。VScode中提供的docker插件和Remote - Containersms插件,真的完全搞定了这些痛点。(本文对docker的使用还停留在使用镜像开发,所以这个插件的很多功能可能我都没有认识很完全)
1、安装插件docker插件和Remote - Containers插件
在VScode的界面的插件仓库,安装提到的两个插件。
安装完成之后我们可以看到在我们VScode界面最左边的工具栏中出现了 docker的标志,我们可以点进去看到,我们系统里现有的docker容器以及现有的镜像。
接下来就是启动镜像或者容器了。
2、使用VScode启动镜像和容器
接下来在VScode中按F1,接下来输入Remote-Containers,可以看到下面与很多的选项,来启动容器。
以上有很多的选项,其实很多我都不知道是什么(docker的很多知识我还不太精通),因此我常用的选项是Attach to Running Container...,从这个名字也可以知道是进入到正在运行中的容器,这个选项需要先启动容器,具体的启动方法可以看看我的这篇博文(查看,进入,退出docker镜像的方法的第5点)。
我们这里启动一个之前安装好的ubuntu镜像。注意这里启动镜像是在系统终端中而不是在VScode中(我推荐是在系统终端里,而不是在VScode的终端,因为如果你不小心把VScode窗口关掉了,链接就会断掉)。
可以看到我们已经进入到容器ID为:ed24b7d4efd6的容器中了,这是一个ubuntu的Linux系统,大家可以在这个容器里使用基本的Linux操作。现在我们已经启动了容器,接下来在VScode中进入到这个容器中。我们在上一步骤中选择Attach to Running Container...就会出现选择正在运行中的容器,我们选择刚刚开启的ubuntu:2.0。
点击之后VScode已经为我们重新打开了一个窗口,看到窗口的左下角的链接这里已经显示链接到了容器中了。
我们可以打开文件夹看看,我们进入到/home目录下中,看到什么都没有,我们可以创建一个名叫test.py的python文件(当然这个ubuntu里并没有python的编译器,还得在这个镜像中安装python的编译器才能运行,安装方法可以参看如何在Linux系统中安装python)。在容器终端中运行运行下面三行代码下载python3,并安装pip
apt-get update # 更新软件
apt-get install python3 # 下载Python3(会自动在去下载对应版本的python3)
apt-get install python3-pip # 下载pip,以后就可以使用pip install xxx来下载包
当然了VScode最强的就是它的插件,我们在链接好的VScode的窗口中可以看到很多插件都是可以在容器中安装的,安装方式和正常的一样(不过不是所有的插件都可以)
3、通过VScode往镜像中传入和下载文件
接下来是往打开好的镜像里,传入文件。有了刚才安装好的Remote - Containersms插件,我们上传文件只需要拖动到里面就好了。下载的话,就只需要在镜像的对应文件中点击右键,点击下载就可以从镜像中下载到本地了。
4、保存镜像
最后,以上的操作其实都是在修改镜像里的文件,无论是加载插件,下载python编译器,以及文件上传操作。这些东西如果你退出了容器都不会被保存,所以下次进如这个ubuntu:2.0这些东西都要再来一遍,因此我们需要保存这个容器为新的镜像,具体操作可以参看我的这篇博文(查看,进入,退出docker镜像的方法)的第8点