个人操作文档1.1.1

modify by llwen on 2019-12-07

个人操作文档1.1.1

linux

linux下检查是否安装过某软件包

linux下安装nginx(Ubuntu)

操作命令

Linux 安装jdk

Centos安装Docker(CentOS 7.3阿里云)

Ubuntu 安装Docker(Ubuntu 16.04腾讯云)

Docker

Docker 拉取 oracle 11g镜像配置

Docker 安装云盘pan

Docker 安装Redis 简单步骤

Docker 安装consul 简单步骤

Docker Nginx 配置

Spring Cloud

Redis

Git

Maven

spring boot

VUE

linux

腾讯云服务器开启 root 用户登录

1.修改 ssh 配置 /etc/ssh/sshd_config
sudo vim /etc/ssh/sshd_config

2.将 PermitRootLogin 改为 yes
   #LoginGraceTime 2m
   PermitRootLogin yes
   #StrictModes yes
3.重启 ssh 服务
 sudo service ssh restart
 
 https://www.jianshu.com/p/4520899c7006

linux下检查是否安装过某软件包

rpm包安装的

可以用 rpm -qa 看到,如果要查找某软件包是否安装,用 rpm -qa | grep "软件或者包的名字"

以deb包安装的

可以用 dpkg -l 看到。如果是查找指定软件包,用 dpkg -l | grep "软件或者包的名字"

yum方法安装的

可以用 yum list installed 查找,如果是查找指定包,用 yum list installed | grep "软件名或者包名"

举例:查看是否安装了gcc

yum list installed | grep "gcc"

linux下安装nginx(Ubuntu)

1.安装依赖包

apt-get install gcc
apt-get install libpcre3 libpcre3-dev
apt-get install zlib1g zlib1g-dev
# Ubuntu14.04的仓库中没有发现openssl-dev,由下面openssl和libssl-dev替代
#apt-get install openssl openssl-dev
sudo apt-get install openssl 
sudo apt-get install libssl-dev

2.安装nginx

cd /usr/local
mkdir nginx
cd nginx
wget http://nginx.org/download/nginx-1.13.7.tar.gz #下载nginx安装包
tar -xvf nginx-1.13.7.tar.gz #解压

3.编译nginx

# 进入nginx目录
/usr/local/nginx/nginx-1.13.7
# 执行命令
./configure
# 执行make命令
make
# 执行make install命令
make install

如果不成功 先执行这个
如果依然不行则执行:
sudo rm /var/lib/dpkg/updates/* 
sudo apt-get update 
sudo apt-get upgrade

2024-9-11更新:
可能会缺失一些依赖:
./configure: error: the HTTP rewrite module requires the PCRE library. You can either disable the module by using --without-http_rewrite_module option, or install the PCRE library into the system, or build the PCRE library statically from the source with

apt-get install libpcre3 libpcre3-dev

./configure: error: the HTTP gzip module requires the zlib library. You can either disable the module by using --without-http_gzip_module option, or install the zlib library into the system, or build the zlib library statically from the source with nginx

apt-get install zlib1g-dev

4.启动nginx

#进入nginx启动目录
cd /usr/local/nginx/sbin
# 启动nginx
./nginx

配置nginx开机自启动

vim /etc/rc.d/rc.local
添加:
/usr/local/nginx/sbin/nginx

linux下安装nginx(Centos)

在安装nginx前首先要确认系统中安装了gcc、pcre-devel、zlib-devel、openssl-devel。
安装命令:

yum -y install gcc pcre-devel zlib-devel openssl openssl-devel

Linux下检查是否安装过某软件包.

nginx下载地址:https://nginx.org/download/

下载“nginx-1.9.9.tar.gz”,移动到/usr/local/下

解压tar -zxvf nginx-1.9.9.tar.gz
进入nginx目录cd nginx-1.9.9
配置./configure --prefix=/usr/local/nginx
make    执行这2个命令      make  make install

测试是否安装成功
cd到刚才配置的安装目录/usr/loca/nginx/
./sbin/nginx -t

错误信息:

nginx: [alert] could not open error log file: open() "/usr/local/nginx/logs/error.log" failed (2: No such file or directory)
2016/09/13 19:08:56 [emerg] 6996#0: open() "/usr/local/nginx/logs/access.log" failed (2: No such file or directory)

原因分析:nginx/目录下没有logs文件夹

解决方法:
mkdir logs
chmod 700 logs

正常情况的信息输出:

nginx: the configuration file /usr/local/nginx/confnginx.confsyntaxis ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

启动nginx

cd /usr/local/nginx/sbin   进入这个目录
./nginx

配置nginx开机自启动

vim /etc/rc.d/rc.local
添加:
/usr/local/nginx/sbin/nginx

操作命令

ls命令 列举目录文件信息

1.netstat -nultp 查看再使用的端口
2.ps -ef|grep java 搜索java相关的进程
3.kill -9 22 杀掉进程为22的进程
4.tar -zxvf 文件名 解压 gz文件
5.tar -jxvf 文件名 解压 bz
6.tar -xvf 文件名  解压 普通包
7.mkdir 文件名 创建文件夹
8.df -h 查看硬盘占用情况
9.tar -cvf 123.tar tomcat-8085/ 压缩一个文件 123.tar压缩后的文件名

curl命令的使用

* step1 使用curl访问一个网址(最基本用法)
在命令行中输入“curl 网址”即可在命令显示界面显示该网址的内容。
这种使用 方式通常用来检测一个网址是否能够正常访问,
因为Linux服务器最小化安装里没有浏览器,,
因此这种方式就是实现一种浏览器访问的功能。
* step2 使用curl下载文件
在命令行中输入“curl -O 一个word网络地址 ”这句命令的意思是将该word下载到本地。
在命令行中输入“curl -o 2.jpg 一个1.jpg网络地址”这句话是将1.jpg下载保存到本地,并可以重命名为2.jpg。
* step3

Linux 安装jdk

yum一键安装jdk

yum -y list java*

手动安装jdk

  1. tar -zxvf 文件名 解压 gz文件
  2. vim /etc/profile 配置环境变量
  3. export JAVA_HOME=/home/admin/jdk export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/ export PATH=$PATH:$JAVA_HOME/bin
    export JAVA_HOME=/usr/local/jdk/jdk1.8.0_181 为jdk所在目录
  4. source /etc/profile 刷新环境配置使其生效

Ubuntu16.04使用命令行安装jdk1.8

  1. sudo apt install openjdk-8-jre-headless 安装jre
  2. sudo apt install openjdk-8-jdk-headless 安装jdk
  3. java -version

Centos安装Docker(CentOS 7.3阿里云)

Docker安装

https://www.jianshu.com/p/da9fd65fd1d0

* step1.安装所需要的软件包

$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2

* step2.设置镜像仓库
$ sudo yum-config-manager \
 --add-repo \
 https://download.docker.com/linux/centos/docker-ce.repo
* step3.更新yum索引包

$ sudo yum makecache fast

* step4.1.安装最新版本的Docker CE

$ sudo yum install docker-ce
注意:生产环境中,应该安装特定版本而不是始终最新版本。

* step4.2.安装指定版本的Docker CE

$ sudo yum install docker-ce-<VERSION>

* step5.检验是否正确安装了docker,方法是运行hello-world镜像。

$ sudo docker run hello-world

* step5.解决pull镜像慢的问题
1、进入docker在本机的配置目录:

命令:cd /etc/docker

找到daemon.json文件,如果没有就新建一个:

2、打开daemon.json,内容配置如下:

{

"registry-mirrors":["https://almtd3fa.mirror.aliyuncs.com"]      

}
3、然后执行重启docker命令:

service docker restart

Docker卸载

* step1.卸载Docker软件包

$ sudo yum remove docker-ce

* step2.彻底卸载Docker软件包

$ sudo rm -rf /var/lib/docker
主机上的镜像、容器、存储卷、或定制配置文件不会自动删除。如果需要删除所有的镜像、容器和存储券

Ubuntu 安装Docker(Ubuntu 16.04腾讯云)

开始安装

https://blog.csdn.net/jinking01/article/details/82490688

* step1 由于apt官方库里的docker版本可能比较旧,所以先卸载可能存在的旧版本

$ sudo apt-get remove docker docker-engine docker-ce docker.io

* step2 更新apt包索引:

$ sudo apt-get update

* step3 安装以下包以使apt可以通过HTTPS使用存储库(repository)

$ sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common

* step4 添加Docker官方的GPG密钥(推荐阿里)

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
阿里的 会更快:
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

* step5 使用下面的命令来设置stable存储库(推荐阿里)

$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
这个是阿里的:
add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

* step6 再更新一下apt包索引

$ sudo apt-get update

* step7 安装最新版本的Docker CE

$ sudo apt-get install -y docker-ce

验证docker

* step1 查看docker服务是否启动

$ systemctl status docker

* step2 启动docker服务

$ sudo systemctl start docker

* step3 经典的hello world

$ sudo docker run hello-world

* step4 docker设置开机启动

#systemctl start docker.service #systemctl enable docker.service

Docker

Docker安裝Portainer 安装与配置

1、单机运行

docker search portainer/portainer

docker pull portainer/portainer

docker run -d -p 9000:9000 -v /root/portainer:/data/portainer -v /var/run/docker.sock:/var/run/docker.sock --name portainer --restart=always portainer/portainer

参数说明:

-d #容器在后台运行

-p 9000:9000 # 宿主机9000端口映射容器中的9000端口

-v /var/run/docker.sock:/var/run/docker.sock # 把宿主机的Docker守护进程(docker daemon)默认监听的Unix域套接字挂载到容器中

-v /root/portainer:/data/portainer # 把宿主机目录 /root/portainer 挂载到容器 /data 目录;

–name dev-portainer # 指定运行容器的名称

注意: 在启动容器时必须挂载本地 /var/run/docker.socker与容器内的/var/run/docker.socker连接。

Docker Docker容器互相访问

1、创建网络 test-network

docker network create test-network

2、将nginx容器或其他容器和tomcat加入到test-network网络

docker network connect test-network nginx

3、 查看网络

docker network ls

4、 断开和移除网络

移除网络之前需要断开所有连接到网络的容器:docker network disconnet test-network php

移除网络:docker network rm test-network

5、 查看网络内部信息

docker network inspect test-network

案例:
Containers": {
            "0de20006d453aa2de03d350177025054fa4f9ed1fcb8ac141fa503baa32cea66": {
                "Name": "nginx",
                "EndpointID": "6ebd3e9d9ea93891066661481dccd5c58fb97b2b04a8dce6d343adbbf0eb2c80",
                "MacAddress": "02:42:ac:12:00:02",
                "IPv4Address": "172.18.0.2/16",
                "IPv6Address": ""
            },
            "c1a4dba54652c1b44ce923071771f3a5c20d3c1a2bc90b531ef0bb23c979c828": {
                "Name": "tomcat",
                "EndpointID": "0ffcd67abfcbad374328f53dcd7b3ee5acd0075b501711880aa166ab9254a921",
                "MacAddress": "02:42:ac:12:00:03",
                "IPv4Address": "172.18.0.3/16",
                "IPv6Address": ""
            }

nginx访问tomcat只需要访问172.18.0.3加上端口号8080
172.18.0.3:8080

Docker 拉取 oracle 11g镜像配置

开始记录docker拉取阿里的oracle11g 镜像并进行配置,
用DateGrip 可以登录为最终结果
https://blog.csdn.net/qq_38380025/article/details/80647620

* step1 开始拉取镜像-执行命令

下载的过程少长,等待吧,喝杯咖啡,休息一会!(镜像6.8G)
下载完成后 查看镜像: docker images

docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

* step2 创建容器

docker run -d -p 1521:1521 --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g --restart=always
命令后面的地址一定要是你下载的镜像地址也就是你拉取镜像名字,否则会出现名字已存在等问题!如果创建成功能会返回容器id

* step3 启动容器

docker start oracle11g

* step4 进入镜像进行配置

* step4.1 进入镜像

docker exec -it oracle11g bash

* step4.2 进行软连接

sqlplus /nolog
发现没有这个命令,用不了

* step4.3 切换到root 用户下
su root 密码:helowin

注意这里还是在容器当中。。有朋友退去了。。。。。。。
* step4.4 编辑profile文件配置ORACLE环境变量
在最后加上:

export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLE_HOME/bin:$PATH
保存并退出  :wq
是容器里面的/etc/profile  vi或则vim编辑
* step4.5 创建软连接

ln -s $ORACLE_HOME/bin/sqlplus /usr/bin

* step4.6 切换到oracle 用户
su - oracle
这里还要说一下,一定要写中间的内条 -   必须要,否则软连接无效

使环境变量生效 : . ~/.bash_profile

* step5 登录sqlplus并修改sys、system用户密码

sqlplus /nolog
conn /as sysdba
接着执行下面命令
alter user system identified by 123456; 
alter user sys identified by 123456;
也可以创建用户  create user test identified by 123456;
并给用户赋予权限  grant connect,resource,dba to test;

* step6 注意事项

当执行修改密码的时候出现 :    database not open
示数据库没有打开,不急按如下操作

  输入:alter database open;

注意了:这里也许还会提示  :   ORA-01507: database not mounted

  不急!继续!
  =========== 解决方法===========

 输入:alter database mount;

  输入 :alter database open;
  然后就可执行 修改数据库密码的命令了

  改完之后输入:ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

  刷新下表 

Docker 安装云盘pan

* step1 直接安装

docker run --name=pan -ti -p 8081:80 -p 6800:6800 --restart=always jaegerdocker/pan

* step2选择参数安装

docker run --name=pan -v /data/pan:/var/www/html/system/data/default_home_folder -ti -p 8081:80 -p 6800:6800 --restart=always jaegerdocker/pan

* step3 注意事项

跑了一下,发现问题是 mysql 的 datadir 没有权限导致的,
进入 pan容器 docker exec -it pan bash,运行一下,然后再重启就好了

在盘pan容器里面 

chown -R mysql /var/lib/mysql

chgrp -R mysql /var/lib/mysql


./start.sh重启

Docker 安装Redis 简单步骤

  1. docker pull redis:latest 拉取官方的最新版本的镜像:
  2. docker run -itd --name redis-test -p 6379:6379 --restart=always redis

Docker 安装Redis 创建Redis容器并设置密码

docker run --name redis -p 6380:6379 redis-test --requirepass 123456 --restart=always redis
前边是宿主机端口 后面是docker使用的端口

Docker 安装Redis 为现有的redis创建密码或修改密码的方法

1.进入redis的容器 docker exec -it 容器ID bash

2.进入redis目录 cd /usr/local/bin 

3.运行命令:redis-cli

4.查看现有的redis密码:config get requirepass

5.设置redis密码config set requirepass ****(****为你要设置的密码)

6.若出现(error) NOAUTH Authentication required.错误,则使用 auth 密码 来认证密码

Docker 安装consul 简单步骤

1.拉取Consul镜像

docker pull consul # 默认拉取latest
docker pull consul:1.6.1 # 拉取指定版本

2.安装并运行

docker run -d -p 8500:8500 --restart=always --name=consul consul:latest agent -server -bootstrap -ui -node=1 -client='0.0.0.0'

agent: 表示启动 Agent 进程。

server:表示启动 Consul Server 模式

client:表示启动 Consul Cilent 模式。

bootstrap:表示这个节点是 Server-Leader ,每个数据中心只能运行一台服务器。技术角度上讲 Leader 是通过 Raft 算法选举的,但是集群第一次启动时需要一个引导 Leader,在引导群集后,建议不要使用此标志。

ui:表示启动 Web UI 管理器,默认开放端口 8500,所以上面使用 Docker 命令把 8500 端口对外开放。

node:节点的名称,集群中必须是唯一的,默认是该节点的主机名。

client:consul服务侦听地址,这个地址提供HTTP、DNS、RPC等服务,默认是127.0.0.1所以不对外提供服务,如果你要对外提供服务改成0.0.0.0

join:表示加入到某一个集群中去。 如:-json=192.168.0.11。

Docker Nginx 配置

step1 拉取官方的Nginx镜像

docker pull nginx

step2 创建挂载目录

mkdir -p /data/nginx/{conf,html,logs,nginxstatic/static}

step3 默认的配置来启动一个 Nginx 容器实例

docker run --name nginx -p 80:80 --restart=always -d nginx

step3 默认的配置来启动一个 Nginx 容器实例(高级)

server:配置ssl

server {
     #SSL 访问端口号为 443
     listen 443 ssl; 
     # 填写绑定证书的域名
     server_name www.domain.com; 
     #证书文件名称
     ssl_certificate 1_www.domain.com_bundle.crt; 
     #私钥文件名称
     ssl_certificate_key 2_www.domain.com.key; 
     ssl_session_timeout 5m;
     #请按照以下协议配置
     ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
     # 请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
     ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; 
     ssl_prefer_server_ciphers on;
     location / {
        #网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
         root /var/www/www.domain.com; 
         index  index.html index.htm;
     }
 }

http跳转https:

server {
listen 80;
#填写绑定证书的域名
server_name www.domain.com; 
#把http的域名请求转成https
return 301 https://$host$request_uri; 
}

nginx.conf:

user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;


server {
        listen       80;
        server_name  localhost;

    location / {
            root  /usr/share/nginx/html;
            index  index.html index.htm;
        }

       
		
 	location /static/{
            root /nginxstatic;
	    
		
            #index  index.html index.htm;
			expires 30d;
			send_timeout 60; 
			
			add_header Cache-Control no-cache;
            
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        
    }




    include /etc/nginx/conf.d/*.conf;
}

step4 动静分离配置

        location /static/{

        root /nginxstatic;

        #index  index.html index.htm;
		expires 30d;
		send_timeout 60; 
		
		add_header Cache-Control no-cache;
        
                        }

这样配置了的话目录结构应该是这个样子的 nginxstatic/static 在root 路径的 nginxstatic 再加上 访问规则的 static linux是这样 Windows的话alias不需要多加static
在linux主机 多添加static
最后我的路径是:/data/nginx/nginxstatic/static 因为挂载到了这个文件夹 -v/data/nginx/nginxstatic:/nginxstatic http://www.wengegeai.xyz/static/

附录更新2021/10/04

         location /static/ {
           root /home/;
           autoindex   on;
           expires 30d;
           send_timeout 60; 
           add_header Cache-Control no-cache;
        }
linux:  /home/static

Docker 安装Rabbitmq 带管理界面

docker pull rabbitmq:management-alpine
docker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq --restart=always a554fc845575

Docker 安装 Elasticsearch

Docker 安装 zookeeper

pom依赖
<dependency>
			<groupId>com.alibaba.boot</groupId>
			<artifactId>dubbo-spring-boot-starter</artifactId>
			<version>0.1.0</version>
		</dependency>

		<!--引入zookeeper的客户端工具-->
		<!-- https://mvnrepository.com/artifact/com.github.sgroschupf/zkclient -->
		<dependency>
			<groupId>com.github.sgroschupf</groupId>
			<artifactId>zkclient</artifactId>
			<version>0.1</version>
		</dependency>

Docker docker将宿主机文件复制到容器内

docker将/tmp目录下的a.sh复制到容器内部:

查看容器ID:

docker ps |grep {image_name}

复制:

docker cp /tmp/a.sh 容器ID:/root

docker cp /data/nginx/conf/2_www.wengegeai.xyz.key nginx:/etc/nginx
docker cp /data/nginx/conf/1_www.wengegeai.xyz_bundle.crt nginx:/etc/nginx

Docker docker使用docker-compose.yml 運行

1.填写好docker-compose.yml配置文件

docker-compose命令必须在项目下运行

docker-compose up 创建并启动容器

Spring Cloud

Seata分布式事务

安装配置

教程

https://www.jianshu.com/p/48057695645b

registry.conf为seata的注册文件。
file.conf为配置文件。
此处将file.conf的信息配置入nacos中,所有file.conf文件可以不做配置。
如图:

但是需要将file中的信息配置入nacos,需两个文件config.txt,和nacos-config.sh
通过命令运行(sh nacos-config.sh -h localhost -p 8848 -g SEATA_GROUP) nacos-config.sh 将config.txt的配置内容写入nacos
需要先修改config.txt 2处地方

如果报找不到config.txt文件,只需将config.txt文件移到上一级目录即可。成功后可以在nacos中查看到如下信息

Redis

简单命令

Redis-cli客户端连接远程Redis服务器

语法:redis-cli -h 192.168.20.33 -p 6379

用法:redis-cli [OPTIONS] [cmd [arg [arg ...]]]
-h <主机ip>,默认是127.0.0.1
-p <端口>,默认是6379
-a <密码>,如果redis加锁,需要传递密码
--help,显示帮助信息

Git

Git常用命令

Git忽略文件不起作用解决方案

git rm -r --cached .idea

1,查看本地是否配置了远程仓库地址
git remote -v

2,删除远程地址
git remote rm origin

3,添加新地址
git remote add origin url

git remote add origin git@gitee.com:lwluo/wm-attendance.git
git push -u origin "master"

Maven

Maven常用命令

Maven 查看依赖树

mvn -Dverbose dependency:tree

spring boot

1.连接admin 监控

导入pom:

        <!--指标监控
        未来每一个微服务在云上部署以后,我们都需要对其进行监控、追踪、审计、控制等。SpringBoot就抽取了Actuator场景,
        使得我们每个微服务快速引用即可获得生产级别的应用监控、审计等功能。-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

配置文件

  boot:
    admin:
      client:
        instance:
         prefer-ip: true  #使用ip注册进来
         service-base-url: http://www.chsik.cn:8086/
        url: http://127.0.0.1:8086/admin-server





management:
  endpoints:
    enabled-by-default: true #暴露所有端点信息
    web:
      exposure:
        include: '*'  #以web方式暴露
  endpoint:
    health:
      show-details: always
      enabled: true

    info:
      enabled: true

    beans:
      enabled: true

    metrics:
      enabled: true
info:
  appName: ${spring.application.name}
  appVersion: 1.0.0
  mavenProjectName: @project.artifactId@
  mavenProjectVersion: @project.version@

VUE

前端环境搭建

Node.js

1.安装 Node.js
如果很慢替换成淘宝镜像
    npm config set registry https://registry.npm.taobao.org --global
2.安装Vue CLI 
    npm install -g @vue/cli
3.是否安装成功
    vue --version
赣ICP备2024021738号-1