4、为什么使用docker?之Docker建立远程连接
在开发的时候,我们进程需要用到docker。但很多时候我们用的是window作为开发平台,虽然Docker也有window版本的。但window的DockerToolbox
是一款不是很成熟的产品,有很多小伙伴想安装docker都会安装失败,但开发中我们又想用那docker。那么怎么办呢?
其实我们可以使用远程连接来解决。
首先我们要明白DockerToolbox的原理其实也是安装在Oracle VM Virtualbox
虚拟机上的。因为我安装Oracle VM Virtualbox
一直跑不起docker,所以后面我就选择了使用VMware Workstation Pro安装。当然如果你能够使用DockerToolbox安装成功,那么很好,直接用就行。后面的你也不需要去了解了。
安装方式一,在ubuntu系统上安装docker(推荐)
安装步骤我就不仔细说了。步骤是,先安装VMware Workstation Pro 虚拟机,然后在VMware Workstation Pro 虚拟机上安装ubuntu系统,最后在ubuntu系统上安装Docker。
ubuntu系统上安装Docker可以参考我的文章。【为什么使用docker?之一docker安装】
Docker 默认是不支持外部访问,需要支持外部访问需要我们配置,对外暴露端口。
生产环境一把不会对外暴露,这里对暴露只是为了加速开发需要
1、 修改Docker服务启动配置文件
vim /etc/default/docker
文件打开后,添加如下配置。
DOCKER_OPTS="-H unix:///var/run/docker.sock -H 0.0.0.0:2375"
如图所示:
有时候配置了上面的,重启docker守护线程还是没有生效,所以我们需要再给docker.service文件添加配置。
2、配置docker守护线程监控的配置。
vim /lib/systemd/system/docker.service
配置文件打开后,添如下配置:
EnvironmentFile=-/etc/default/docker
ExecStart=/usr/bin/docker daemon -H fd:// $DOCKER_OPTS
3、加载配置
systemctl daemon-reload
4、重启docker守护线程
systemctl restart docker
5、查看配置是否生效
ps aux|grep docker
如果看到有我图中红线的部分,标识配置已经生效。表示我们可以远程访问docker了。
上面搞等了,我们要需要访问。那么我们需要在开发工具(IDEA)上安装一个插件 Docker integration
插件安装 File > Settings > Plugins
搜Docker integration 即可。如下图
安装完成,重启IDEA后。 File > Settings > Build, Execution, Deployment
下 面会多一个Docker的工具
。如下图
然后点击 +
号创建一个连接,我们因为安装在ubuntu上,同时对外暴露了2375端口,所以我们输入宿主机的ip和我们暴露的端口即可连接了。
连接成功后是这样的,如下图,可以看到我们的镜像文件。
这样我就可以利用Docker integration构建镜像,创建仓库,上传镜像等,大大提高了开发效率。更新操作可以参考官方说明:https://www.jetbrains.com/help/idea/docker.html
镜像运行演示
下面我们来演示,运行我们的web:latest镜像。
右击,创建容器
输入容器名字
容器创建成功,右击就可以启动了。
运行效果如图:
知识补充:
如果要在打包的时候就生成镜像文件,那么需要在pom.xml中加入如下插件。
<!--Docker镜像构建插件,如果没装有docker打包会报错,注释即可-->
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>${docker.plugin.version}</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>build</goal>
</goals>
</execution>
</executions>
<configuration>
<!--使用远程的docker,如果是本地的就不需要配置-->
<dockerHost>http://192.168.234.136:2375</dockerHost>
<imageName>${docker.image.prefix}/${project.build.finalName}</imageName>
<dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
安装方式二,直接在VMware Workstation Pro上安装 boot2docker.iso(不推荐)
需要准备的插件:
- VMware Workstation Pro 虚拟机
- boot2docker.iso 镜像
boot2docker.iso 镜像 文件你可以在DockerToolbox解压后找到安装后可以找到,如果你用这种方法能够安装成功,那你后面的也应该不需要花时间去了解。
boot2docker.iso
你可以在到:https://github.com/boot2docker/boot2docker/releases 下载。
这文章,主要是给windows上有需要安装docker开发,但又各种安装DockerToolbox
失败的,希望对你有所帮助。