抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

SSH is slow to make a connection su vi /etc/ssh/sshd_config add UseDNS no service sshd restarthttp://www.cyberciti.biz/faq/howto-restart-ssh/http://superuser.com/questions/359344/ss...

从原理出发,很多问题都很好解决。注意这3个文件的配置,一般都能配好

Application.java

1
@MapperScan("com.ifkal.demo.**.mapper") // 要配置的是mapper interface所在的包

application.yml

1
2
3
mybatis-plus:
type-aliases-package: com.ifkal.demo.**.entity
mapper-locations: classpath:com/ifkal/demo/**/mapper/xml/*.xml

从原理上讲,使用的是docker网桥在容器间进行数据转发。

安装好frpc之后,代理一个端口,并在配置的local_ip里填写另一个容器的ip地址

1
2
3
4
type = tcp 
local_ip = 172.17.0.3
local_port = 80
remote_port = 32171

然后启动frpc,映射一个外网端口

script
1
docker run -d --name frpc -v /data/frp/frpc.ini:/frp/frpc.ini -p 32171:32171 frpc:0.30.0

从原理上,不需要实际对被代理的172.17.0.3:80做端口外网映射。因为frpc使用的是docker网桥,将访问frpc的外网流量反向代理过去。

官网文档

代码生成器

代码生成器配置

文档理解

代码生成器的名字叫 AutoGenerator

代码生成器配置分为以下几项

  • GlobalConfig 全局配置
  • DataSourceConfig 数据源配置
  • PackageConfig 包配置
  • InjectionConfig 自定义配置(可以猜是不是模板引擎对应的配置了)
  • TemplateConfig 配置模板
  • StrategyConfig 策略配置

注意的事项

  1. DataSourceConfig 必须配置数据库类型

也不全是国内地址,速度比较快的地址吧

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<mirror>    
<id>repo2</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo2.maven.org/maven2/</url>
</mirror>
<!--阿里云镜像-->
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
<mirror>
<id>JBossJBPM</id>
<mirrorOf>central</mirrorOf>
<name>JBossJBPM Repository</name>
<url>https://repository.jboss.org/nexus/content/repositories/releases/</url>
</mirror>

概述

自从docker容器出现以来,容器的网络通信就一直是大家关注的焦点,也是生产环境的迫切需求。而容器的网络通信又可以分为两大方面:单主机容器上的相互通信和跨主机的容器相互通信。而本文将分别针对这两方面,对容器的通信原理进行简单的分析,帮助大家更好地使用docker。

docker单主机容器通信

基于对net namespace的控制,docker可以为在容器创建隔离的网络环境,在隔离的网络环境下,容器具有完全独立的网络栈,与宿主机隔离,也可以使容器共享主机或者其他容器的网络命名空间,基本可以满足开发者在各种场景下的需要。按docker官方的说法,docker容器的网络有五种模式:

  • bridge:docker默认的网络模式,为容器创建独立的网络命名空间,容器具有独立的网卡等所有单独的网络栈,是最常用的使用方式。
  • host:直接使用容器宿主机的网络命名空间。
  • none:为容器创建独立网络命名空间,但不为它做任何网络配置,容器中只有lo,用户可以在此基础上,对容器网络做任意定制。
  • 其他容器:与host模式类似,只是容器将与指定的容器共享网络命名空间。
  • 用户自定义:docker 1.9版本以后新增的特性,允许容器使用第三方的网络实现或者创建单独的bridge网络,提供网络隔离能力。

MySQL8.0.16版本在SQLYog8.14内执行查询均报错1064的解决

script
1
2
3
4
5
6
7
8
9
10
11
echo "执行容器启动";
docker stop java-web;
if [ $? -ne 0 ]; then
echo "未发现需要删除的容器";
else
docker rm java-web;
fi
docker run -it -d -m 700m --memory-reservation 350m --restart=always --name=java-web -v /home/ppp:/home/ppp --privileged=true --net=host -p xxxx:xxxx centosjdk:v1 java -jar -Duser.timezone=GMT+08 /home/ppp/project-0.0.1.jar;
if [ $? -ne 0 ]; then
echo "启动server服务器失败";
fi

使用方法参考:

菜鸟教程-Docker Dockerfile

oldiy/frpc

dockerfile 文件内容

script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
FROM alpine:3.8

WORKDIR /
ARG FRP_VERSION=0.26.0

RUN set -x && \
wget --no-check-certificate https://github.com/fatedier/frp/releases/download/v${FRP_VERSION}/frp_${FRP_VERSION}_linux_amd64.tar.gz && \
tar xzf frp_${FRP_VERSION}_linux_amd64.tar.gz && \
cd frp_${FRP_VERSION}_linux_amd64 && \
mkdir /frp && \
mv frpc /frpc && \
mv frpc.ini /frp/frpc.ini && \
cd .. && \
rm -rf *.tar.gz && \
rm -rf frp_${FRP_VERSION}_linux_amd64

VOLUME /frp

CMD /frpc -c /frp/frpc.ini

新建文件 /dockerfile/Dockerfile ,把上面的内容放进去,然后在这个目录内执行

script
1
docker build --build-arg FRP_VERSION=0.30.0 -t frpc:0.30.0 .

执行镜像

推荐启动命令

script
1
docker run -d --restart always -v /volume1/docker/frpc/conf/frpc.ini:/frp/frpc.ini oldiy/fprc:版本号
script
1
docker run -d --name frpc -v /data/frp/frpc.ini:/frp/frpc.ini -p 80:80 -p 32317:32317 frpc:0.30.0

查询数据库中最新的一条记录

1
SELECT id FROM affair ORDER BY create_time DESC LIMIT 0,1;

删除这条最新的记录

1
DELETE a FROM affair a,(SELECT id FROM affair b ORDER BY b.create_time DESC LIMIT 0,1) b WHERE a.id = b.id;

DELETE a 指的是后面 affair a,子select查询结果重命名为b了。