Mac配置docker开发工具

前言

2020年整了一套android下的termux开发环境,今天继续配置一套docker下的开发环境。termux搭建参考

开发电脑环境准备如下:

系统 版本
MacOS 10.14.6
docker 20.10.12

待安装的开发工具环境如下:

镜像 版本
mongo 6.0
redis 7.0
mysql 8.0
nginx 1.22.0
minio latest
etcd latest

1、查询docker进程

1
2
3
launchctl list | grep docker
-	0	com.docker.helper
14047	0	com.docker.docker.47840

2、停止、启动docker进程

1
launchctl stop com.docker.docker.47840 && launchctl start com.docker.docker.47840

3、启动docker

1
open /Applications/Docker.app

PS:

目前通过 open /Applications/Docker.app 可以启动,通过 launchctl start com.docker.docker.xxx 方式不能启动了。

……

阅读全文

转载-arthas常见用法

前言

Arthas是Alibaba开源的Java诊断工具,动态跟踪Java代码;实时监控JVM状态,可以在不中断程序执行的情况下轻松完成JVM相关问题排查工作 。支持JDK 6+,支持Linux/Mac/Windows。这个工具真的很好用,而且入门超简单,十分推荐。

1、使用场景

  • 1、这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?
  • 2、我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?
  • 3、遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?
  • 4、线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现!
  • 5、是否有一个全局视角来查看系统的运行状况?
  • 6、有什么办法可以监控到JVM的实时运行状态?接下来,围绕这6个问题,学习下Arthas的基本用法。

2、安装

执行下面命令下载

……

阅读全文

几种id浅谈

前言

几种 ID 浅谈,UDID、UUID、ULID、NanoID

1、UDID

Unique Device Identifier(设备唯一标识符)
从名称上也可以看出,UDID这个东西是和设备有关的,而且是只和设备有关的,有点类似于MAC地址。真机调试,然后需要把UDID这个东西添加到Provisoning Profile授权文件中,也就是把设备唯一标识符添加进去,以此来识别某一台设备。 UDID是一个40位十六进制序列,我们可以使用iTunes和Xcode来获取这个值。

……

阅读全文

python打包-只依赖自己项目引用的module

前言

本地开发python后,需要生成requirements.txt,但是不做处理的话,会把你本地安装的所有module都依赖进来,找到一个根据项目生成依赖的工具

1、安装

1
pip install pipreqs

2、生成项目依赖

进入项目根目录

1
pipreqs . --encoding=utf8 --force

说明

参数 说明
–force 会覆盖前一个requirements.txt
–encoding=utf8 解决编码问题

3、参数介绍

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
Usage:
    pipreqs [options] <path>

Options:
    --use-local           Use ONLY local package info instead of querying PyPI
    --pypi-server <url>   Use custom PyPi server
    --proxy <url>         Use Proxy, parameter will be passed to requests library. You can also just set the
                          environments parameter in your terminal:
                          $ export HTTP_PROXY="http://10.10.1.10:3128"
                          $ export HTTPS_PROXY="https://10.10.1.10:1080"
    --debug               Print debug information
    --ignore <dirs>...    Ignore extra directories
    --encoding <charset>  Use encoding parameter for file open
    --savepath <file>     Save the list of requirements in the given file
    --print               Output the list of requirements in the standard output
    --force               Overwrite existing requirements.txt
    --diff <file>         Compare modules in requirements.txt to project imports.
    --clean <file>        Clean up requirements.txt by removing modules that are not imported in project.
    --no-pin              Omit version of output packages.

4、参考

参考文档:https://pypi.org/project/pipreqs/

……

阅读全文

渗透测试的部分资料

前言

整理了一些渗透测试的资料,方便查阅。

1、漏洞扫描

1.1 xray

xray 是一款功能强大的安全评估工具,由多名经验丰富的一线安全从业者呕心打造而成,主要特性有:

  • 检测速度快。发包速度快; 漏洞检测算法高效。
  • 支持范围广。大至 OWASP Top 10 通用漏洞检测,小至各种 CMS 框架 POC,均可以支持。
  • 代码质量高。编写代码的人员素质高, 通过 Code Review、单元测试、集成测试等多层验证来提高代码可靠性。
  • 高级可定制。通过配置文件暴露了引擎的各种参数,通过修改配置文件可以极大的客制化功能。
  • 安全无威胁。xray 定位为一款安全辅助评估工具,而不是攻击工具,内置的所有 payload 和 poc 均为无害化检查。

目前支持的漏洞检测类型包括:

……

阅读全文

转载-shell 13问

前言

shell编写入门的时候,有幸看到比较经典的 shell 13问,碰到有大佬整理成 markdown 格式,转载过来

1、为何叫做 Shell?

我们知道计算机的运作离不开硬件,但却无法直接操作硬件,硬件的驱动只能通过一种称之为“操作系统(OS,Opertating System)的软件来管控。Linux 严格来说是一个操作系统(OS)。

……

阅读全文

spring cloud gateway的一些细节注意

前言

spring cloud 2.* 的路由用的是 gateway 方案,不再是 1.* 时代的 zuul 了,不过也带来了新问题,这里整理下近期优化 gateway 的鉴权带来的爬坑记录

1、理解 gateway 与 zuul 比较

SpringCloud Gateway 是 Spring Cloud 的一个全新项目,该项目是基于 Spring 5.0,Spring Boot 2.0 和 Project Reactor 等技术开发的网关,它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式。

SpringCloud Gateway 作为 Spring Cloud 生态系统中的网关,目标是替代 Zuul,在Spring Cloud 2.0以上版本中,没有对新版本的Zuul 2.0以上最新高性能版本进行集成,仍然还是使用的Zuul 2.0之前的非Reactor模式的老版本。而为了提升网关的性能,SpringCloud Gateway是基于WebFlux框架实现的,而WebFlux框架底层则使用了高性能的Reactor模式通信框架Netty。

……

阅读全文

linux后台执行可用方式整理

前言

最近答疑群友如何后台运行 ssh 连接后的操作,整理了下日常常见的后台执行方式,方便知识梳理。

1、nohup方式

1
2
# nohup sh shell.sh &
查看日志:tail -f nohup.out

2、disown方式

1
2
# sh shell.sh & disown
查看日志:断开终端后,不能再查看日志

3、screen方式

执行screen,如果命令不存在,需要先安装:

1
# yum install screen -y

新建一个屏幕:

1
# screen -S screen_name

执行命令:

1
# sh shell.sh

依次按 Ctrl+A 与 D (无 Ctrl) 脱离该屏幕,此时程序仍运行在后台。

……

阅读全文

redis日常使用的一些建议

前言

最近处理了几起redis不安全的阿里云服务器,总结下一些建议

1、安全建议

1.1、设置bind

默认bind 0.0.0.0是默认值,相当于不设防

1
2
3
bind 0.0.0.0
建议修改成链接端的IP,比如
bind 192.168.100.101

1.2、设置auth

默认是不设置密码,相当于不需要密码和鉴权就可以访问

1
2
3
requirepass foobared
建议开启密码访问,并且不能设置弱口令密码,比如
requirepass Admin9527#&@ekd452

1.3、设置port

默认是6937,容易被扫描到

1
2
3
port 6379
建议修改默认端口,比如
port 36379

1.4、设置config

检查config这2个文件设置的值是否自己设置的值

……

阅读全文

logrotate日志切割

前言

无意间找到nginx下的日志切割组件,比以前用脚本每日备份好多了,研究了一番用法

1、关于日志切割

  日志文件包含了关于系统中发生的事件的有用信息,在排障过程中或者系统性能分析时经常被用到。对于忙碌的服务器,日志文件大小会增长极快,服务器会很快消耗磁盘空间,这成了个问题。除此之外,处理一个单个的庞大日志文件也常常是件十分棘手的事。
  logrotate是个十分有用的工具,它可以自动对日志进行截断(或轮循)、压缩以及删除旧的日志文件。例如,你可以设置logrotate,让/var/log/foo日志文件每30天轮循,并删除超过6个月的日志。配置完后,logrotate的运作完全自动化,不必进行任何进一步的人为干预。

……

阅读全文

最近文章

分类

标签

其它