IDEA中使用Docker: 图形化 or 命令行 ,你更稀罕那个??
Docker简介:
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口。
我的理解:对应用更加深层次的封装,是应用完全不受真实运行环境的影响!
CMD: 命令式的Docker (默认访问的2375端口)
构建镜像:
mvn clean package docker:build- 运行镜像:
docker run -p 8888: 8888 -t 镜像名称
填坑:
问题1:本地和Docker中起项目,占用主机相同的port,但是不报错,还都能运行???
因为Docker端口映射所说的宿主机,并不是指本地的机器;可以简单认为,Docker是先在本地的机器上安装了一个虚拟机,这个虚拟机才是所说的宿主机;
Docker上所有的应用都是运行在这个宿主机上的。
问题2:
Docker进程间通信,服务间的调用
举个栗子:实现服务注册的功能
eureka-server部署使用name参数指定名字: docker run --name eureka-server【容器名字】 -p 8888:8888 镜像名
eureka-client中部署使用link参数链接注册服务器: docker run --link eureka-server【要链接的容器名字】:eureka-server 【配置中写的注册服务器的地址】 -p 8801:8801 镜像名
注:link的功能相当于做一个映射和绑定
GUI:图形式的Docker
推荐博文:http://www.solinx.co/archives/875
安装Docker插件

Docker全局配置:

编写Dockerfile文件: 略
dockerfile基础命令学习:http://www.cnblogs.com/wenbronk/p/6387830.html
Dokcer Deployment运行配置:


发布:

访问验证
过程填坑:
报错:
Connect to localhost:2375 [localhost/127.0.0.1, localhost/0:0:0:0:0:0:0:1] failed: Connection refused: connect
原因:其实是由于你没有安装docker server,用maven插件编译生成docker镜像的时候,默认访问的server是本机的2375端口
解决方法:
你可以在自己电脑上安装一个docker ,参考:http://www.cnblogs.com/zhaojinxin/p/7580881.html
或者
在远程服务器上安装docker:
第一步:
(亲测有效)Mac for docker 开启Remote API(远程接口) : https://my.oschina.net/u/2306127/blog/777695
总得来说三种方式:
方式一:运行docker-proxy镜像:docker run -p 2375:2375 -v /var/run/docker.sock:/var/run/docker.sock -d -e PORT=2375 shipyard/docker-proxy
解释:运行docker-proxy,将docker-proxy镜像的2375端口映射为本地的2375端口;
方式二:图形化设置

Ubuntu上修改配置:http://www.cnblogs.com/zqifa/p/linux-docker-3.html
(亲测有效)CentOs7上修改配置:http://blog.csdn.net/faryang/article/details/75949611
注: 如果还是连接不上,可是时防火墙的原因:
防火墙开放该端口:
firewall-cmd --zone=public --add-port=2375/tcp --permanent
重启防火墙
firewall-cmd --reload
IDEA中使用Docker: 图形化 or 命令行 ,你更稀罕那个??的更多相关文章
- Oracle 图形化以及命令行安装
@(Oracle)[Install] Oracle 安装 相关版本说明 不同版本的Oracle需要安装在特定的系统版本之上. 如Oracle 11gR2的11.2.0.1.0需要安装在CentOS 5 ...
- Docker 图形化页面管理工具使用
一.Docker图形化工具 docker 图形页面管理工具常用的有三种,DockerUI ,Portainer ,Shipyard .DockerUI 是 Portainer 的前身,这三个工具通过d ...
- Docker图形化工具——Portainer
目标搭建docker-ui 一.Docker图形化工具 docker 图形页面管理工具常用的有三种,DockerUI ,Portainer ,Shipyard .DockerUI 是 Portaine ...
- 树莓派安装docker并使用docker图形化工具portainer
配置环境 系统:Raspbian 11(64位) 设备:树莓派4B 一.安装docker 1.安装 curl -fsSL https://get.docker.com -o get-docker.sh ...
- C#中如何获取其他进程的命令行参数 ( How to get other processes's command line argument )
Subject: C#中如何获取其他进程的命令行参数 ( How to get other processes's command line argument )From: jian ...
- 命令行下更好显示 mysql 查询结果
在 linux命令行中,直接进行 mysql查询时,有时查询的结果字段较多,显示的效果就很不友好: 但 mysql支持以另一种方式来显示结果,如下: 普通是 SQL 是以分号 ; 结束的,如果改为 \ ...
- 如何让 Windows 上的命令行工具更好用
侯爵老师视频详解:如何让 Windows 上的命令行工具更好用 很多 Windows 用户在打开这个小黑窗时,都会情不自禁的感慨,「实在是太丑了--」 实际上如果你用的是 Windows 8 或 Wi ...
- 命令行下更好显示 postgresql 的查询结果
之前在用 mysql 的时候发现,当列数特别多的时候,在 linux 命令行下,显示不太友好, 然后可以通过将 sql 末尾的 “:” 改为 “\G” 来处理,详情看 命令行下更好显示 mysql 查 ...
- 『现学现忘』Docker基础 — 24、Docker图形化管理工具Portainer
目录 1.Portainer介绍 2.Portainer安装启动 3.Portainer初始化配置 4.Portainer汉化 1.Portainer介绍 (1)Portainer 是一款轻量级的图形 ...
随机推荐
- 在Android上运用Anko和Kotlin开发数据库:SQLite从来不是一件轻松的事(KAD25)
作者:Antonio Leiva 时间:Mar 30, 2017 原文链接:https://antonioleiva.com/databases-anko-kotlin/ 事实告诉我们:在Androi ...
- 【SpringCloud】 第十篇: 高可用的服务注册中心
前言: 必需学会SpringBoot基础知识 简介: spring cloud 为开发人员提供了快速构建分布式系统的一些工具,包括配置管理.服务发现.断路器.路由.微代理.事件总线.全局锁.决策竞选. ...
- 41. Maximum Subarray
Description Given an array of integers, find a contiguous subarray which has the largest sum. The su ...
- JSP页面无法使用EL导致"java.sql.SQLException: No suitable driver found for ${snapshot}"的问题
使用JSTL来连接mysql,这个问题折腾了半天,老以为是Mysql驱动的问题,还好最后偶然发现了是EL表达式识别不了,报错: javax.servlet.ServletException: java ...
- 为什么安装beego和框架的失败 以及常用命令
1.安装了几个版本,版本之间相互影响. 把没用的删掉 2.网上找的教程存在问题. 都是相互抄袭.最权威的还是官网. which go rm -rf test/ echo path 获取路径 vim ~ ...
- ServiceStack.Ormlit sqlserver枚举类型映射字段类型为varchar
请当枚举类型上面加上[Flags]特性就可以了.
- OSG学习:响应键盘鼠标示例
示例功能:示例里面有两个模型,一个是牛,另一个是飞机.鼠标右键时牛和飞机都隐藏,鼠标左键双击时牛和飞机都显示,按键盘上面的LEFT键,显示牛,按键盘上面的RIGHT键显示飞机.其中显示与隐藏节点使用的 ...
- java.lang.ClassNotFoundException: com.google.gson.Gson 问题解决
我是这么解决:把gson.jar放到WEB-INF/lib目录下. 放在其他目录就会报错.
- 微信支付java
直接上代码: 1.支付配置PayCommonUtil import com.legendshop.payment.tenpay.util.MD5Util; import com.legendshop. ...
- InnoDB高并发原理
一.并发控制 为啥要进行并发控制? 并发的任务对同一个临界资源进行操作,如果不采取措施,可能导致不一致,故必须进行并发控制(Concurrency Control). 技术上,通常如何进行并发控制? ...