Dockerfile构建镜像

Dockerfile镜像描述文件

Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。

Docker通过读取Dockerfile中的命令自动生成镜像。

构建镜像命令:
docker build -t 机构/镜像名<:tags> Dockerfile目录

构建示例一:第一个Dockerfile

镜像描述:基于tomcat镜像,将docker-web发布至webapps目录下。

根据Dockerfile构建镜像

Docker容器间通信

Docker中容器间的通信方式有哪些?

1.通过容器ip访问
容器重启后,ip会发生变化。所以通过容器ip访问不是一个好的方案。

2.通过宿主机的ip:port访问
通过宿主机的ip:port访问,只能依靠监听暴露出的端口的进程来进行有限的通信。

3.通过link建立连接(官方不推荐使用)

4.通过Docker桥接网络实现容器间相互访问(推荐)

第1/2种方式比较简单,在此主要讲述下第3/4种方式。

通过link建立连接

MySQL数据库全量备份脚本(Windows版)

MySQL数据库全量备份bat(Windows)脚本,备份核心逻辑:

  1. mysqldump全量导出数据库文件;
  2. 压缩备份文件;
  3. 备份脚本由Windows计划任务定时触发;

创建Windows计划任务核心命令如下:

schtasks /create /F /tn %taskName% /tr %cd%\bin\mysql_backup.bat /sc daily /st 18:00

详细脚本如下:

常见消息中间件MQ介绍及对比

常见消息中间件MQ介绍

ActiveMQ
Apache下的一个子项目。使用Java完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现,少量代码就可以高效地实现高级应用场景。可插拔的传输协议支持,比如:in-VM, TCP, SSL, NIO, UDP, multicast, JGroups and JXTA transports。RabbitMQ、ZeroMQ、ActiveMQ均支持常用的多种语言客户端 C++、Java、.Net,、Python、 Php、 Ruby等。

Kafka
Apache下的一个子项目,使用scala实现的一个高性能分布式Publish/Subscribe消息队列系统,具有以下特性: