Docker学习(1)—基础命令

一、沙箱机制
独立性、隔离性
在里面运行病毒也没有关系

二、Docker是什么
Docker是一个开源的应用容器引擎,基于Go语言
Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的“容器”中,然后发布到任何流行的Linux机器上,
“容器”完全使用“沙箱机制”,相互之间不会有任何接口(类似iPhone的app)

三、Docker优势
启动快
占用资源少

四、镜像/容器/仓库
1、镜像:通过镜像创建容器
类似于装系统的光盘
2、容器:镜像创建容器,容器启动起来之后,就能提供包含软件的服务了
3、仓库:镜像的集中存放地
类似于github、码云
4、容器的资源使用
容器技术是和我们的宿主机共享硬件资源及操作系统,可以实现资源的动态分配。容器包含应用和其所有的依赖包,但是与其他容器共享内核。容器在宿主机操作系统中,在用户空间以分离的进程运行。
所有容器是共享宿主机的cpu、磁盘、内存。

五、镜像的操作
1、从仓库获取镜像
搜索镜像:docker search image_name
搜索结果过滤:
是否官方:docker search --filter "is-official=true" image_name
是否自动化构建:docker search --filter "is-automated=true" image_name
大于多少颗星星:docker search --filter stars=100 image_name
下载镜像:docker pull image_name
镜像被默认保存到 /var/lib/docker 目录下
2、本地镜像的查看:docker images
3、本地镜像的删除:docker rmi image_name/image_id
4、如果镜像比较多
列出所有的镜像ID:docker images -q
删除所有的镜像:docker rmi docker images -q

六、容器的操作
1、创建容器:docker run -itd --name=container_name image_name
注:同一个镜像可以创建多个容器,只要容器的名字不一样就可以
参数说明
-i:表示以交互模式运行
-d:表示后台运行容器,并返回容器ID
-t:为容器重新分配一个伪输入终端
–name:为容器指定名称(注意是杠杠)
2、查看容器(运行中):docker ps
3、查看容器(包括已停止的):docker ps -a
4、停止容器:docker stop container_name/container_id
5、启动容器:docker start container_name/container_id
6、重启容器:docker restart container_name/container_id
7、删除容器:docker rm container_name/container_id

继续阅读Docker学习(1)—基础命令

oracle数据库对象-schdeule_job

dbms_scheduler包提供的计划任务,是比dbms_job更强大,更好管理。数据库为oracle 11g。

1、创建测试表
create table SCHEDULE_JOB_TEST(a date);

2、用dbms_scheduler创建job

begin
  dbms_scheduler.create_job(job_name            => 'test_schedule_job',
                            job_type            => 'PLSQL_BLOCK',
                            job_action          => 'insert into JOB_TEST values(sysdate);',
number_of_arguments => 0, start_date => to_date('10-01-2020 00:00:00', 'dd-mm-yyyy hh24:mi:ss'), repeat_interval => 'Freq=Minutely;Interval=5', end_date => null, job_class => 'DEFAULT_JOB_CLASS', enabled => FALSE, auto_drop => TRUE, comments => '测试scheduler');
end; /

3、说明
1) job_name:任务名称
2)job_type:oracle 11g支持4种,取值
‘PLSQL_BLOCK’, ‘STORED_PROCEDURE’, ‘EXECUTABLE’, or ‘CHAIN’
(plsql语句块、存储过程、外部程序、作业链条)
3) job_action:根据job_type的不同,有不同的含义
如果job_type指定的是PL/SQL块,就需要输入完整的PL/SQL代码;
如果job_type指定的是存储过程,就需要指定存储过程的名字;
如果job_type指定的外部程序,就需要输入script的名称或者操作系统的指令名;
如果job_type指定的作业链条,需要输入chain的名称;
4)number_of_arguments:job的参数
5)start_date:开始时间
6)repeat_interval:运行间隔时间
7)end_date:结束时间
8)job_class:指定任务关联的CLASS,默认值为DEFAULT_JOB_CLASS
9)enabled:指定任务是否启用
10)auto_drop:当该标志被置为TRUE时,ORACLE会在满足条件时自动删除创建的任务
任务已过期;
任务最大运行次数已达MAX_RUNS的设置值;
任务未指定REPEAT_INTERVAL参数,仅运行一次;
11)comments:注释信息

4、查询job
SELECT * FROM DBA_SCHEDULER_JOBS;

5、启用job

begin
  dbms_scheduler.enable('test_schedule_job');
end;
/

6、执行job

begin
  dbms_scheduler.run_job('test_schedule_job');
end;
/

7、停止job

begin
  dbms_scheduler.disable('test_schedule_job');
end;
/

8、删除job

begin
  dbms_scheduler.drop_job('test_schedule_job');
end;
/

参考资料:
https://blog.csdn.net/cymm_liu/article/details/22318865
https://docs.oracle.com/cd/E11882_01/appdev.112/e40758/d_sched.htm#ARPLS72235
https://blog.csdn.net/xlp789/article/details/98586077

Linux chattr/lsattr命令

1、chattr命令用于设置文件或文件夹的隐藏属性
一般格式:chattr [-RVf] [-+=aAcCdDeijsStTu] files…
说明:
i:不允许对文件进行删除、改名,也不能添加和修改数据
a:只能在文件中増加数据,但是不能删除和修改数据
u:在删除时,其内容会被保存,以保证后期能够恢复

2、例子
1)增加属性
chattr +iua cron/
2)解除属性
chattr -iua cron/

3、lsattr用来查看隐藏属性
lsattr
-u–ia——-e– ./cron

参考资料:
https://www.cnblogs.com/ftl1012/p/chattr.html

CentOS7安装Docker

系统为CentOS7,内核版本要求3.10以上
 1、安装需要的软件包,yum-util提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
 sudo yum install yum-utils device-mapper-persistent-data lvm2
 2、设置yum源
 --国内使用阿里云的源
 sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
 --国外使用官方的源
 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
 3、可以查看所有仓库中所有docker版本,并选择特定版本安装
 yum list docker-ce --showduplicates | sort -r
 4、安装docker(默认安装稳定版)
 sudo yum install docker-ce
 5、启动并加入开机启动
 systemctl enable docker
 systemctl start docker
 6、验证安装是否成功(有client和service两部分表示docker安装启动都成功了)
 docker version

CentOS7编译rocketmq-client-cpp

一、安装依赖包
yum update
yum install git
yum install make gcc gcc-c++ automake libtool cmake bzip2 bzip2-devel zlib zlib-devel

二、编译rocketmq-client-cpp客户端
cd /opt
mkdir rocketmq-client
git clone https://github.com/apache/rocketmq-client-cpp.git
cd rocketmq-client-cpp
sh build.sh

Linux curl命令

一、GET请求
curl https://www.baidu.com/s?wd=Content-Type
curl www.baidu.com/s?wd=Content-Type

加http和不加http效果一样

二、POST请求
curl http://192.168.1.179:8501/posp/6c7c96072f0d4dd7a0d6d236ee50ac4c/orderQuery -X POST -H “Content-Type:application/json;charset:utf-8;” -d “1111111111”

参数说明:
-X:指定请求的方法
-H:指定请求头(如果有多个请求头就加多个-H)
-d:指定请求的数据
-i:显示http响应的头信息
-g:关闭url通配符功能,使用特殊符号{}和[]
-v:显示数据传输过程中的详细信息

健身记录

想练健身一直有这个想法,因为身体和健康。但是实际去健身房办完卡之后完全和想像的不一样,套路太多。。。

先给个忠告:现在健身这个行业水很深,套路很多。说的不好听就是骗到一个算一个,意志力不强的他们会把你榨干。。。
PS:你买课了他们弟弟、姐姐叫的亲,教练一不干了,直接把你微信删了,你和他们只是金钱关系!!!

继续阅读健身记录

oracle计算hash值

oracle计算hash值
1、dbms_utility.get_hash_value(
name VARCHAR2,
base NUMBER,
hash_size NUMBER
)

函数说明
name:输入值
base:返回hash value的起始值(hash bucket最小值)
hash_size:返回hash表的期望大小(hash bucket最大值)

这个函数用于计算并返回落在给定范围内的hash值

2、ora_hash(
expr VARCHAR2,
max_bucket NUMBER,
seed_value NUMBER
)

函数说明
expr:输入值
max_bucket:函数返回的最大值(范围是0到4294967295)
seed_value:随机数(默认为0),可以对同一个输入值返回不同的结果

这个函数用于计算带随机数的hash值

3、例子
1)ora_hash和dbms_utility.get_hash_value返回值不同
select ora_hash(‘CHL20190710T25180748988’, 99999) as “hash1”, dbms_utility.get_hash_value(‘CHL20190710T25180748988’, 0, 99999) as “hash2” from dual;

 hash1    hash2

 78481    15674

2)seed_value不同,ora_hash返回值也不同
select ora_hash(‘CHL20190710T25180748988’, 99999, 0) from dual;
结果:78481
select ora_hash(‘CHL20190710T25180748988’, 99999, 1) from dual;
结果:57583
select ora_hash(‘CHL20190710T25180748988’, 99999, 2) from dual;
结果:97214

参考资料:
https://docs.oracle.com/cd/E11882_01/server.112/e41084/functions124.htm#SQLRF06313
https://docs.oracle.com/cd/E11882_01/appdev.112/e40758/d_util.htm#ARPLS73195
https://blog.csdn.net/zutsoft/article/details/44203027

[转]比特币完美复制经典泡沫价格曲线

去年看到一张图

【比特币完美复制经典泡沫价格曲线】没有经历过郁金香,南海,科网股等超级泡沫的人,在今天终于有幸能见到一生或许才遇一次的超级泡沫,好好感受一下吧(一切都要感谢过去10年孜孜不倦不断放水的央行,才让我们有幸在这个时代再次见证)

软件及互联网爱好者