今天接到任务,需要对一个web项目进行结构整改,该项目运行再tomcat中,启动的时候,一个报端口被占用 运行命令查看1099端口,发现没有程序再使用这个端口 netstat -ano | findstr 1099 最后发现是因为自己装了一个docker,启用了hype-v占用了端口 netsh interface ipv4 show excludedportrange protocol=tcp 此时更换一个没有被占用的端口、或者关闭hype-v、或者让hype-v不占用这个端口都是可行的。 可以使用下面的命令开放该端口: netsh int ipv4 add excludedportrange protocol=tcp startport=8080 numberofports=1 参考:https://github.com/docker/for-win/issues/3171 有更新! hype-v占用端口,导致idea无法运行tomcat应用 程序人生
1.日志设置和查看 { "registry-mirrors": [ "https://h0fcunc7.mirror.aliyuncs.com" ], "insecure-registries": [], "debug": true, "experimental": false, "log-driver": "json-file", "log-opts": { "max-size": "200m", "max-file": "1" } } log-driver json-file #日志驱动 log-opt max-size=[0-9+][k|m|g] #文件的大小 log-opt max-file=[0-9+] #文件数量 2.容器的日志查看 查看所有日志 docker logs mysql7 查看日志详情 docker logs mysql7 --details 实时输出日志 docker logs mysql7 --follow 查看自某个时间以来的日志或者最近几分钟内的日志 docker logs mysql7 --since 2020-05-25T10:30:00 d.... 有更新! docker查看日志 程序人生
1.拉取镜像 docker pull nginx 2.运行镜像 docker run --name nginx -d -p 10080:80 -v D:\download\docker\nginx\conf\nginx.conf:/etc/nginx/nginx.conf -v D:\download\docker\nginx\html:/etc/nginx/html -v D:\download\docker\nginx\logs:/var/log/nginx nginx 挂在的目录主要有三个,一个是conf目录,一个是nginx下的静态资源目录,还有日志 不同的nginx镜像在目录结构上可能有所差异,具体的可以先启动一个镜像,然后进入镜像查看决定要挂载的具体目录 3.nginx配置参考 #user nobody; worker_processes 4; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; .... 有更新! docker安装nginx 程序人生
项目使用hibernate作为和数据库交互的框架,使用docker安装mysql,由于我在实体类的注解中@Table注解中的name都是大写,但是我在数据库里面建立的表都是小写,而docker安装的myslq默认区分大小写 查询的时候hibernate获取的表名称是实体中定义的表名称,是大写的,但是我的数据都在小写的表里,所以查询不到数据,此时可以通过设置mysql不区分大小写来解决这个问题,如果是在linux中启动的mysql需要修改lower_case_table_names=1来忽略大小写,但是docker中,启动的时候就可以设置这个参数: docker run --name mysql-5.5 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5.5 --lower_case_table_names=1 有更新! docker下mysql表名大小写区分的问题 程序人生
拉取镜像 docker pull mysql:5.7.40 创建文件夹 mkdir -p /hjp/mysql/5.7.40/log mkdir -p /hjp/mysql/5.7.40/data mkdir -p /hjp/mysql/5.7.40/conf 创建配置文件 vi /hjp/mysql/5.7.40/conf/custom.cnf 内容如下 [client] default-character-set=utf8mb4 [mysql] default-character-set=utf8mb4 [mysqld] init_connect="SET collation_connection = utf8mb4_unicode_ci" init_connect="SET NAMES utf8mb4" character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci skip-character-set-client-handshake skip-name-resolve explicit_defaults_.... 有更新! docker安装mysql 程序人生
docker安装redis 拉取镜像 docker pull redis 运行容器 建立配置文件 mkdir -p /opt/mydata/redis/conf \ vi /opt/mydata/redis/conf/redis.conf 再redis.conf中填写配置信息 bind 0.0.0.0 appendonly yes requirepass redis123 运行容器 docker run -p 6379:6379 --name redis \ -v /opt/mydata/redis/data:/data \ -v /opt/mydata/redis/conf/redis.conf:/etc/redis/redis.conf \ -d redis redis-server /etc/redis/redis.conf 有更新! docker安装redis 程序人生