Elasticsearch在Docker下安装
Elasticsearch安装
单机模式启动
先设置数据卷权限
mkdir -p /opt/volume/elasticsearch/data
chmod -R 777 /opt/volume/elasticsearch/data/
docker run -p 9200:9200 -p 9300:9300 --name elasticsearch \
--restart always \
-v /etc/timezone:/etc/timezone:ro \
-v /etc/localtime:/etc/localtime:ro \
-v /opt/volume/elasticsearch/data:/usr/share/elasticsearch/data \
-v /op...
Zookeeper在Docker下安装
Zookeeper安装
集群模式启动
docker run -p 2181:2181 --name zookeeper \
--restart always \
-v /opt/volume/zookeeper/data:/data \
-e ZOO_MY_ID=1 \
-e ZOO_SERVERS='server.1=192.168.88.131:2888:3888;2181 server.2=192.168.88.132:2888:3888;2181 server.3=192.168.88.133:2888:3888;2181' \
-d zookeeper:3.8.0
单机模式启动
docker run -p 2181:2181 --name zookeeper \
-...
Java方法引用详解
简介
当lambda表达式内部只调用一个方法的时候,在无需引入新的参数时,可以使用方法引用进行简化
详解各类方法引用
有以下代码,需实现将List中的所有字符串转为大写
List<String> stringList = new ArrayList<>();
stringList.add("a");
stringList.add("b");
stringList.add("c");
静态方法引用
public class StringUtils {
public static String upperCase(final String str) {
if (str == null) {
...
Spring Security获取当前登录用户信息
代码实例
通过ThreadLocal实现,可以在线程中的任何位置调用
public class SecurityUtil {
public static int getCurrentLoginUserId() {
User currentLoginUser = getCurrentLoginUser();
return currentLoginUser.getId();
}
private static User getCurrentLoginUser() {
Authentication authentication = SecurityContextHolder.getCont...
Java基本类型包装类的享元模式
基本类型的自动装箱与自动拆箱
以Integer为例
// 自动装箱
Integer integer = 1;
// 自动拆箱
int i = integer;
上方代码实际相当于下方代码
Integer integer = Integer.valueOf(1);
int i = integer.intValue();
自动装箱使用valueOf方法,自动拆箱使用intValue方法
包装类的享元模式
Byte Short Integer Long Character Boolean六个包装类会使用享元模式,在调用valueOf方法时使用缓存。
Byte Short Integer Long 在数字范围$[-128, 127]$使用缓存
public static...
Docker时区调整
启动容器时调整
通过挂载数据卷的方式,让容器内系统与宿主系统时区同步
宿主机设置
ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
echo Asia/Shanghai > /etc/timezone
容器启动挂载数据卷
-v /etc/timezone:/etc/timezone:ro \
-v /etc/localtime:/etc/localtime:ro \
制作镜像时调整
适用于CentOS,在Dockerfile中加入
ENV TZ Asia/Shanghai
RUN ln -fs /usr/share/zoneinfo/${TZ} /etc/localtime &&...
Redis在Docker下的安装
下载Redis镜像
docker pull redis:5.0
创建容器并启动Redis
mkdir -p /opt/volume/redis/conf
touch /opt/volume/redis/conf/redis.conf
docker run -p 6379:6379 --name redis \
--restart always \
-v /etc/timezone:/etc/timezone:ro \
-v /etc/localtime:/etc/localtime:ro \
-v /opt/volume/redis/data:/data \
-v /opt/volume/redis/conf/redis.conf:/etc/redis/redis.conf ...
MySQL在Docker下的安装
下载MySQL镜像
docker pull mysql:5.7
创建容器并启动MySQL
先把默认配置文件复制到挂载数据卷里面
mkdir -p /opt/volume/mysql
docker run --name mysql --rm -e MYSQL_ROOT_PASSWORD=mysqlrootroot -d mysql:5.7
docker cp mysql:/etc/mysql /opt/volume/mysql
mv /opt/volume/mysql/mysql /opt/volume/mysql/conf
docker stop mysql
docker run -p 3306:3306 --name mysql \
--restart always ...
Docker安装以及常用命令
Docker安装
以CentOS 7为例
https://docs.docker.com/engine/install/centos/
SET UP THE REPOSITORY
yum install -y yum-utils
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
INSTALL DOCKER ENGINE
yum install docker-ce docker-ce-cli containerd.io
Start Docker
systemctl start docker
docker run hello...
332 post articles, 34 pages.