Don't Stop


  • 首页

  • 标签

  • 分类

  • 关于

Docker Dockerfile构建镜像

发表于 2018-11-12 | 分类于 Docker

前言

在前面构建自己的镜像时,我们是利用了commit命令,在初始容器中做一些改动变成新的容器后,再commit到本地的镜像仓库中。

除了上述的方法,还可以使用dockerfile来完成自定义镜像的操作。可以简单认为dockerfile就是这个容器的来由记录,即这个容器的是从哪个初始容器来,又是经历了哪些变化,这些信息在dockerfile中都被记录着。

阅读全文 »

Docker构建自己的镜像

发表于 2018-11-12 | 分类于 Docker

前言

有时候,生产环境中的所需的镜像在hub上找不到,需要我们自己去自定义好这个镜像,然后将这个镜像保存在自己的hub上,便于以后的pull。所以这篇主要来讲解一下然后构建自己的镜像,然后上传至私有hub。

阅读全文 »

Docker 部署web项目

发表于 2018-11-08 | 分类于 Docker

前言

在上一篇简单的介绍了一下docker的使用,这篇将用一个web项目基于docker部署,来直观的感受docker的便捷和高效。

阅读全文 »

Docker初体验

发表于 2018-11-08 | 分类于 Docker

前言

容器技术在当前非常流行,而且在学习Istio的过程中,需要有k8s和docker的基础。它们的关系如下:k8s是用来管理编排docker的,可以更方便的部署出容器集群。而Istio是基于k8s环境下,是一种服务网格的实现。

所以docker无论是技术栈上的要求,还是响应技术潮流,都是必须要掌握的。这篇就以docker的hello world来开篇,简单来记录一下我对docker使用上的认识。docker的优点与应用场景这里就不多阐述。实验环境(Ubuntu16.04.1+ docker 18.06.1-ce)

没有实验环境的,可以使用docker在线网站。

阅读全文 »

基于MySQL Protocol实现自己的数据库驱动

发表于 2018-11-01 | 分类于 实现自己的数据库驱动

前言

很多时候我们并不清楚程序是如何和数据库进行交互的,比如简单的查询命令,程序是如何从MySQL中获取的呢?

在这个博客的系列里,我基于了MySQL网络协议,利用Wireshark解析MySQL的packe,实现了自己的数据库驱动。在实现功能,借鉴了 sea-boat的packet实现,在其基础上进行功能块的编写,如查询功能可以看下面列子:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package com.jiagu.mysql.CURD;

/**
* Created by jintx on 2018/11/1.
*/
public class QueryTest {

public static void main(String args[]) throws Exception{
Query query = new Query();
String host = "192.168.43.97";//数据库ip地址
int port = 3306;//端口号
String user = "root";//用户名
String password = "tdlab401";//密码
String dataBase = "data";//操作的数据库名
String sqlStr = "SELECT name,author FROM `paper` limit 0,2;";//查询语句
query.query(host,port,user,password,dataBase,sqlStr);//输出结果
}

}

结果:

一种基于混沌的敏感数据加密算法,司德成,

水下无线电能传输和信号接口系统设计和分析,周世鹏,

阅读全文 »

实现自己的数据库驱动——Packet的write(十)

发表于 2018-10-31 | 分类于 实现自己的数据库驱动

前言

上一篇讲解如何将服务端中代码解析到具体的类中,这篇主要来讲解如何将一个包的数据,按照协议的要求发出。

如服务端需要接受Client的一个Auth,格式要求如下:

阅读全文 »

实现自己的数据库驱动——Packet的read(九)

发表于 2018-10-31 | 分类于 实现自己的数据库驱动

前言

这篇主要用代码去实现,如何将Server端反馈回来的包,进行解析。如下图,完成三次握手之后,服务端发送了一个handshake packet。我们要做的是定义好handshake的类,以及实现将字节到类的转化。

阅读全文 »

实现自己的数据库驱动——字节位运算细节(八)

发表于 2018-10-30 | 分类于 实现自己的数据库驱动

前言

前面几篇主要是讲解各个MySQL协议通信过程中涉及到的Packet。后面主要是讲解如何根据Packet的结构,将需要的字节按照一定的顺序写入Packet中。这部分涉及到Java 的字节运算。

阅读全文 »

实现自己的数据库驱动——MySQL协议Quit包解析(七)

发表于 2018-10-29 | 分类于 实现自己的数据库驱动

前言

用户端想要断开连接时,需要往服务端发送一个Quit Packet。这个包比较简单,下面直接看其数据结构。

阅读全文 »

实现自己的数据库驱动——MySQL协议Result Set包解析(六)

发表于 2018-10-29 | 分类于 实现自己的数据库驱动

前言

上一篇中当执行了INSERT、UPDATE or ALTER TABLE操作时,会生成对应的OK/Error包。而我们这篇要说明的是SELECT结果Result Set的解析。Result Set会涉及到了多个不同结构的包,有Column_Count、Column_Def、EOF、Row。

阅读全文 »
1…678…11
JinTx

JinTx

104 日志
26 分类
65 标签
github E-Mail CSND
© 2020 JinTx
由 Hexo 强力驱动
|
主题 — NexT.Mist v5.1.4